Você está na página 1de 63

MDS - Especificação de Requisitos

Especificação Lógica
Projeto: Microsiga Protheus 11.5 - Controladoria Requisito: AR11.5_CTR_001 - Localização Argentina: Projeto SIM

Sub-Requisito: AR11.5_CTR_001- Controle de Chamado: FNC:


Cheques na Movimentação Bancária
País: Argentina Data Especificação: 01/07/2011

Histórico de Alterações
Item Descrição da Alteração Data
01 Inclusão do item “Definições Complementares” registrando novas definições sobre esta 02/09/11
especificação

Rotinas
Rotina Tipo de Operação Opção de Menu
FINA100 – Movimentos bancários Alteração Atualizações  Movimento bancário  Movimento
bancário

Objetivo

Criação de uma interface para o gerenciamento do controle de cheques recebidos e emitidos na rotina de Movimentação
Bancária, considerando as funcionalidades de emissão, compensação, controle de baixas, cancelamentos e devoluções, bem
como a apresentação dos lançamentos no fluxo de caixa.

Definição da Regra de Negócio

As despesas financeiras lançadas como movimento bancário podem ser realizadas através de cheques devendo os mesmos
serem registrados no arquivo de movimentações financeiras, proporcionando um controle efetivo e atualizado do status dos
cheques recebidos ou emitidos.

Sobre o Recebimento e Emissão de Cheques na Movimentação bancaria

 Controle de cheque recebido pela movimentação bancaria;


 Controle de cheque recebido endossado para uso no pagamento a fornecedores;
 Pagamento de despesas com cheque próprio ou cheque de terceiros;
 Controle de devoluções de cheques recebidos;
 Controle de devoluções de cheques emitidos;
 Controle de devoluções de cheques de terceiros;

Última Alteração: 05/09/2011 09:52:00 PM 1/63


MDS - Especificação de Requisitos

Definições:

Definir as características dos processos macros que necessitarão de adequações no ambiente Protheus Financeiro para
atender as regras de negócio e exigências legais da Especificação do País Argentina, quanto ao processo de Controle de
Cheques Recebidos e Emitidos na rotina de Movimentação Bancaria.

 Fluxo do processo – Tela Principal do Fluxo


(*) Verificar restante do fluxo no Anexo I

Última Alteração: 05/09/2011 09:52:00 PM 2/63


MDS - Especificação de Requisitos

 Definição da tabelas.

Acrescentar novos tipos de títulos na tabela SX5.

Tipo de Títulos
Tabela Chave Descrição
05 CCR Carta de Credito
05 LCA Letra de Cambio

Situação de Cheques

Observação: Alguns códigos serão utilizados na especificação do processo de Cheques Recebidos e Emitidos

Código Descrição
01 Em carteira
02 Pagamento Vinculado (Asignado a un Pago)
03 Emitido (somente para carteira a pagar)
04 Liquidado (Dado de Baja)
05 Anulado (Imnutilizado)
06 Substituído (Reemplazado)
07 Devolvido (Rechazado)
08 Protestado – somente a receber
09 Compensado (controle de terceiros)

Identificação de Caixa e Bancos.

Código Descrição
01 Banco Conta Corrente
02 Banco Conta Poupança
03 Fundo Fixo
04 Caixinha

FRE – Talonário de Cheques.

Campo Descrição
FRE_FILIAL Filial do Sistema.
FRE_BANCO Código do Banco (SA6->A6_COD).
FRE_AGENCIA Código da Agencia (SA6->A6_AGENCIA)
FRE_CONTA Conta Corrente (SA6->A6_CONTA)
FRE_TIPO Tipo de talonário. Onde:
1 = Cheque Diferido;
2 = Cheque Eletrônico;
3 = Cheque comum.
FRE_TALAO Numero Seqüencial do Talão de Cheques.
FRE_SEQINI Numero de Seqüência inicial do 1º. cheque constante no talão.

Última Alteração: 05/09/2011 09:52:00 PM 3/63


MDS - Especificação de Requisitos
FRE_SEQFIM Numero de seqüência final do ultimo cheque constante no talão.
FRE_DATA Data de emissão que foi cadastrado o talão.
FRE_QTDCHE Quantidade de Cheques disponível no talão.
FRE_STATUS Identificação da situação do talão. Onde:
1=Bloqueado;
2=Desbloqueado.
Reservado para digitação de observação.
FRE_OBSERV

SEF – Cheques.

Campo Descrição
EF_REFTIP Tipo de Referencia (LP=Liquidação a Proveedores).
EF_ORDPAGO Numero do Comprovante ou Ordem de Pago.
EF_STATUS Situação do Cheque. Onde:

01 – Carteira;
02 – Vinculado a Pagamento (Asignado a un Pago);
03 – Emitido;
04 – Liquidado (Dado de Baja); Presentado al Cobro
05 – Anulado (Inutilizado);
06 – Substituído (Reemplazado);
07 – Devolvido (Rechazado)
08 – Protestado (somente carteira a receber)
09 – Compensado (controle de terceiros)
EF_SUBSCHE Substituído pelo Cheque Numero (Novo cheque)

FRF – Histórico de Compensação e Devoluções.

Campo Descrição
FRF_FILIAL Filial do sistema.
FRF_BANCO Valor do Cheque.
FRF_AGENCIA Tipo de Referencia (LP=Liquidação a Proveedores).
FRF_CONTA Numero do Comprovante ou Ordem de Pago.
FRF_NUM Numero do Cheque
FRF_CART Carteira. Onde:
‘P’ – Pagar;
‘R’ – Receber.
FRF_DATPAG Data do Pagamento
FRF_DATDEV Data da Devolução
FRF_MOTIVO Código de Motivos de Devolução
FRF_DESCR Descrição do Motivo

Última Alteração: 05/09/2011 09:52:00 PM 4/63


MDS - Especificação de Requisitos

 Definir a Legenda de Situação de Cheques.

Na função Legenda definir as cores baseadas na tabela de Situação ou Status de Cheque conforme abaixo:
Legenda de Situação ou Status:

Legenda de Situação ou Status:

Cor Código Descrição CarteIra


Azul 01 Em Carteira Pagar / Receber
Amarelo 02 Pagamento Vinculado (Asignado a un Pago) Pagar/ Receber (qdo cheque de terceiros
utilizado para pagamento a fornecedor)
Laranja 03 Emitido (carteira a pagar) Pagar
Preto 04 Liquidado – Movimenta saldo bancario (Dado Pagar / Receber
de Baja)
Verde 05 Anulado (Imnutilizado) Pagar / Receber
Cinza 06 Substituído (Reemplazado) Pagar
Vermelho 07 Devolvido (Rechazado) Pagar / Receber
Violeta 08 Protestado Receber
Marron 09 Compensado Receber -> Pagar – Cheque de terceiros

Observe o resultado na tela da legenda (vide protótipo 01)

 Controle de Cheques.

CHEQUES RECEBIDOS

Cheques recebidos pela Movimentação Bancaria

Um cheque recebido, poderá ser liquidado (depositado) pelo processo de Controle de Cheques Recebidos, ou caso seja
endossável a terceiros, ser utilizado para pagamento a fornecedores.

Este processo é similar ao Controle de Cheques recebidos da Carteira a receber, que ocorre na rotina Recebimentos Diversos

A diferença é que nesta rotina, não temos títulos a receber a serem baixados quando da entrada do cheque e não temos um
Recibo como comprovante, no entanto um registro na tabela SE1 será gerado representado o titulo do cheque.

Última Alteração: 05/09/2011 09:52:00 PM 5/63


MDS - Especificação de Requisitos

 Processo Cheques Recebidos

Cheque para depósito ou endossável (para uso em pagamentos).

Um cheque recebido pela movimentação bancária devera ter os mesmos controles que um cheque recebido pela rotina de
Recebimentos Diversos, ou seja, quando o mesmo é incluído por uma movimentação bancaria ainda não sabemos se o
mesmo é valido (seja por fundos, assinatura ou qualquer outro motivo que possa causar uma devolução pelo banco do
emitente).

A movimentação bancária não exige titulo atrelado ao registro. Ela se caracteriza por movimentar o saldo bancário no
momento em que ele é incluído, no entanto, quando o recebimento é feito por cheque, a sua liquidação é que determinará o
crédito.

Portanto, um cheque recebido, devera gerar um registro de movimentação bancaria sem movimentar o saldo bancário. Este
somente poderá ser creditado quando da sua liquidação, ou seja, pela rotina de Controle de Cheques Recebidos, Opção :
Liquidação.

Um cheque recebido por esta rotina, também pode ser utilizado para pagamento, caso seja endossado. Neste processo, o
mesmo irá para Carteira e poderá ser utilizado no pagamento a fornecedores por uma Ordem de Pago, quando o usuário
escolher pagamento com cheque de terceiros.

Deverão existir os seguinte campos para que as informações do cheque sejam digitadas e gravadas na tabela de cheques e no
registro de títulos a receber:

 Cliente
 Loja
 Prefixo
 Numero
 Parcela
 Data de Vencimento
 Banco, Agência e conta corrente do cheque
 Se endossado ou não
 CUIT do firmante (emitente) do cheque

a) Gerar um novo titulo em SE1 representando o cheque recebido.

Incluir dados de registros do cheque

Campo Conteúdo
E1_PREFIXO Informação digitada
E1_NUM Informação digitada
E1_PARCELA Informação digitada
E1_TIPO “CH”
E1_VENCTO Informação digitada
E1_BCOCHQ Informação digitada
E1_AGECHQ Informação digitada
E1_CTACHQ Informação digitada

Última Alteração: 05/09/2011 09:52:00 PM 6/63


MDS - Especificação de Requisitos
E1_VALOR Valor do cheque

b) Gravação da tabela de Movimentos Bancários SE5.

Gravar os campos na tabela SE5 conforme especificação abaixo:

Campo Conteúdo
E5_FILIAL xFilial(“SE5”)
E5_DATA dDataBase
E5_TIPO ‘NF’
E5_VALOR Valor do cheque
E5_DOCUMEN Documento informado
E5_RECPAG ‘R’
E5_HISTOR ‘BJ.P/MOV.REC’
E5_TIPODOC ‘BA’
E5_VLMOED2 xMoeda()
E5_LA ‘S’
E5_PREFIXO Prefixo digitado
E5_NUMERO Número digitado
E5_PARCELA Brancos
E5_CLIEFOR Cliente digitado
E5_LOJA Loja digitada
E5_DTDIGIT Database
E5_MOTBX ‘NOR’
E5_SEQ ‘01’
E5_NUMLIQ

c) Gravação da tabela de Cheques SEF.

Gravar os campos na tabela SEF conforme especificação abaixo:

Campo Conteúdo
EF_FILIAL xFilial(‘SEF’)
EF_BANCO Código do Banco
EF_AGENCIA Código da Agencia
EF_CONTA Código da Conta
EF_NUM Numero do Cheque
EF_VALOR Valor do cheque
EF_DATA dDataBase
EF_VENCTO Data de vencimento informado + Clearing
EF_TITULO Brancos
EF_TIPO ‘CH’
EF_CLIENTE Cliente digitado
EF_LOJA Loja digitada
EF_HIST ‘Recibo ’+ histórico informado
EF_CART ‘R’
EF_LA ‘S’
EF_LIBER ‘S’
EF_SEQUENC ‘01’
EF_TERCEIR F
EF_ORIGEM ‘FINA100’

Última Alteração: 05/09/2011 09:52:00 PM 7/63


MDS - Especificação de Requisitos
EF_ENDOSSA Status do cheque (endossável ou não)
EF_CPFCNPJ CUIT/CUIL do emitente do cheque

 Liquidação do Cheque

 Liquidação de cheque recebido (cheque para depósito)

A Liquidação dos cheques recebidos deverá ser realizada pelas rotinas de Controle de Cheques Recebidos..

O usuário deverá clicar na opção ‘Liquidar’ no sub-menu de opções para efetivar a baixa ou liquidação do cheque.

O programa FINA090, função fA090Aut(cAlias,nReg,nOpcx) para realizar a operação de baixa à partir da execução do
programa FINA095 deverá ser adaptado para tratar cheques originados pela movimentação bancária. Neste tipo de processo
não há titulo original (carteira a receber) para ser baixado.

Desenvolver a função fA095Compes(), como todas as funções executadas à partir do aRotina, esta também deverá receber os
parâmetros cAlias, nReg e nOpcx.

Na função fA095Compes(cAlias, nReg, nOpcx) definir a variável lCtrlCheq como local para controlar a origem da execução
chamada, ou seja, se a função foi executada através do fina095 ou pelo fina090. Inicializar as demais variáveis locais e privates
que são manipuladas dentro da função fA090Aut().

Defina o comando para execução da fA090Aut() conforme a seguir:

lRet := fA090Aut(cAlias, nReg, nOpcx, lCtrlCheq) Onde: lCtrlCheq := .T.

A função fA090Aut() tem como objetivo realizar a liquidação dos cheques recebidos, desta forma se requer um tratamento
interno para o sucesso da execução. O tratamento deve atribuir algumas variáveis quando lCtrlCheq igual a .T..

Exemplo:

DEFAULT lCtrlCheq := .F.

If lCtrlCheq
cBco090 := SEF->EF_BANCO
cAge090 := SEF->EF_AGENCIA
cCta090 := SEF->EF_CONTA
cCheq090 := SEF->EF_NUM
EndIf

A tela de solicitação e confirmação dos dados do banco é a mesma usada pelo programa Fina090, porém as variáveis
definidas nas caixas de edição para Banco (cBco090), Agencia (cAge090), Conta (cCta090) e Numero do Cheque (cCheq090)
devem ser inicializadas à partir do registro do Cheque posicionado, respectivamente SEF->EF_BANCO, SEF->EF_AGENCIA, SEF-
>EF_CONTA e SEF->EF_NUM.

Permitir que o usuário informe os dados complementares como o Nome do Beneficiário (cBenef090) e Histórico do Cheque
(cHistor090).

Quando o usuário confirmar a liquidação ou baixa automática, o sistema realizará a operação de baixa por meio da função
fA090Aut().

Última Alteração: 05/09/2011 09:52:00 PM 8/63


MDS - Especificação de Requisitos

Após o retorno da função fA090Aut(), verificar o reposicionamento do registro, atualizar os campos referentes a baixa na
tabela de Cheques (SEF) e registrar o Histórico da compensação na tabela (FRE).

Última Alteração: 05/09/2011 09:52:00 PM 9/63


MDS - Especificação de Requisitos

Exemplo:

a) Atualização do cheque com os dados da liquidação.

Gravar os campos na tabela SEF conforme especificação abaixo:

Campo Descrição
EF_DATAPAG DDataBase
EF_REFTIP “LP”
EF_STATUS “04” (Cheque liquidado)
EF_BENEF cBenef090
EF_HISTOR cHistor090

b) Registro da liquidação na tabela de Histórico de Liquidação e Devoluções.

Gravar os campos na tabela FRF conforme especificação abaixo:

Campo Descrição
FRF_FILIAL xFilial(“FRF”)
FRF_BANCO SEF->EF_BANCO
FRF_AGENCIA SEF->EF_AGENCIA
FRF_CONTA SEF->EF_CONTA
FRF_NUM SEF->EF_NUM
FRF_CART “R”
FRF_DATPAG DDataBase
FRF_MOTIVO “10”
FRF_DESCRI “CHEQUE LIQUIDADO”

 Liquidação de cheque recebido utilizado para pagamento (endossado)

IMPORTANTE:

Não existe liquidação de cheques recebidos (depósito) e posterior uso como pagamento seja de um titulo ou de uma
movimentação bancária a pagar. O termo utilizado é “compensação”, pois o mesmo é recebido e redirecionado antes da
liquidação, portanto há simplesmente uma transferência entre carteiras e não uma movimentação que caracterize crédito ou
debito no saldo bancário.

Última Alteração: 05/09/2011 09:52:00 PM 10/63


MDS - Especificação de Requisitos
 Anular o cheque recebido

Anular um cheque recebido ou emitido antes da liquidação

Fazer uma validação (segurança) na rotina de movimentação bancaria opção Anular. Se for uma movimentação com cheque e
o mesmo já tenha passado por uma liquidação, o usuário devera utilizar as rotinas de Controle de cheques recebidos.

Essas rotinas são responsáveis por verificar se o cheque já foi liquidado, se é uma devolução de compensação e também será
capaz de gravar o motivo pelo qual o cheque esta sendo simplesmente anulado ou devolvido pelo banco.

Se o cheque ainda não passou por uma liquidação, poderá ser realizado um estorno do movimento bancário, apagando antes
o registro gerado para o cheque na tabela de títulos a receber .

 Anular a liquidação dos Cheques Recebidos e depositados

Para anular cheques recebidos já liquidados e necessário utilizar a rotina Cheques Recebidos, Opcao Anular

Nesta opção teremos duas funcionalidades diferentes dependendo do tipo do cheque que será anulado, sendo cheques
liquidados pela rotina de Controle de cheques recebidos (depositado) e cheques compensados (endossáveis) utilizados em
pagamentos através da Ordem de Pago ou Movimentação Bancaria.

o Anulando Cheques Liquidados (depositados)

Cheques liquidados são cheques recebidos pela rotina de Movimentacao Bancaria e não utilizados para pagamentos. Os
cheques foram liquidados (depositados) e portanto movimentaram o saldo bancário.

O usuário deverá clicar na opção ‘Anular’ no sub-menu de opções para efetivar a anulação da liquidação e registrar o motivo
da devolução do cheque.

Desenvolver a função fA096Anula(). Como todas as funções executadas à partir do aRotina, esta também deverá receber os
parâmetros cAlias, nReg e nOpcx.

Criar uma nova tela de edição para informar os dados do cheque como banco, agencia, conta, numero do cheque e o motivo
da devolução.

Permitir que o usuário informe o motivo da devolução, veja o resultado na tela de cheques (vide protótipo 05).

No caixa de edição do campo Motivo, disponibilizar a consulta F3 com base na tabela de Motivos “G0” denominada (Alínea de
cheques devolvidos).

Após a confirmação da operação, consistir o motivo de devolução:

Devolução por insuficiência de fundos – Motivo 11 – 1ª apresentação

Última Alteração: 05/09/2011 09:52:00 PM 11/63


MDS - Especificação de Requisitos
Se o motivo digitado for igual a “11”, o cheque poderá ser reapresentado. Permitir que o usuário informe a data de previsão
para reapresentação. Neste caso o impacto do Contas a receber ocorrerá apenas em relação ao Fluxo de Caixa, pois haverá
um adiamento na disponibilidade da saída do valor do cheque.

Neste caso, o cheque volta para o Status 01-Carteira e aguarda que nova liquidação seja feita. Da mesma maneira, a
movimentação bancária é cancelada (E5_SITUACA = “C”) e o titulo correspondente ao cheque volta a ficar pendente na
carteira de títulos a receber.

O próximo passo é liquidar novamente o cheque ou anulá-lo definitivamente.

o Anulando Cheques endossados e utilizados para pagamento

 Para cheques endossáveis utilizados em pagamentos

No momento da devolução deste cheque, embora possa ser reapresentado pelo fornecedor que o recebeu é necessário
registrar o fato ocorrido.

Pela rotina de cheques recebidos é necessário Anular a compensação do cheque.

Neste caso, o cheque volta para o Status 01-Carteira e aguarda que nova liquidação seja feita, ou seja, uma reapresentação.
Da mesma maneira, a movimentação bancária é cancelada (E5_SITUACA = “C”) no registro do cheque quando estava na
carteira a receber.

O titulo correspondente ao cheque volta a ficar pendente na carteira a receber e um titulo tipo “NDP” devera ser gerado no
contas a pagar, demonstrando a pendência de pagamento com o fornecedor.

 Redepositando em conta própria

O cheque então, estando em carteira, pode ser liquidado pela rotina de contas a receber novamente, realizando um crédito
bancário a receber na conta do banco escolhido. Na carteira a receber, o titulo que representa o cheque é liquidado e no
registro do cheque constará o status 04- Liquidado.

 Redepositando (compensando o cheque de terceiros)

De outra forma, o mesmo cheque poderá ser disponibilizado para uso na Movimentacao Bancaria, quando escolhido forma
de pagamento com cheque de terceiros.

O cheque será compensado novamente ficando com Status = 09 – Compensado. Deverá ser gerado um registro de
movimento bancário, mas sem alterar o saldo do banco, uma vez que o valor nunca foi creditado quando recebido.

 Registrar o histórico de devolução

Gravar os campos na tabela FRF conforme especificação abaixo:

Última Alteração: 05/09/2011 09:52:00 PM 12/63


MDS - Especificação de Requisitos
Campo Descrição
FRF_FILIAL xFilial(“FRF”)
FRF_BANCO SEF->EF_BANCO
FRF_AGENCIA SEF->EF_AGENCIA
FRF_CONTA SEF->EF_CONTA
FRF_NUM SEF->EF_NUM
FRF_CART “R”
FRF_DATDEV DDataBase
FRF_MOTIVO “11”
FRF_DESCRI SX5->X5_DESCRIC (Descrição do motivo da devolução)

Devolução por insuficiência de fundos – Motivo 12 – 2ª apresentação

Se o motivo digitado for igual a “12”, o cheque não poderá ser reapresentado. Desta forma, o sistema deverá cancelar a baixa
do cheque pela rotina Cheques Recebidos e alterar o Status do cheque para 07-Devolvido

Todo cheque devolvido que não pode ser reapresentado, deverá gerar uma nota de débito (Tipo NDC) a fim de registrar a
pendência do cliente.

A geração do novo título tipo NDC (Nota de Debito ao Cliente) será realizada chamando a função de inclusão de títulos da
rotina FINA040. O novo registro será gerado obrigatoriamente com o campo Tipo = “NDC”, valor do cheque e data de emissão
igual a Database. Os demais campos deverão ser digitados pelo usuário.

 Para cheques endossáveis utilizados em pagamentos pelo Movimento Bancário

No momento da devolução deste cheque, a rotina deverá cancelar a utilização do cheque, ficando este com o Status 07 –
Devolvido

Pela rotina de cheques recebidos é necessário Anular a compensação do cheque.

Neste caso, o cheque volta para o Status 07-Devolvido, a movimentação bancária é cancelada (E5_SITUACA = “C no registro
do cheque quando estava na carteira a receber.

Ao confirmar o estorno do cheque, a rotina devera gerar um titulo do tipo NDC para o cliente, registrando assim um debito
que o cliente precisa quitar. Da mesma forma, devera ser gerado um titulo do tipo NDP para o fornecedor, demonstrando a
obrigação que a empresa ainda tem para com o fornecedor.

A geração do novo título tipo NDC (Nota de Debito ao Cliente) será realizada chamando a função de inclusão de títulos da
rotina FINA040, títulos a receber. O novo registro será gerado obrigatoriamente com o campo Tipo = “NDC”, valor do cheque
e data de emissão igual a Database. Os demais campos deverão ser digitados pelo usuário.

A geração do novo título tipo NDP (Nota de Debito ao Provedor) será realizada chamando a função de inclusão de títulos da
rotina FINA050, titulos a pagar. O novo registro será gerado obrigatoriamente com o campo Tipo = “NDP”, valor do cheque e
data de emissão igual a Database. Os demais campos deverão ser digitados pelo usuário.

a) Registrar o histórico de devolução.

Última Alteração: 05/09/2011 09:52:00 PM 13/63


MDS - Especificação de Requisitos

Gravar os campos na tabela FRF conforme especificação abaixo:

Campo Descrição
FRF_FILIAL xFilial(“FRF”)
FRF_BANCO SEF->EF_BANCO
FRF_AGENCIA SEF->EF_AGENCIA
FRF_CONTA SEF->EF_CONTA
FRF_NUM SEF->EF_NUM
FRF_CART “R”
FRF_DATDEV DDataBase
FRF_MOTIVO “12”
FRF_DESCRI SX5->X5_DESCRIC (Descrição do motivo da devolução)

b) Atualizar Status do Cheque na tabela de Cheques - SEF.

Gravar o campo Status e controle de impressão.

Campo Descrição
EF_STATUS “04” Anulado ou Cancelado
EF_IMPRESS “C”

c) Atualizar a data da baixa e recompor o saldo no Contas a Receber – SE1.

Remover o conteúdo da baixa conforme especificação abaixo:

Campo Descrição
E1_BAIXA CTD(“”)
E1_VALOR SE1->E1_VALOR + SEF->EF_VALOR
E1_DESCONT 0.00
E1_MULTA 0.00
E1_JUROS 0.00
E1_CORREC 0.00
E1_VALLIQ 0.00
E1_LOTE Space(Len(SE1->E1_LOTE))

d) Posicionar no registro do cheque na tabela de Movimentos SE5.

Excluir o registro do cheque.

e) Gerar lançamento contábil de estorno através do lançamento padrão 576 (Cancelamento de Baixas).

Observação: Verificar que existe a possibilidade de 01 cheque baixar diversos títulos, portanto deve-se criar uma função para
retornar em um array os campos do SE1 correspondente aos títulos baixados pelo cheque.

Veja também a aplicação da função:

fA088Cancel() -> Executa o cancelamento das baixas no contas a receber com base em um título ou cheque.

Observe as regras de motivo de devolução na tabela ‘G0’ no arquivo SX5.

Última Alteração: 05/09/2011 09:52:00 PM 14/63


MDS - Especificação de Requisitos

As operações de Conciliar ou Protestar um cheque são realizadas pela rotina de Cheques Recebidos normalmente. O fluxo
pode ser verificado na Especificação P11-5_CTR_006_11_003_02 Rebtos Diversos - Contr Cheques

Última Alteração: 05/09/2011 09:52:00 PM 15/63


MDS - Especificação de Requisitos
 Processo de Cheques Emitidos

 Vinculando um cheque a uma movimentação bancaria

Cheques para pagamento – Próprios ou de Terceiros

No momento em que informar um numerário igual a “CH” a movimentação será realizada utilizando um cheque, seja próprio
ou de terceiros. Deverá existir um combo onde o usuário optará por uma dessas duas formas de utilização do cheque:

Caso escolha cheque próprio, a partir do banco informado, a rotina deverá trazer um cheque desse banco em carteira
disponível para uso. O cheque então ficara vinculado com esse movimento bancário ate que seja impresso e liquidado, similar
ao processo já descrito na especificação de pagamentos por Ordem de Pago. A função a ser utilizada neste momento é
similiar a Function a085aEnch(), na qual o sistema utiliza o primeiro cheque disponível do talão informado.

Caso escolha cheque de terceiros, a rotina deverá trazer todos os cheques da carteira a receber, endossáveis e disponíveis
para uso (em Carteira). O processo segue então similar ao pagamento com cheque de terceiros da rotina Ordem de
Pagamento.

A diferença entre este processo e a Ordem de Pago, é que na movimentação bancaria não temos um titulo a pagar a ser
baixado e não existe Ordem de Pago a ser emitida e associada ao cheque.

Utilizando um cheque próprio

Na movimentação bancária a pagar pode ser utilizado um cheque próprio, ou seja, que tenha sido gerado através da rotina
Cheques Emitidos, onde se cria um talão com seus respectivos cheques.

Deverão existir os seguinte campos para que as informações do cheque sejam digitadas e gravadas na tabela de cheques e no
registro de títulos a pagar:

 Data de Vencimento
 Código do Fornecedor
 Loja do Fornecedor

Gerar a movimentação financeira registrando na tabela SE5 o vinculo entre o registro do título do cheque da tabela SE2.

a) Incluir um registro em SE2 representando o cheque a pagar vinculado

Gravar os campos na tabela SE2 conforme especificação abaixo:

Campo Conteúdo
E2_PREFIXO Prefixo do talonário
E2_NUM Numero do cheque
E2_PARCELA Brancos
E2_TIPO “CH”
E2_VENCTO Vencimento informado

Última Alteração: 05/09/2011 09:52:00 PM 16/63


MDS - Especificação de Requisitos
E2_FORNECE Fornecedor informado
E2_LOJA Loja informada
E2_BCOCHQ Banco do cheque
E2_AGECHQ Agencia do cheque
E2_CTACHQ Conta corrente do cheque
E2_VALOR Valor do cheque

b) Gravação da tabela de Movimentos Bancários SE5.

Gravar os campos na tabela SE5 conforme especificação abaixo:

Campo Conteúdo
E5_FILIAL xFilial(“SE5”)
E5_DATA DDataBase
E5_TIPO ‘NF’
E5_VALOR SE2->E2_VALOR
E5_DOCUMEN Documento informado
E5_RECPAG ‘P’
E5_HISTOR ‘BJ.P/MOV.PAG’
E5_TIPODOC ‘BA’
E5_VLMOED2 xMoeda()
E5_LA ‘S’
E5_PREFIXO SE2->E2_PREFIXO
E5_NUMERO SE2->E2_NUM
E5_PARCELA SE2->E2_PARCELA
E5_CLIEFOR SE2->E2_FORNECE
E5_LOJA SE2->E2_LOJA
E5_DTDIGIT Database
E5_MOTBX ‘NOR’
E5_SEQ ‘01’
E5_NUMLIQ Numero da Ordem de Pago
E5_ORDREC SE5->E5_NUMLIQ

c) Gravação da tabela de Cheques SEF.

Gravar os campos na tabela SEF conforme especificação abaixo:

Campo Conteúdo
EF_FILIAL xFilial(‘SEF’)
EF_BANCO Código do Banco
EF_AGENCIA Código da Agencia
EF_CONTA Código da Conta
EF_NUM Numero do Cheque
EF_VALOR Valor do cheque
EF_DATA DDataBase
EF_VENCTO Vencimento informado + Clearing
EF_TITULO
EF_TIPO ‘CH’
EF_FORNECE SE2->E2_FORNECE
EF_LOJA SE2->E2_LOJA
EF_HIST ‘CH a Pagar’+SE5->E5_DOCUMEN
EF_CART ‘P’

Última Alteração: 05/09/2011 09:52:00 PM 17/63


MDS - Especificação de Requisitos
EF_LA ‘S’
EF_LIBER ‘S’
EF_SEQUENC ‘01’
EF_TERCEIR F
EF_ORIGEM ‘FINA100’

Última Alteração: 05/09/2011 09:52:00 PM 18/63


MDS - Especificação de Requisitos
Utilizando um cheque de terceiros (endossado).

O uso de cheque de terceiros será realizada pela função já existente na rotina padrão, sendo a mesma Function Fa085aTerc(),
que deverá ser modificada seguindo critérios abaixo. Deve-se criar um índice novo para apresentar os cheques por data de
vencimento.

Este processo é similar ao uso de cheque de terceiros em uma Ordem de Pago, conforme já detalhado na Especificação P11-
5_CTR_006_11_003_01 – Ordem de Pago Chequeras.

É considerado cheque de terceiros, todo cheque recebido pela rotina de Recebimentos Diversos e endossável. Para utilização
deste tipo de cheque, o fornecedor também deverá estar habilitado através do campo E2_ENDOSSO.

Deverão existir os seguinte campos para que as informações do cheque sejam digitadas e gravadas na tabela de cheques e no
registro de títulos a pagar:

 Data de Vencimento
 Código do Fornecedor
 Loja do Fornecedor

Gerar a movimentação financeira registrando na tabela SE5 o vinculo entre o registro do título do cheque da tabela SE1.

a) Baixo o titulo do cheque na carteira a receber

Gravar os campos na tabela SE1 conforme especificação abaixo:

Campo Conteúdo
E1_BAIXA dDataBase
E1_SALDO Valor do título – valor do cheque.
E1_VALLIQ SE1->E1_VALOR
E1_EMIS1 SE1->E1_BAIXA
E1_MOVIMEN SE1->E1_BAIXA

b) Gravação da tabela de Movimentos Bancários SE5.

Gravar os campos na tabela SE5 conforme especificação abaixo:

Campo Conteúdo
E5_FILIAL xFilial(“SE5”)
E5_DATA DDataBase
E5_TIPO ‘NF’
E5_VALOR Valor informado
E5_DOCUMEN Documento informado
E5_RECPAG ‘R’
E5_HISTOR ‘MOV.PG CH’
E5_TIPODOC ‘BA’
E5_VLMOED2 xMoeda()
E5_LA ‘S’
E5_PREFIXO SE1->E1_PREFIXO
E5_NUMERO SE1->E1_NUM

Última Alteração: 05/09/2011 09:52:00 PM 19/63


MDS - Especificação de Requisitos
E5_PARCELA SE1->E1_PARCELA
E5_CLIEFOR SE1->E1_CLIENTE
E5_LOJA SE1->E1_LOJA
E5_DTDIGIT Database
E5_MOTBX ‘NOR’
E5_SEQ ‘01’
E5_NUMLIQ
E5_ORDREC

c) Gravação da tabela de Cheques SEF.

Gravar os campos na tabela SEF conforme especificação abaixo:

Campo Conteúdo
EF_FILIAL xFilial(‘SEF’)
EF_BANCO Código do Banco
EF_AGENCIA Código da Agencia
EF_CONTA Código da Conta
EF_NUM Numero do Cheque
EF_VALOR Valor do cheque
EF_DATA DDataBase
EF_VENCTO Vencimento informado + Clearing
EF_TITULO
EF_TIPO ‘CH’
EF_CLIENTE SE1->E1_CLIENTE
EF_LOJA SE1->E1_LOJA
EF_HIST ‘CH a Pagar’+SE5->E5_DOCUMEN
EF_CART ‘P’
EF_LA ‘S’
EF_LIBER ‘S’
EF_SEQUENC ‘01’
EF_TERCEIR F
EF_STATUS “09” – Compensado
EF_ORIGEM ‘FINA100’

 Emissão / Impressão do Cheque a pagar

A impressão de um cheque próprio utilizado em uma movimentação bancária é realizada pela rotina de Controle de cheques
emitidos.

O usuário deverá clicar na opção ‘Emitir’ no sub-menu de opções para imprimir um cheque próprio.

Desenvolver a função fA095Emitir(). Como todas as funções executadas à partir do aRotina, esta também deverá receber os
parâmetros cAlias, nReg e nOpcx.

Verificar o Status do Cheque e o campo de controle de impressão:

1.) Somente permitir que o usuário imprima o cheque caso o Status (EF_STATUS) igual a 01, 02, o Controle de Impressão
(EF_IMPRESS) diferente de S, A e C.

Última Alteração: 05/09/2011 09:52:00 PM 20/63


MDS - Especificação de Requisitos
Atualizar as perguntas o grupo de perguntas FIN480 do relatório de impressão de cheques com os dados do cheque
posicionado na linha do browse.

Executar o programa de impressão de cheques FINR480.prw.

Após o retorno do programa FINR480 e impressão finalizada com sucesso, atualizar o Status do Cheque (EF_STATUS)

Exemplo:

lRet := FINR480()

If lRet
dbSelectArea("SEF")
dbSetOrder(1)
If dbSeek(xFilial("SEF")+aCheque[1]+aCheque[2]+aCheque[3]+aCheque[4])
If SEF->EF_IMPRESS == "S"
RecLock("SEF",.F.)
EF_STATUS := "03"
MsUnLock()
EndIf
EndIf
EndIf

 Liquidação do Cheque emitido

 Liquidação de cheque emitido – cheque próprio

A Liquidação dos cheques emitidos deverá ser realizada pelas rotinas de Controle de Cheques Emitidos.

O usuário deverá clicar na opção ‘Liquidar’ no sub-menu de opções para efetivar a baixa ou liquidação do cheque.

O programa FINA090, função fA090Aut(cAlias,nReg,nOpcx) para realizar a operação de baixa à partir da execução do
programa FINA095 deverá ser adaptado para tratar cheques originados pela movimentação bancária. Neste tipo de processo
não há titulo original (carteira a receber) para ser baixado. A rotina deverá ser adequada para cheques emitidos pela
movimentação bancaria, uma vez que este processo não tem vinculo com um titulo a pagar e não gera Ordem de Pago.

Desenvolver a função fA095Compes(), como todas as funções executadas à partir do aRotina, esta também deverá receber os
parâmetros cAlias, nReg e nOpcx.

Na função fA095Compes(cAlias, nReg, nOpcx) definir a variável lCtrlCheq como local para controlar a origem da execução
chamada, ou seja, se a função foi executada através do fina095 ou pelo fina090. Inicializar as demais variáveis locais e privates
que são manipuladas dentro da função fA090Aut().

Defina o comando para execução da fA090Aut() conforme a seguir:

lRet := fA090Aut(cAlias, nReg, nOpcx, lCtrlCheq) Onde: lCtrlCheq := .T.

A função fA090Aut() tem como objetivo realizar a liquidação dos cheques recebidos, desta forma se requer um tratamento
interno para o sucesso da execução. O tratamento deve atribuir algumas variáveis quando lCtrlCheq igual a .T..

Última Alteração: 05/09/2011 09:52:00 PM 21/63


MDS - Especificação de Requisitos
Exemplo:

DEFAULT lCtrlCheq := .F.

If lCtrlCheq
cBco090 := SEF->EF_BANCO
cAge090 := SEF->EF_AGENCIA
cCta090 := SEF->EF_CONTA
cCheq090 := SEF->EF_NUM
EndIf

A tela de solicitação e confirmação dos dados do banco é a mesma usada pelo programa Fina090, porém as variáveis
definidas nas caixas de edição para Banco (cBco090), Agencia (cAge090), Conta (cCta090) e Numero do Cheque (cCheq090)
devem ser inicializadas à partir do registro do Cheque posicionado, respectivamente SEF->EF_BANCO, SEF->EF_AGENCIA, SEF-
>EF_CONTA e SEF->EF_NUM.

Permitir que o usuário informe os dados complementares como o Nome do Beneficiário (cBenef090) e Histórico do Cheque
(cHistor090).

Quando o usuário confirmar a liquidação ou baixa automática, o sistema realizará a operação de baixa por meio da função
fA090Aut().

Após o retorno da função fA090Aut(), verificar o reposicionamento do registro, atualizar os campos referentes a baixa na
tabela de Cheques (SEF) e registrar o Histórico da compensação na tabela (FRE).

Exemplo:

a) Atualização do cheque com os dados da liquidação.

Gravar os campos na tabela SEF conforme especificação abaixo:

Campo Descrição
EF_DATAPAG DDataBase
EF_REFTIP “LP”
EF_STATUS “04” (Cheque liquidado)
EF_BENEF cBenef090
EF_HISTOR cHistor090

b) Registro da liquidação na tabela de Histórico de Liquidação e Devoluções.

Gravar os campos na tabela FRF conforme especificação abaixo:

Campo Descrição
FRF_FILIAL xFilial(“FRF”)
FRF_BANCO SEF->EF_BANCO
FRF_AGENCIA SEF->EF_AGENCIA
FRF_CONTA SEF->EF_CONTA
FRF_NUM SEF->EF_NUM
FRF_CART “R”
FRF_DATPAG DDataBase
FRF_MOTIVO “10”
FRF_DESCRI “CHEQUE LIQUIDADO”

Última Alteração: 05/09/2011 09:52:00 PM 22/63


MDS - Especificação de Requisitos

 Liquidação de cheque utilizado para pagamento (endossado)

IMPORTANTE:

Não existe liquidação de cheques de terceiros e posterior uso como pagamento seja de um titulo ou de uma movimentação
bancária a pagar. O termo utilizado é “compensação”, pois o mesmo é recebido e redirecionado antes da liquidação, portanto
há simplesmente uma transferência entre carteiras e não uma movimentação que caracterize crédito ou debito no saldo
bancário.

Última Alteração: 05/09/2011 09:52:00 PM 23/63


MDS - Especificação de Requisitos

 Anular o cheque emitido

Anular um cheque emitido antes da liquidação

Fazer uma validação (segurança) na rotina de movimentação bancaria opção Anular. Se for uma movimentação com cheque e
o mesmo já tenha sido impresso, o usuário devera utilizar as rotinas de Controle de Cheques Emitidos

Essas rotinas são responsáveis por verificar se o cheque já foi emitido ou liquidado, se é uma devolução de compensação e
também será capaz de gravar o motivo pelo qual o cheque esta sendo simplesmente anulado ou devolvido pelo banco.

Se o cheque ainda não foi emitido, poderá ser realizado um estorno do movimento bancário, apagando antes o registro
gerado para o cheque na tabela de títulos a pagar.

 Anular a liquidação de um cheque próprio (cheque devolvido)

Para anular cheques emitido já liquidados é necessário utilizar a rotina Cheques Emitidos, Opcao Anular

Nesta opção teremos duas funcionalidades diferentes dependendo do tipo do cheque que será anulado, sendo cheques
liquidados pela rotina de Controle de Cheques Emitidos e cheques compensados (endossáveis) utilizados em pagamentos
através da Ordem de Pago ou Movimentação Bancaria.

o Anulando Cheques Próprios Liquidados

Cheques liquidados são cheques emitidos pela rotina de Movimentação Bancaria e liquidados pela rotina Cheques Emitidos,
movimentando assim o saldo bancário.

O usuário deverá clicar na opção ‘Anular’ no sub-menu de opções para efetivar a anulação da liquidação e registrar o motivo
da devolução do cheque.

Desenvolver a função fA096Anula(). Como todas as funções executadas à partir do aRotina, esta também deverá receber os
parâmetros cAlias, nReg e nOpcx.

Criar uma nova tela de edição para informar os dados do cheque como banco, agencia, conta, numero do cheque e o motivo
da devolução.

Permitir que o usuário informe o motivo da devolução, veja o resultado na tela de cheques (vide protótipo 05).

No caixa de edição do campo Motivo, disponibilizar a consulta F3 com base na tabela de Motivos “G0” denominada (Alínea de
cheques devolvidos).

Após a confirmação da operação, consistir o motivo de devolução:

Devolução por insuficiência de fundos – Motivo 11 – 1ª apresentação

Última Alteração: 05/09/2011 09:52:00 PM 24/63


MDS - Especificação de Requisitos
Se o motivo digitado for igual a “11”, o cheque poderá ser reapresentado. Permitir que o usuário informe a data de previsão
para reapresentação. Neste caso o impacto do Contas a pagar ocorrerá apenas em relação ao Fluxo de Caixa, pois haverá um
adiamento na disponibilidade da saída do valor do cheque.

Neste caso, o cheque volta para o Status 01-Carteira e aguarda que nova liquidação seja feita. Da mesma maneira, a
movimentação bancária é cancelada (E5_SITUACA = “C”) e o titulo correspondente ao cheque volta a ficar pendente na
carteira de títulos a pagar.

O próximo passo é liquidar novamente o cheque ou anulá-lo definitivamente.

o Anulando Cheques de terceiros (cheques recebidos endossáveis)

 Para cheques endossáveis utilizados em pagamentos na Movimentação Bancária

No momento da devolução deste cheque, embora possa ser reapresentado pelo fornecedor que o recebeu é necessário
registrar o fato ocorrido.

Pela rotina de cheques recebidos é necessário Anular a compensação do cheque.

Neste caso, o cheque volta para o Status 01-Carteira e aguarda que nova liquidação seja feita, ou seja, uma reapresentação.
Da mesma maneira, a movimentação bancária é cancelada (E5_SITUACA = “C”) no registro do cheque quando estava na
carteira a receber.

 Redepositando em conta própria

O cheque então, estando em carteira, pode ser liquidado pela rotina de contas a receber novamente, realizando um crédito
bancário a receber na conta do banco escolhido. Na carteira a receber, o titulo que representa o cheque é liquidado e no
registro do cheque constará o status 04- Liquidado.

 Redepositando (compensando o cheque de terceiros)

De outra forma, o mesmo cheque poderá ser disponibilizado para uso na Movimentação Bancaria, quando escolhido forma
de pagamento com cheque de terceiros.

O cheque será compensado novamente ficando com Status = 09 – Compensado. Deverá ser gerado um registro de
movimento bancário, mas sem alterar o saldo do banco, uma vez que o valor nunca foi creditado quando recebido.

 Registrar o histórico de devolução

Gravar os campos na tabela FRF conforme especificação abaixo:

Campo Descrição

Última Alteração: 05/09/2011 09:52:00 PM 25/63


MDS - Especificação de Requisitos
FRF_FILIAL xFilial(“FRF”)
FRF_BANCO SEF->EF_BANCO
FRF_AGENCIA SEF->EF_AGENCIA
FRF_CONTA SEF->EF_CONTA
FRF_NUM SEF->EF_NUM
FRF_CART “R”
FRF_DATDEV DDataBase
FRF_MOTIVO “11”
FRF_DESCRI SX5->X5_DESCRIC (Descrição do motivo da devolução)

Devolução por insuficiência de fundos – Motivo 12 – 2ª apresentação

Se o motivo digitado for igual a “12”, o cheque não poderá ser reapresentado. Desta forma, o sistema deverá cancelar a baixa
do cheque pela rotina Cheques Recebidos e alterar o Status do cheque para 07-Devolvido

Todo cheque devolvido que não pode ser reapresentado, deverá gerar uma nota de débito (Tipo NDC) a fim de registrar a
pendência do cliente.

A geração do novo título tipo NDC (Nota de Debito ao Cliente) será realizada chamando a função de inclusão de títulos da
rotina FINA040. O novo registro será gerado obrigatoriamente com o campo Tipo = “NDC”, valor do cheque e data de emissão
igual a Database. Os demais campos deverão ser digitados pelo usuário.

 Para cheques endossáveis utilizados em pagamentos na Movimentação Bancária

No momento da devolução deste cheque, a rotina deverá cancelar a utilização do cheque, ficando este com o Status 07 –
Devolvido

Pela rotina de cheques recebidos é necessário Anular a compensação do cheque.

Neste caso, o cheque volta para o Status 07-Devolvido, a movimentação bancária é cancelada (E5_SITUACA = “C no registro
do cheque quando estava na carteira a receber.

Ao confirmar o estorno do cheque, a rotina devera gerar um titulo do tipo NDC para o cliente, registrando assim um debito
que o cliente precisa quitar.

Ao contrário da Ordem de Pago, nesta devolução não iremos gerar NDP ao fornecedor, pois nunca houve um titulo vinculado
ou uma Ordem de Pago.

A geração do novo título tipo NDC (Nota de Debito ao Cliente) será realizada chamando a função de inclusão de títulos da
rotina FINA040, títulos a receber. O novo registro será gerado obrigatoriamente com o campo Tipo = “NDC”, valor do cheque
e data de emissão igual a Database. Os demais campos deverão ser digitados pelo usuário.

a) Registrar o histórico de devolução.

Última Alteração: 05/09/2011 09:52:00 PM 26/63


MDS - Especificação de Requisitos
Gravar os campos na tabela FRF conforme especificação abaixo:

Campo Descrição
FRF_FILIAL xFilial(“FRF”)
FRF_BANCO SEF->EF_BANCO
FRF_AGENCIA SEF->EF_AGENCIA
FRF_CONTA SEF->EF_CONTA
FRF_NUM SEF->EF_NUM
FRF_CART “R”
FRF_DATDEV DDataBase
FRF_MOTIVO “12”
FRF_DESCRI SX5->X5_DESCRIC (Descrição do motivo da devolução)

b) Atualizar Status do Cheque na tabela de Cheques - SEF.

Gravar o campo Status e controle de impressão.

Campo Descrição
EF_STATUS “04” Anulado ou Cancelado
EF_IMPRESS “C”

c) Atualizar a data da baixa e recompor o saldo no Contas a Receber – SE1.

Remover o conteúdo da baixa conforme especificação abaixo:

Campo Descrição
E1_BAIXA CTD(“”)
E1_VALOR SE1->E1_VALOR + SEF->EF_VALOR
E1_DESCONT 0.00
E1_MULTA 0.00
E1_JUROS 0.00
E1_CORREC 0.00
E1_VALLIQ 0.00
E1_LOTE Space(Len(SE1->E1_LOTE))

d) Posicionar no registro do cheque na tabela de Movimentos SE5.

Excluir o registro do cheque.

e) Gerar lançamento contábil de estorno através do lançamento padrão 576 (Cancelamento de Baixas).

Observação: Verificar que existe a possibilidade de 01 cheque baixar diversos títulos, portanto deve-se criar uma função para
retornar em um array os campos do SE1 correspondente aos títulos baixados pelo cheque.

Veja também a aplicação da função:

fA088Cancel() -> Executa o cancelamento das baixas no contas a receber com base em um título ou cheque.

 TABELA GERAL – MOTIVO DE DEVOLUÇÃO (Tabela “GO” no arquivo SX5.

Última Alteração: 05/09/2011 09:52:00 PM 27/63


MDS - Especificação de Requisitos

SX5 - Tabela ‘G0’ – Alínea de Cheques devolvidos

CHEQUE SEM PROVISÃO DE FUNDOS:

Código Motivo
11 Insuficiência de fundos 1ª. Apresentação
12 Insuficiência de fundos 2ª. Apresentação
13 Conta encerrada
14 Prática espúria (Compromisso pronto atendimento)

IMPEDIMENTO AO PAGAMENTO:

Código Motivo
20 Folha de cheque cancelada por satisfação do correntista
21 Contra ordem ou oposição ao pagamento
22 Divergência ou insuficiência de assinatura
23 Cheques de órgãos da administração federal em desacordo com o Decreto-Lei no. 200
24 Bloqueio Judicial ou determinação do BACEN
25 Cancelamento do talonário pelo banco sacado
26 Inoperância temporária de transporte
27 Feriado municipal não previsto
28 Contra ordem ou oposição ao pagamento motivada por furto ou roubo
29 Falta de confirmação do recebimento do talonário pelo correntista
30 Furto ou roubo de malotes

Última Alteração: 05/09/2011 09:52:00 PM 28/63


MDS - Especificação de Requisitos

CHEQUE COM IRREGULARIDADE:

Código Motivo
31 Erro formal de preenchimento
32 Ausência ou irregularidade na aplicação do carimbo de compensação
33 Divergência de endosso
34 Cheque apresentado por estabelecimento que não o indicado no cruzamento em preto,
sem o endosso-mandato.
35 Cheque fraudado, emitido sem prévio controle ou responsabilidade do estabelecimento
bancário (“cheque universal”), ou ainda com adulteração da praça sacada.
36 Cheque emitido com mais de um endosso – Lei no. 9.311/96.
37 Registro inconsistente Compensação Eletrônica.

APRESENTAÇÃO INDEVIDA:

Código Motivo
40 Moeda inválida
41 Cheque apresentado a banco que não sacado
42 Cheque não compensável na sessão ou sistema de compensação em que apresentado e
o recibo bancário trocado em sessão indevida.
43 Cheque devolvido anteriormente pelos motivos 21, 22, 23, 24, 31 e 34, persistindo o
motivo de devolução.
44 Cheque prescrito
45 Cheque emitido por entidade obrigada a emitir Ordem bancária
46 CR – Comunicação de Remessa cujo cheque correspondente não for entregue no prazo
devido.
47 CR – Comunicação de Remessa com ausência ou inconsistência de dados obrigatórios.
48 Cheque de valor superior a R$ 100,00 sem identificação do beneficiário
49 Remessa nula, caracterizada pela reapresentação de cheque devolvido pelos motivos
12, 13, 14, 20, 25, 28, 30, 35, 43, 44 e 45.

Última Alteração: 05/09/2011 09:52:00 PM 29/63


MDS - Especificação de Requisitos

 Conciliação dos Cheques.

O usuário deverá clicar na opção ‘Conciliar’ no sub-menu de opções das rotinas Cheques Recebidos ou Cheques Emitidos,
dependendo da carteira do cheque.

Para tanto é necessário efetuar a parametrização do programa FINA380, função fA380Rec(cAlias,nReg,nOpcx) para realizar a
operação de baixa à partir da execução do programa FINA095.

Desenvolver a função Fa095Concil(), como todas as funções executadas à partir do aRotina, esta também deverá receber os
parâmetros cAlias, nReg e nOpcx.

Na função fA380Concil(cAlias, nReg, nOpcx) definir a variável lCtrlCheq como local para controlar a origem da execução
chamada, ou seja, se a função foi executada através do fina095 ou pelo fina090. Inicializar as demais variáveis locais e privates
que são manipuladas dentro da função fA380Concil().

Defina o comando para execução da fA380Rec() conforme a seguir:

lRet := fA380Rec(cAlias, nReg, nOpcx, lCtrlCheq) Onde: lCtrlCheq := .T.

A função fA380Rec() tem como objetivo realizar a conciliação de títulos, porém é necessário a criação de um filtro para que a
rotina concilie apenas os cheques emitidos, além do filtro requer também um tratamento interno para o sucesso da
execução. O tratamento deve atribuir algumas variáveis quando lCtrlCheq igual a .T..

Exemplo:

DEFAULT lCtrlCheq := .F.

If lCtrlCheq
CBco380 := SEF->EF_BANCO
cAge380 := SEF->EF_AGENCIA
cCta380 := SEF->EF_CONTA
cCheq380 := SEF->EF_NUM
EndIf

Alterar a sintaxe da expressão de filtro na função fa380Checa(cAlias), considerar a variável cPaisLoc == “ARG” e somente o
movimentos correspondente aos cheques emitidos.

Exemplo:

If cPaisLoc == “ARG”
cFiltro += “E5_TIPO == ‘CH’ .and. E5_TIPODOC = ‘BA’”
EndIf

A tela de solicitação e confirmação dos dados do banco será a mesma usada pelo programa Fina380, porém as variáveis
definidas nas caixas de edição para Banco (cBco380), Agencia (cAge380), Conta (cCta380) devem ser inicializadas à partir do
registro do Cheque posicionado, respectivamente SEF->EF_BANCO, SEF->EF_AGENCIA, SEF->EF_CONTA e SEF->EF_NUM.

Observe o resultado na tela de compensação (vide protótipo 04):

Permitir ao usuário marcar e desmarcar os cheques selecionados através do objeto MarkBrowse.

Ao confirmar a liquidação ou baixa automática, o sistema realizará a conciliação de forma standard gravando no campo
Reconciliação (E5_RECONC) com o conteúdo “x”.

Última Alteração: 05/09/2011 09:52:00 PM 30/63


MDS - Especificação de Requisitos

Após o retorno da função Fa380Rec(), verificar o reposicionamento do registro, atualizar também o campo Reconciliação
(E5_RECONC) com o conteúdo “x” no registro do cheque.

Exemplo:

a) Atualização do cheque com os dados da conciliação.

Gravar os campos na tabela SEF conforme especificação abaixo:

Campo Descrição
E5_RECONC “X”

 Consulta o Histórico de Compensação e Devoluções.

Permitir ao usuário pesquisar o histórico de compensação ou devolução um desejado cheque.

Nas funções fA095Visual(), fA095Compes(), fA095Concil(), fA096Anular(), fA095Emitir(), definir o primeiro botão que deverá
ser apresentado na barra de botões do programa de Controle de cheques.

O botão denominado “Devoluções” deverá executar um listbox que imprimirá em tela as informações sobre a compensação
ou devoluções do respectivo cheque.

Exemplo: Definição do Botões.

Local aButtons := {}

Aadd(aButtons,{"NOTE" , { || fA095Devol() ,”Consulta Histórico de Devoluções”,”Devoluções”})


Aadd(aButtons,{"SALARIOS", { || FINC021(),”Consultar Fluxo de Caixa”,”Fluxo de Caixa”})

Apresentar os dados da tabela FRF em formato planilha, observar o protótipo de tela 05:

Mostrar os registros da tabela FRF, quando o Código do Banco (FRF_BANCO), Agencia (FRF_AGENCIA), Conta (FRF_CONTA) e
Cheque (FRF_NUM) forem iguais aos campos Código do Banco (M->EF_BANCO), Agencia (M->EF_AGENCIA), Conta (M-
>EF_CONTA) e Cheque (M->EF_NUM).

Imprimir as colunas conforme definição abaixo:

No. Cheque Data Data Motivo Descrição


Devolução Compensação
9999999999 99/99/99 99/99/99 99 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
(FRF_NUM) (FRF_DATDEV) (FRF_DATPAG) (FRF_MOTIVO) (FRF_DESCRI)

 Cadastro de Bancos – Inclusão do CBU

Através do Cadastro de Bancos o usuário incluirá o Código Bancário Unificado – CBU, este sendo sempre único para cada
Agencia/Banco/Conta. Nas rotinas onde se deva informar o código do banco, também será possível pesquisar pelo Código
CBU .

Campo Descrição
A6_IBAN C.B.U. – Codigo Bancario Unificado

Última Alteração: 05/09/2011 09:52:00 PM 31/63


MDS - Especificação de Requisitos

 Integração com o Fluxo de Caixa.

Permitir ao usuário pesquisar e visualizar no fluxo de caixa, os cheques emitidos e ainda não compensados, para isso será
necessário configurar o parâmetro MV_LIBCHEQ com o conteúdo igual a “N”.

Nas funções fA095Visual(), fA095Compes(), fA095Concil(), fA096Anular(), fA095Emitir(), definir o segundo botão que deverá
ser apresentado na barra de botões do programa de Controle de cheques.

O botão denominado “Fluxo de Caixa” deverá executar o programa de Consultas FINC021 que imprimirá em tela a
disponibilidade de entradas e saídas de recursos no contas a pagar e receber.

Exemplo: Definição do Botões.

Local aButtons := {}

Aadd(aButtons,{"NOTE" , { || fA095Devol() ,”Consulta Histórico de Devoluções”,”Devoluções”})


Aadd(aButtons,{"SALARIOS", { || FINC021(),”Consultar Fluxo de Caixa”,”Fluxo de Caixa”})

 Relatório de Cheques emitidos.

Desenvolver o relatório de Controle de Cheques Emitidos, conforme formato definido a seguir:

Definir o grupo de perguntas FIN###, incluir as perguntas:


Banco?
Agencia?
Conta?
Da Data de Emissão?
Até a Data de Emissão?
Da Data de Vencimento?
Até a Data de Vencimento?
Imprimir Cheques Não usados? (Sim, Não)

Desenvolver uma query relacionando as tabelas SEF e FRF através dos campos Banco, Agencia, Conta e Numero do Cheque.
Na clausula where, definir os filtros com base nas perguntas e o Campo Carteira (EF_CART) igual a “P”.

Com o resultado da query, posicionar no inicio e realizar a leitura dos registros até o final do arquivo. Imprimir os registros
observando o modelo do relatório abaixo:

Empresa: Teste Página: 0001


Siga/FINR### Relatório de Cheques Emitidos Dt Ref.: 30/06/10
Hora…..: 23:50:01 Emissão..: 30/06/10

No. Talão No. Cheque Valor Data Vencimento Fornecedor Beneficiário Status
Emissão

Última Alteração: 05/09/2011 09:52:00 PM 32/63


MDS - Especificação de Requisitos
001 000000251 250.000,00 20/05/10 25/05/10 000001-00 DELL COMPUTERS BRASIL S/A 03

001 000000252 15.000,00 21/05/10 25/05/10 000355-00 TALENT COMUNICAÇÕES 03


001 000000253 22.000,00 22/05/10 26/05/10 001252-00 SPTRANS 03
(A) (B) (C) (D) (E) (F) (G) (H)

Continuação:
Motivo Descrição Data Devolução Data Pagamento
11 INSUFICIENCIA DE FUNDOS 1ª. APRESENTAÇÃO 26/05/10 / /
12 INSUFICIENCIA DE FUNDOS 2ª. APRESENTAÇÃO 30/05/10 / /
10 CHEQUE COMPENSADO / / 25/05/10
10 CHEQUE COMPENSADO / / 26/05/10
(I) (J) (K) (L)

Onde:
(A) = SFE->FE_TALAO
(B) = SFE->FE_NUM
(C) = SFE->FE_VALOR
(D) = SFE->FE_DATA
(E) = SFE->FE_VENCTO
(F) = SFE->FE_FORNECE+” “+SFE->FE_LOJA
(G) = SFE->FE_BENEF
(H) = SFE->FE_STATUS
(I) = FRF->FRF_MOTIVO
(J) = SX5->X5_DESCRI (Tabela ‘G0’)
(K) = FRF->FRF_DATDEV
(L) = FRF->FRF_DATPAG

Última Alteração: 05/09/2011 09:52:00 PM 33/63


MDS - Especificação de Requisitos
Definições complementares:

 A conciliação bancaria automática, que permite associar os movimentos do extrato bancário ao sistema ainda esta
em estudo de viabilidade, não fazendo portanto parte desde escopo.
 Uma movimentação bancária não está vinculado a nenhum titulo da carteira a pagar ou receber. Será gerado
somente 1 (um) registro tipo “CH”, representando o cheque, seja na carteira a pagar (SE2) ou receber(SE1), mas não
há titulo de cliente ou fornecedor para ser “baixado”.
 A data de emissão do movimento e moeda devem fazer parte das informações de uma movimentação bancária. A
identificação de cheque próprio o terceiros, será realizada pela tabela Forma de Pagamento.
 Quando um valor é depositado, os dados do banco de depósito ficam registrados na tabela SE5 – Movimentos
Bancários.
 Todo o controle de um cheque recebido pela rotina de Movimento Bancário é feito pela rotina específica Controle de
Cheques Recebidos. Após o registro do cheque, a liquidação, devolução, conciliação, etc, é realizado pela rotina
mencionada.
 Todo o controle de um cheque emitido pela rotina de Movimento Bancário é feito pela rotina específica Controle de
Cheques Emitidos. Após o registro do cheque, a liquidação, devolução, conciliação, etc, é realizado pela rotina
mencionada.
 Dados como Banco, Agencia, data de emissão e outros que são considerados campos “chaves” dentro do sistema,
não poderão ser alterados após a gravação dos dados. Esta solicitação foi realizada na Especificação Carteira de
Valores e no momento não será desenvolvida por interferir na integridade dos dados. Esta solicitação poderá ser
revista em nova especificação.
 Após a liquidação de um cheque recebido ou emitido, não é possível seu estorno (anulando o movimento bancário
por exemplo). O cheque deve ser “anulado” para o registro do motivo da devolução.
 Se um cheque recebido ou emitido não for liquidado, é possível anular a movimentação bancária e o cheque
reutilizado. Para cheques emitidos, somente será permitido o reuso, caso não tenha sido emitido. Se emitido, o
cheque será anulado e não poderá mais ser reutilizado.
 Controle de juros e gastos sobre cheques devolvidos (rechazados) serão analisados em nova especificação.
 Cheque comum e cheque pós datado (também “pré datado” no Brasil ou “cheque pago diferido” na Argentina)
poderão ser diferenciados pela Tabela Forma de pagamento/recebimento, pelo processo que será gerado quando da
sua utilização. Para cheque comum, gerará uma movimentação bancária (débito inmediato), para cheque pós datado
gerará um titulo financeiro (débito mediato) representando um titulo de cheque.
 Imprimir a expressão “No a la Ordem” no cheque. Esta solicitação deverá ser analisada em nova especificação.
 Cálculo do digito verificador do Banco/Agencia, Conta Corrente e CBU será analisado em nova especificação.

Última Alteração: 05/09/2011 09:52:00 PM 34/63


MDS - Especificação de Requisitos

 Tabelas Envolvidas
SA2 – Fornecedor
SE2 – Contas a Pagar
SE5 – Movimentos Bancários
SEF – Cheques
FR0 – Tabelas
FRE – Talonário de Cheques
FRF – Histórico de Compensações e Devoluções

Regras de Integridade
 Não se aplica

Última Alteração: 05/09/2011 09:52:00 PM 35/63


MDS - Especificação de Requisitos
Casos de Uso

1º. Controle de Cheques Emitidos.


Objetivo: Permitir o controle dos cheques emitidos e seu impacto na carteira do contas a pagar.
Pré-requisitos:
1. Cadastrar os fornecedores, pessoa física ou pessoa jurídica, responsáveis pela fornecimento de produtos bens ou
a prestação do serviços.
2. Cadastrar os bancos pela qual a empresa mantém contas.
3. Incluir ou classificar a Nota Fiscal de Compras, gerando títulos no contas a pagar.

Condições de sucesso:
O usuário conseguir cadastrar os talonários de cheques dos respectivos Bancos;
O usuário conseguir emitir os cheques;
O usuário conseguir compensar os cheques vinculados a pagamentos por meio da Ordem de pago;
O usuário conseguir anular os cheques emitidos, cancelando as baixas no Contas a pagar;
O usuário conseguir visualizar os cheques emitidos no fluxo de caixa;
O usuário conseguir consultar o histórico de devoluções ou compensação;
O usuário conseguir imprimir os cheques emitidos e seus status.

Condições de falha: O usuário não conseguir visualizar os cheques gerados na tabela SEF.
Inicializador: Cadastro de Bancos, Contas a Pagar, Ordem de Pago.

Aplicação prática: Através de processos seqüenciais, demonstraremos os casos de uso.

Situação 01:

A empresa realizou compras de equipamentos do fornecedor DELL Computadores S/A (003280-00) no valor de U$
250.000,00 com a data de vencimento da nota fiscal em 25/05/2010. O pagamento foi realizado com cheque
emitido em 20/05/2010 e mesmo vencimento da nota fiscal. Por problemas operacionais no setor financeiro o saldo
da conta bancos ficou sem previsão de fundos.

Cadastrar fornecedor e banco;


Registrar o talonário na rotina de controle de cheques;
Incluir a nota fiscal da compra dos equipamentos;
Baixar o título por meio da ordem de pago;
Compensar o cheque na rotina de controle de cheques;
Anular o cheque registrando as devoluções.

o Após a inclusão do cadastro de fornecedor, banco e registro do talonário:

SA2 – Cadastro de Fornecedor


Código Loja Razão Social CUIT/CUIL Ag.Ret. IVA Pais
003280 00 DELL Computadores S/A. 091567642001 Não ARG

SA6 – Cadastro de Bancos


Banco Agencia Conta Corrente CBU Nome CUIT/CUIL Moeda Saldo Atual
022 00151 0097856-2 0813367642003454548751 Banco de la 0813367642003 01
0,00
Nacion

FRE – Talonário de Cheques

Banco Agencia Conta Corrente No. Talão Cheque Inicial Cheque Final Quant. Status Tipo
022 00151 0097856-2 001 00001 00005 05 2-Desbloqueado 1-Cheque Comum

Última Alteração: 05/09/2011 09:52:00 PM 36/63


MDS - Especificação de Requisitos

SEF – Cheques

Banco Agencia Conta Corrente No. Cheque Tipo Carteira Impresso Liberado Status Valor
022 00151 0097856-2 00001 CH P N N 00-Não usado 0,00
022 00151 0097856-2 00002 CH P N N 00-Não usado 0,00
022 00151 0097856-2 00003 CH P N N 00-Não usado 0,00
022 00151 0097856-2 00004 CH P N N 00-Não usado 0,00
022 00151 0097856-2 00005 CH P N N 00-Não usado 0,00

o Incluir a nota fiscal de compras no. 000012 - serie A, no valor total de US$ 250.000,00.

SF1 – Cabeçalho da Nota Fiscal de Compras


Numero Serie Emissão Espécie Fornecedor Loja Valor Merc. IVA 10% Valor Bruto Dt.Digitação Natureza
000012 A 20/05/10 NF 003280 00 250.000,00 25.000,00 250.000,00 20/05/10

SD1- Itens da Nota Fiscal de Compras


Numero Serie Produto Quant. Preço Total % IVA Valor IVA
000012 001 Servidor Dell Suze 4388 4,00 62.500,00 250.000,00 10,00 25.000,00

SE2 – Contas a Pagar


Prefixo Numero Parc Tipo Fornecedor Loja Valor Saldo Emissão Baixa Ret. IVA
A 000012 NF 003280 00 250.000,00 250.000,00 20/05/10 / / 0,00

Na Ordem de Pago de no. 0002000, baixar o título através do cheque 00001 com data de emissão em 20/05/2010 e
vencimento em 25/05/2010.

o Após a liquidação da Ordem de pago, temos:

SE2 – Contas a Pagar


Prefixo Numero Parc Tipo Fornecedor Loja Valor Saldo Emissão Baixa Ret. IVA
A 000012 NF 003280 00 250.000,00 0,00 20/05/10 20/04/10 0.00

SE5 – Movimentação Bancária


Numero Tipo Fornecedor Loja Valor Data Documento Histórico Mot. Baixa
000012 NF 003280 00 250.000,00 20/05/10 0002000 BJ.TIT.P/ORD. PAGO NOR

SEK – Ordem de Pago


Ord. de Pago Tipo Fornecedor Loja Valor Data Doc. Histórico Mot.Baixa
0002000 EF 003280 00 250.000,00 20/05/10 ORDEN DE PAGO 0002000 NOR

SEF – Cheques
Banco Agencia Conta Corrente No. Cheque Tipo Carteira Impresso Liberado Status Valor
022 00151 0097856-2 00001 CH P N N 02-Pago Asig. 250.000,00

Continuação... SEF – Cheques


Prefixo Titulo Fornecedor Loja Emissão Vencimento Histórico Contabilizou
A 0002000 003280 00 20/05/10 25/05/10 Ord. pago 0002000 S

Última Alteração: 05/09/2011 09:52:00 PM 37/63


MDS - Especificação de Requisitos

No dia 25/05/2010 data do vencimento do Cheque, realizar a compensação do cheque na rotina de controle de
cheques.

o Após compensar o cheque, temos:

SE5 – Movimentação Bancária

Numero Tipo Fornecedor Loja Valor Data Documento Histórico Mot. BX Tipo Doc
000012 NF 003280 00 250.000,00 20/05/10 0002000 BJ.TIT.P/ORD. PAGO NOR BA
00001 CH 003280 00 250.000,00 25/05/10 Cheq. Por Canc. Automatica NOR VL

SEF – Cheques
Banco Agencia Conta Corrente No. Cheque Tipo Carteira Impresso Liberado Status Valor
022 00151 0097856-2 00001 CH P N N 04-
250.000,00
Compensado

FRF – Histórico de Compensação e Devoluções


Banco Agencia Conta Corrente No. Cheque Carteira Dt. Pagto Motivo Descrição do Motivo
022 00151 0097856-2 00001 P 25/05/10 10 CHEQUE COMPENSADO

No dia 27/05/2010 o Banco devolveu o cheque por insuficiência de fundos, motivo 11. Porém o fornecedor
reapresentou o cheque nesta mesma data.

o Vejamos os registros como ficaram após a anulação.

SE2 – Contas a Pagar


Prefixo Numero Parc Tipo Fornecedor Loja Valor Saldo Emissão Baixa Ret. IVA
A 000012 NF 003280 00 250.000,00 250.000,00 20/05/10 / / 0.00

SE5 – Movimentação Bancária

Numero Tipo Fornecedor Loja Valor Data Documento Histórico Mot. BX Tipo Doc
000012 NF 003280 00 250.000,00 20/05/10 0002000 BJ.TIT.P/ORD. PAGO NOR BA

SEF – Cheques
Banco Agencia Conta Corrente No. Cheque Tipo Carteira Impresso Liberado Status Valor
022 00151 0097856-2 00001 CH P A N 07-Substituido 250.000,00

FRF – Histórico de Compensação e Devoluções


Banco Agencia Conta Corrente No. Cheque Carteira Dt. Pagto Motivo Descrição do Motivo
022 00151 0097856-2 00001 P 25/05/10 10 CHEQUE COMPENSADO
022 00151 0097856-2 00001 P 25/05/10 11 INSUFICIENCIA DE FUNDOS 1ª. Apresentação
022 00151 0097856-2 00001 P 27/05/10 12 INSUFICIENCIA DE FUNDOS 2ª. Apresentação

Última Alteração: 05/09/2011 09:52:00 PM 38/63


MDS - Especificação de Requisitos

Situação 02:

Compra de matéria prima do fornecedor SOLAR (000505-00) no valor de US$ 5000,00.


O pagamento foi realizado com cheque emitido em 20/05/2010 e vencimento da nota fiscal em 25/05/2010.
O cheque foi compensado com sucesso.

Cadastrar fornecedor e banco;


Utilizar o cheque número 00002 do talonário já cadastrado;
Incluir a nota fiscal da compra da matéria prima;
Baixar o título por meio da ordem de pago;
Compensar o cheque na rotina de controle de cheques.

o Após a inclusão do cadastro de fornecedor, banco e registro do talonário:

SA2 – Cadastro de Fornecedor


Código Loja Razão Social CUIT/CUIL Ag.Ret. IVA Ag.Ret IR Pais
000505 00 SOLAR hierros y aceros Ltd 091587648802 Não Não ARG

SA6 – Cadastro de Bancos


Banco Agencia Conta Corrente CBU Nome CUIT/CUIL Moeda Saldo Atual
022 00151 0097856-2 0813367642003454548751 Banco de la 0813367642003 01
0,00
Nacion

FRE – Talonário de Cheques

Banco Agencia Conta Corrente No. Talão Cheque Inicial Cheque Final Quant. Status Tipo
022 00151 0097856-2 001 00001 00005 05 2-Desbloqueado 1-Cheque Comum

o Incluir a nota fiscal de compras no. 001001 - serie A, no valor total de US$ 15.000,00.

SF1 – Cabeçalho da Nota Fiscal de Compras


Numero Serie Emissão Espécie Fornecedor Loja Valor Merc. IVA 10% Valor Bruto Dt.Digitação Natureza
001001 A 20/05/10 NF 000505 00 15.000,00 1.500,00 15.000,00 20/05/10

SD1- Itens da Nota Fiscal de Compras


Numero Serie Produto Quant. Preço Total % IVA Valor IVA
001001 A Lingote de accero 6mx20 100,00 150,00 15.000,00 10,00 1.500,00

SE2 – Contas a Pagar


Prefixo Numero Parc Tipo Fornecedor Loja Valor Saldo Emissão Baixa Ret. IVA
A 001001 NF 000505 00 15.000,00 15.000,00 20/05/10 / / 0,00

Na Ordem de Pago de no. 0002001, baixar o título através do cheque 00002 com data de emissão em 20/05/2010 e
vencimento em 25/05/2010.

o Após a liquidação da Ordem de pago, temos:

SE2 – Contas a Pagar


Prefixo Numero Parc Tipo Fornecedor Loja Valor Saldo Emissão Baixa Ret. IVA
A 001001 NF 000505 00 15.000,00 0,00 20/05/10 20/05/10 0.00

Última Alteração: 05/09/2011 09:52:00 PM 39/63


MDS - Especificação de Requisitos

SE5 – Movimentação Bancária


Numero Tipo Fornecedor Loja Valor Data Documento Histórico Mot. Baixa
001001 NF 000505 00 15.000,00 20/05/10 0002001 BJ.TIT.P/ORD. PAGO NOR

SEK – Ordem de Pago


Ord. de Pago Tipo Fornecedor Loja Valor Data Doc. Histórico Mot.Baixa
0002001 EF 000505 00 15.000,00 20/05/10 ORDEN DE PAGO 0002001 NOR

SEF – Cheques
Banco Agencia Conta Corrente No. Cheque Tipo Carteira Impresso Liberado Status Valor
022 00151 0097856-2 00002 CH P S N 02-Vinculado 15.000,00

Continuação... SEF – Cheques


Prefixo Titulo Fornecedor Loja Emissão Vencimento Histórico Contabilizou
A 0002001 000505 00 20/05/10 25/05/10 Ord. pago 0002001 S

No dia 25/05/2010 data do vencimento do Cheque, realizar a compensação do cheque na rotina de controle de
cheques.

o Após compensar o cheque, temos:

SE5 – Movimentação Bancária

Numero Tipo Fornecedor Loja Valor Data Documento Histórico Mot. BX Tipo Doc
001001 NF 000505 00 15.000,00 20/05/10 0002001 BJ.TIT.P/ORD. PAGO NOR BA
00002 CH 000505 00 15.000,00 25/05/10 Cheq. Por Canc. Automática NOR VL

SEF – Cheques
Banco Agencia Conta Corrente No. Cheque Tipo Carteira Impresso Liberado Status Valor
022 00151 0097856-2 00002 CH P S N 04-Liquidado 250.000,00

FRF – Histórico de Compensação e Devoluções


Banco Agencia Conta Corrente No. Cheque Carteira Dt. Pagto Motivo Descrição do Motivo
022 00151 0097856-2 00002 P 25/05/10 10 CHEQUE COMPENSADO

Última Alteração: 05/09/2011 09:52:00 PM 40/63


MDS - Especificação de Requisitos

Protótipo de Tela

Protótipo de Relatório 01: Relatório de Cheques Emitidos

Empresa: Teste Página: 0001


Siga/FINR### Relatório de Cheques Emitidos Dt Ref.: 30/06/10
Hora…..: 23:50:01 Emissão..: 30/06/10

No. Talão No. Cheque Valor Data Vencimento Fornecedor Beneficiário Status
Emissão
001 000000251 250.000,00 20/05/10 25/05/10 000001-00 DELL COMPUTERS BRASIL S/A 03

001 000000252 15.000,00 21/05/10 25/05/10 000355-00 TALENT COMUNICAÇÕES 03


001 000000253 22.000,00 22/05/10 26/05/10 001252-00 SPTRANS 03
(A) (B) (C) (D) (E) (F) (G) (H)

Continuação:
Motivo Descrição Data Devolução Data Pagamento
11 INSUFICIENCIA DE FUNDOS 1ª. APRESENTAÇÃO 26/05/10 / /
12 INSUFICIENCIA DE FUNDOS 2ª. APRESENTAÇÃO 30/05/10 / /
10 CHEQUE COMPENSADO / / 25/05/10
10 CHEQUE COMPENSADO / / 26/05/10
(I) (J) (K) (L)

Onde:
(A) = SFE->FE_TALAO
(B) = SFE->FE_NUM
(C) = SFE->FE_VALOR
(D) = SFE->FE_DATA
(E) = SFE->FE_VENCTO
(F) = SFE->FE_FORNECE+” “+SFE->FE_LOJA
(G) = SFE->FE_BENEF
(H) = SFE->FE_STATUS
(I) = FRF->FRF_MOTIVO
(J) = SX5->X5_DESCRI (Tabela ‘G0’)
(K) = FRF->FRF_DATDEV
(L) = FRF->FRF_DATPAG

Última Alteração: 05/09/2011 09:52:00 PM 41/63


MDS - Especificação de Requisitos

Protótipo 01 – Legenda

Protótipo 02 – Cadastro do talonário de cheques

Última Alteração: 05/09/2011 09:52:00 PM 42/63


MDS - Especificação de Requisitos

Protótipo 03 – Compensar ou debitar cheques

Protótipo 04 – Conciliação de cheques

Última Alteração: 05/09/2011 09:52:00 PM 43/63


MDS - Especificação de Requisitos
Protótipo 05 – Anulação de cheques

Protótipo 06 – Cadastro do Banco/Agencia/Conta com C.B.U.

Última Alteração: 05/09/2011 09:52:00 PM 44/63


MDS - Especificação de Requisitos

Protótipo 07 – Ordem de pago com C.B.U. do Banco/Agencia/Conta do cheque emitido

Última Alteração: 05/09/2011 09:52:00 PM 45/63


MDS - Especificação de Requisitos

Fontes de Consulta
 Consultor da TOTVS Argentina

Consultores
 Juan Moreno
e-mail: patricio.rodriguez@tmf-group.com

Anexos
Sem anexos.

Última Alteração: 05/09/2011 09:52:00 PM 46/63


MDS - Especificação de Requisitos

Especificação Física
 Arquivo: FR0 – Dados auxiliares do Financeiro

Tabela nova: EQ4 – Meios de Pagamentos

FR0_TABELA FR0_CHAVE FR0_DESC01


000 EQ4 Meios de pagamentos
EQ4 01 Cheque
EQ4 02 Transferência bancária
EQ4 03 Credito (Acreditación)
EQ4 04 CBU – Conta corrente

Tabela nova: EQ5 – Situação de Cheques

FR0_TABELA FR0_CHAVE FR0_DESC01


000 EQ5 Situação de cheques
EQ5 01 Em carteira
EQ5 02 Pagamento vinculado (Asignado a un pago)
EQ5 03 Emitido
EQ5 04 Liquidado (Dado de baja)
EQ5 05 Anulado (Imnutilizado)
EQ5 06 Substituído (Reemplazado)
EQ5 07 Devolvido (Rechazado)

Tabela nova: EQ6 – Tipos de Caixa e Bancos

FR0_TABELA FR0_CHAVE FR0_DESC01


000 EQ6 Tipo de Caixa e Bancos
EQ6 01 Banco Conta Corrente
EQ6 02 Banco Conta Poupança
EQ6 03 Fundo Fixo
EQ6 04 Caixinha

Última Alteração: 05/09/2011 09:52:00 PM 47/63


MDS - Especificação de Requisitos

 Dicionário de Dados

 Tabelas do sistema (SX2)

Arquivo novo: FRE – Talonário de cheques

Alias FRE
Nome Talonário de cheques
Rotina
Modo E
Chave única FRE_FILIAL+FRE_BANCO+FRE_AGENCIA+FRE_CONTA+FRE_TALAO
Pyme Sim

Arquivo novo : FRF – Histórico de compensação e devoluções

Alias FRF
Nome Hist. de compensação e devoluções
Rotina
Modo E
Chave única FRF_FILIAL+FRF_BANCO+FRF_AGENCIA+FRF_CONTA+FRF_NUM
Pyme Sim

 Dicionário de Dados (SX3)

Arquivo já existente: SA6 – Cadastro de bancos

*Somente habilitar o campo abaixo para Argentina

Campo SA6_IBAN
Tipo C
Tamanho 25
Descrição Código Bancário Unificado
Título C.B.U.
Usado Sim
Obrigatório Sim
Browse Não
Folder Cadastrais
Validação
Consulta padrão
Help Código Bancário Unificado
Grupo 033
Ordem 05

Arquivo novo: FRE – Talonário de cheques

Última Alteração: 05/09/2011 09:52:00 PM 48/63


MDS - Especificação de Requisitos

Campo FRE_FILIAL
Tipo C
Tamanho 02
Descrição Filial do Sistema
Título Filial
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação
Consulta padrão
Help Filial do Sistema
Grupo 033
Ordem 01

Campo FRE_BANCO
Tipo C
Tamanho 03
Descrição Código do banco
Título Banco
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação ExistChav(“SA6”, M->FRE_BANCO)
Consulta padrão SA6
Help Código do Banco expedidor do talonário do cheque
Ordem 02

Campo FRE_AGENCIA
Tipo C
Tamanho 05
Formato @!
Descrição Código agência bancária
Título Agencia
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação ExistChav(“SA6”, M->FRE_BANCO + M->FRE_AGENCIA)
Consulta padrão
Help Código da agência bancária.
Ordem 03

Campo FRE_CONTA
Tipo C
Tamanho 10
Formato @!
Descrição Numero da conta bancaria
Título Conta
Usado Não

Última Alteração: 05/09/2011 09:52:00 PM 49/63


MDS - Especificação de Requisitos
Obrigatório Não
Browse Não
Folder Cadastrais
Validação ExistChav(“SA6”, M->FRE_BANCO + M->FRE_AGENCIA +
FRE_CONTA)
Consulta padrão
Help Código da conta bancaria
Ordem 04

Campo FRE_TIPO
Tipo C
Tamanho 1
Formato @!
Descrição Tipo do talonário
Título Tipo
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação Pertence(123)
Consulta padrão
Opções 1=Cheque Comum;2=Cheque eletrônico;3=Cheque diferido
Help Tipo do talonário de cheques permitido por lei para a a
realização das operações bancárias.
Ordem 05

Campo FRE_TALAO
Tipo C
Tamanho 3
Formato @!
Descrição Número do talonário
Título Talonário
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação
Consulta padrão
Help Número de seqüência do talonário de cheques expedido pelo
banco.
Ordem 06

Campo FRE_SEQINI
Tipo C
Tamanho 10
Formato 9999999999
Descrição Numero de seqüência do 1º. Cheque
Título 1º. Cheque
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais

Última Alteração: 05/09/2011 09:52:00 PM 50/63


MDS - Especificação de Requisitos
Validação
Consulta padrão
Help Número de seqüência do 1º. cheque constante no talonário.
Ordem 07

Campo FRE_SEQFIM
Tipo C
Tamanho 10
Formato 9999999999
Descrição Numero de seqüência do último Cheque
Usado Não
Obrigatório Não
Browse Não
Título Ultimo Cheq.
Folder Cadastrais
Validação
Consulta padrão
Help Número de seqüência do último cheque constante no
talonário.
Ordem 08

Campo FRE_QTDCHE
Tipo N
Tamanho 02
Formato 99
Descrição Quantidade de cheques
Usado Não
Obrigatório Não
Browse Não
Título Qtde Cheque
Folder Cadastrais
Validação Positivo()
Consulta padrão
Help Quantidade de cheques validos no talonário.
Ordem 09

Campo FRE_DATA
Tipo D
Tamanho 08
Formato 99/99/99
Descrição Data de emissão
Título Dt. Emissão
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação
Consulta padrão
Help Data de emissão ou registro do talonário de cheques.
Ordem 10

Campo FRE_STATUS

Última Alteração: 05/09/2011 09:52:00 PM 51/63


MDS - Especificação de Requisitos
Tipo C
Tamanho 1
Formato !
Descrição Situação
Título Situação
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação Pertence(12)
Consulta padrão
Opções 1=Bloqueado;2=Desbloqueado
Help Identifica se o talonário foi desbloqueado pelo correntista
através dos canais de relacionamento com o banco.
Ordem 11

Campo FRE_OBSERV
Tipo C
Tamanho 40
Formato @!
Descrição Observação
Título Observação
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação
Consulta padrão
Help Reservado para gravar informações complementares.
Ordem 12

Última Alteração: 05/09/2011 09:52:00 PM 52/63


MDS - Especificação de Requisitos

Arquivo novo: FRF – Histórico de compensação e devoluções

Campo FRF_FILIAL
Tipo C
Tamanho 02
Descrição Filial do Sistema
Título Filial
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Consulta padrão
Help Reservado para gravar informações complementares.
Grupo 033
Ordem 01

Campo FRF_BANCO
Tipo C
Tamanho 03
Descrição Código do banco
Título Banco
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação ExistChav(“SA6”)
Consulta padrão SA6
Help Código do Banco expedidor do talonário do cheque
Ordem 02

Campo FRF_AGENCIA
Tipo C
Tamanho 05
Formato @!
Descrição Código agência bancária
Título Agencia
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação
Consulta padrão
Help Código da agência bancária.
Ordem 03

Última Alteração: 05/09/2011 09:52:00 PM 53/63


MDS - Especificação de Requisitos

Campo FRF_CONTA
Tipo C
Tamanho 10
Formato @!
Descrição Numero da conta bancaria
Título Conta
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação
Consulta padrão
Help Código da conta bancaria.
Ordem 04

Campo FRF_NUM
Tipo C
Tamanho 10
Formato 9999999999
Descrição Numero do cheque
Título Cheque
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação
Consulta padrão ExistChav(“SEF”, M-> FRF_NUM)
Help Numero do cheque.
Ordem 05

Campo FRF_CART
Tipo C
Tamanho 01
Formato !
Descrição Carteira
Título Carteira
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação Pertence(“PR”)
Consulta padrão
Opções P=Pagar;R=Receber
Help Registra o tipo de carteira do cheque.
Ordem 06

Última Alteração: 05/09/2011 09:52:00 PM 54/63


MDS - Especificação de Requisitos

Campo FRF_DATPAG
Tipo D
Tamanho 08
Formato @D 99/99/99
Descrição Data do pagamento
Título Dt. Pagamento
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação
Consulta padrão
Opções
Help Data do pagamento ou tipo de carteira do cheque.
Ordem 07

Campo FRF_DATDEV
Tipo D
Tamanho 08
Formato @D 99/99/99
Descrição Data da devolução
Título Dt. devolução
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação
Consulta padrão
Opções
Help Registra o tipo de carteira do cheque.
Ordem 08

Campo FRF_MOTIVO
Tipo C
Tamanho 02
Formato @!
Descrição Código do Motivo da devolução
Título Cod. Motivo
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação fA095Motivo()
Consulta padrão ‘G0’
Opções
Help Registra o tipo de carteira do cheque.
Ordem 09

Última Alteração: 05/09/2011 09:52:00 PM 55/63


MDS - Especificação de Requisitos

Campo FRF_DESCRI
Tipo C
Tamanho 60
Formato @!
Descrição Descrição do Motivo da devolução
Título Desc. Motivo
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação
Consulta padrão
Opções
Help Descrição do motivo da devolução do cheque.
Exemplo:
12-INSUFICIENCIA DE FUNDOS – 2ª. Apresentação.
Ordem 10

Arquivo padrao : SEF – Cheques.

Campo EF_REFTIP
Tipo C
Tamanho 02
Descrição Tipo de Referencia
Título Refer.
Usado Não
Obrigatório Não
Browse Não
Folder
Validação
Consulta padrão
Help Tipo de referencia (LP=Liquidação a Proveedores)
Ordem 58

Última Alteração: 05/09/2011 09:52:00 PM 56/63


MDS - Especificação de Requisitos

Campo EF_STATUS
Tipo C
Tamanho 02
Descrição Status do cheque
Título Status
Usado Não
Obrigatório Não
Browse Não
Folder
Validação
Consulta padrão EQ5
Help Código do status ou situação do cheque.
Exemplo:
00 – Não Usado
01 – Carteira;
02 – Vinculado a Pagamento;
03 – Emitido;
04 – Liquidado ;
05 – Anulado;
06 – Substituído;
07 – Devolvido.
Ordem 59

Última Alteração: 05/09/2011 09:52:00 PM 57/63


MDS - Especificação de Requisitos

Campo EF_SUBSCHE
Tipo C
Tamanho 10
Descrição Cheque Substituto
Usado Não
Obrigatório Não
Browse Não
Título Subs. Cheque
Folder
Validação ExistChav(“SEF”)
Consulta padrão
Help Numero do cheque substituto (quando o principal estiver
com status 06-Substituído)
Ordem 61

Campo EF_FILSUB
Tipo C
Tamanho 02
Descrição Filial do Ch Substituto
Título Filial
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Consulta padrão
Help Reservado para gravar informações complementares.
Grupo 033
Ordem 62

Campo EF_BCOSUB
Tipo C
Tamanho 03
Descrição Código do banco do Ch Substituto
Título Banco Sub
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação ExistChav(“SA6”)
Consulta padrão SA6
Help Código do Banco do cheque substituto
Ordem 63

Campo EF_AGSUB
Tipo C
Tamanho 05
Formato @!
Descrição Código agência do Ch substituto

Última Alteração: 05/09/2011 09:52:00 PM 58/63


MDS - Especificação de Requisitos
Título Ag Sub
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação
Consulta padrão
Help Código da agência bancária do cheque substituto
Ordem 64

Última Alteração: 05/09/2011 09:52:00 PM 59/63


MDS - Especificação de Requisitos

Campo EF_CTASUB
Tipo C
Tamanho 10
Formato @!
Descrição Numero da conta Ch Substituto
Título Conta Sub
Usado Não
Obrigatório Não
Browse Não
Folder Cadastrais
Validação
Consulta padrão
Help Código da conta bancaria do cheque substituto
Ordem 65

Arquivo padrao : SA2 – Fornecedores

Campo SA2_ENDOSSO
Tipo C
Tamanho 1
Decimal 0
Descrição Aceite de cheque endossável
Título Status
Usado Não
Obrigatório Não
Browse Não
Folder
Validação Pertence(“12”)
Consulta padrão
Opções 1=Sim;2=Não
Help Aceite de cheque endossável
Ordem Próxima disponível

 Pastas de arquivos (SXA)

Alias FRE
Ordem 1
Descrição Cadastrais
Proprietário S

Alias FRF
Ordem 1
Descrição Cadastrais
Proprietário S

Última Alteração: 05/09/2011 09:52:00 PM 60/63


MDS - Especificação de Requisitos

Última Alteração: 05/09/2011 09:52:00 PM 61/63


MDS - Especificação de Requisitos

 Índices (SIX)

Arquivo: SA6 - Cadastro de Bancos

Índice SA6
Ordem 4
Chave A6_FILIAL + A6_IBAN
Descrição Filial + Cód. Bancario Unificado (CBU)
Pesquisa S
Proprietário S

Arquivo: FRE – Talonário de cheques

Índice FRE
Ordem 1
Chave FRE_FILIAL+FRE_BANCO+FRE_AGENCIA+FRE_CONTA+FRE_TALAO
Descrição Banco+Agencia+Conta+Numero do Talão
Pesquisa S
Proprietário S

Índice FRE
Ordem 2
Chave FRE_FILIAL+FRE_TALAO
Descrição Numero do talão
Pesquisa S
Proprietário S

Arquivo: FRF – Histórico de compensação e devoluções

Índice FRF
Ordem 1
Chave FRF_FILIAL+FRF_BANCO+FRF_AGENCIA+FRF_CONTA+FRF_NUM
Descrição Banco+Agencia+Conta+Numero do Cheque
Pesquisa S
Proprietário S

Índice FRF
Ordem 2
Chave FRF_FILIAL+FRF_NUM
Descrição Numero do Cheque
Pesquisa S
Proprietário S

Última Alteração: 05/09/2011 09:52:00 PM 62/63


MDS - Especificação de Requisitos

___/___/_____

José Lucas da Silva Virginia Melgarejo


Consultor de Sistemas Líder do Projeto

Juan Moreno Arnaldo Raymundo Jr.


Consultor de Sistemas – TOTVS Argentina Gerente do Projeto

Última Alteração: 05/09/2011 09:52:00 PM 63/63

Você também pode gostar