Essa rotina foi ajustada para atender a Lei Geral de Proteção de Dados (Lei n° 13.70), sendo que alguns campos que apresentam informações consideradas como dados sensíveis e/ou pessoais, serão ofuscados deixando de ser legíveis. |
O Protheus controla, através de suas rotinas e processos, as entradas e saídas das contas bancárias. Desta forma, permite a inclusão de movimentações e também a transferência de valores entre os bancos.
A primeira fase de uma implantação de movimentação bancária está no cadastro das informações do banco onde sua empresa movimenta as contas. Podem ser cadastrados vários bancos.
Procedimento efetuado de forma manual via rotina Movimentos Bancários (FINA100), com exibição das telas envolvidas no processo e necessitando de ações/comandos do usuário
Procedimento realizado de forma automática na rotina de Movimentos Bancários (FINA100), sem exibição de telas ou necessidade de interação do usuário.
Utilizado em customizações onde o processo não necessita de interações do usuário (MSEXECAUTO).
Documentação: Inclusão de movimentos bancários automático - FINA100
Por se tratar de um controle interno, o campo "Tipo de Movimentação" (E5_TIPODOC), tem as seguintes características:
A partir de 04/11/2020, esse campo passou a ser gravado com "DH". |
Caso o movimento possua uma natureza contendo um CST de crédito (ED_CSTPIS ou ED_CSTCOF) e não possua o campo E5_CLIFOR preenchido a rotina exibirá um alerta dizendo para escolher outra natureza ou preencher o campo E5_CLIFOR. Para que não seja validado o CST de crédito, há o ponto de entrada FA100NAT Não valida CST de Credito. |
#INCLUDE "Protheus.ch" User Function TST100() Local nOpc := 0 Local aFINA100 := {} Private lMsErroAuto := .F. While .T. nOpc := 0 nOpc := Aviso("TESTE EXECAUTO DO FINA100", "Escolha a opção do menu da rotina FINA100 a ser executada via EXECAUTO",{"PAGAR","RECEBER","EXCLUIR","CANCELAR","TRANSF.","EST. TRANSF."}) If nOpc == 1 aFINA100 := { {"E5_DATA" ,dDataBase ,Nil},; {"E5_MOEDA" ,"M1" ,Nil},; {"E5_VALOR" ,500 ,Nil},; {"E5_NATUREZ" ,"001" ,Nil},; {"E5_BANCO" ,"001" ,Nil},; {"E5_AGENCIA" ,"001" ,Nil},; {"E5_CONTA" ,"001" ,Nil},; {"E5_BENEF" ,"TESTE AUTO - BENEF" ,Nil},; {"E5_HISTOR" ,"TESTE AUTO - AUTO" ,Nil},; {"NCTBONLINE" ,1 ,Nil}} //1=Sim;2=Não MSExecAuto({|x,y,z| FinA100(x,y,z)},0,aFINA100,3) If lMsErroAuto MostraErro() Else MsgAlert("Movto. Bancario Pagar incluido com sucesso !!!") EndIf ElseIf nOpc == 2 aFINA100 := { {"E5_DATA" ,dDataBase ,Nil},; {"E5_MOEDA" ,"M1" ,Nil},; {"E5_VALOR" ,1500 ,Nil},; {"E5_NATUREZ" ,"001" ,Nil},; {"E5_BANCO" ,"001" ,Nil},; {"E5_AGENCIA" ,"001" ,Nil},; {"E5_CONTA" ,"001" ,Nil},; {"E5_HISTOR" ,"TESTE AUTO - AUTO" ,Nil},} {"NCTBONLINE" ,1 ,Nil}} //1=Sim;2=Não MSExecAuto({|x,y,z| FinA100(x,y,z)},0,aFINA100,4) If lMsErroAuto MostraErro() Else MsgAlert("Movto. Bancario Receber incluido com sucesso !!!") EndIf ElseIf nOpc == 3 dbSelectArea("SE5") SE5->(dbSetOrder(1)) SE5->(dbSeek(xFilial("SE5")+DToS(dDataBase) )) aFINA100 := { {"E5_DATA" ,SE5->E5_DATA ,Nil},; {"E5_MOEDA" ,SE5->E5_MOEDA ,Nil},; {"E5_VALOR" ,SE5->E5_VALOR ,Nil},; {"E5_NATUREZ" ,SE5->E5_NATUREZ ,Nil},; {"E5_BANCO" ,SE5->E5_BANCO ,Nil},; {"E5_AGENCIA" ,SE5->E5_AGENCIA ,Nil},; {"E5_CONTA" ,SE5->E5_CONTA ,Nil},; {"E5_HISTOR" ,SE5->E5_HISTOR ,Nil},; {"E5_TIPOLAN" ,SE5->E5_TIPOLAN ,Nil} } MSExecAuto({|x,y,z| FinA100(x,y,z)},0,aFINA100,5) If lMsErroAuto MostraErro() Else MsgAlert("Exclusão realizada com sucesso !!!") EndIf ElseIf nOpc == 4 dbSelectArea("SE5") SE5->(dbSetOrder(1)) SE5->(dbSeek(xFilial("SE5")+DToS(dDataBase) )) dbSkip() //colocado apenas para esta sequencia de testes aFINA100 := { {"E5_DATA" ,SE5->E5_DATA ,Nil},; {"E5_MOEDA" ,SE5->E5_MOEDA ,Nil},; {"E5_VALOR" ,SE5->E5_VALOR ,Nil},; {"E5_NATUREZ" ,SE5->E5_NATUREZ ,Nil},; {"E5_BANCO" ,SE5->E5_BANCO ,Nil},; {"E5_AGENCIA" ,SE5->E5_AGENCIA ,Nil},; {"E5_CONTA" ,SE5->E5_CONTA ,Nil},; {"E5_HISTOR" ,SE5->E5_HISTOR ,Nil},; {"E5_TIPOLAN" ,SE5->E5_TIPOLAN ,Nil} } MSExecAuto({|x,y,z| FinA100(x,y,z)},0,aFINA100,6) If lMsErroAuto MostraErro() Else MsgAlert("Cancelamento realizada com sucesso !!!") EndIf ElseIf nOpc == 5 aFINA100 := { {"CBCOORIG" ,"001" ,Nil},; {"CAGENORIG" ,"001" ,Nil},; {"CCTAORIG" ,"001" ,Nil},; {"CNATURORI" ,"001" ,Nil},; {"CBCODEST" ,"002" ,Nil},; {"CAGENDEST" ,"002" ,Nil},; {"CCTADEST" ,"002" ,Nil},; {"CNATURDES" ,"002" ,Nil},; {"CTIPOTRAN" ,"CH" ,Nil},; {"CDOCTRAN" ,"123456" ,Nil},; {"NVALORTRAN" ,2500 ,Nil},; {"CHIST100" ,"TESTE TRF VIA EXECAUTO" ,Nil},; {"CBENEF100" ,"TESTE TRF VIA EXECAUTO" ,Nil},; {"NAGLUTINA" ,2 ,Nil},; //1=Sim;2=Não {"NCTBONLINE" ,1 ,Nil}; //1=Sim;2=Não } MSExecAuto({|x,y,z| FinA100(x,y,z)},0,aFINA100,7) If lMsErroAuto MostraErro() Else MsgAlert("Transferência executada com sucesso !!!") EndIf //Estorno da Transferencia ElseIf nOpc == 6 aFINA100 := { {"AUTNRODOC" ,"123456" ,Nil},; {"AUTDTMOV" ,dDataBase ,Nil},; {"AUTBANCO" ,"001" ,Nil},; {"AUTAGENCIA" ,"001" ,Nil},; {"AUTCONTA" ,"001" ,Nil} } MSExecAuto({|x,y,z| FinA100(x,y,z)},0,aFINA100,8) If lMsErroAuto MostraErro() Else MsgAlert("Transferência cancelada com sucesso !!!") EndIf EndIf If nOpc == 0 Exit Endif Enddo Return(Nil) |
Esta opção permite incluir um valor a pagar na movimentação bancária.
Esta opção permite a inclusão de valores a receber na movimentação bancária.
Esta opção permite visualizar o movimento bancário cadastrado, tanto a pagar como a receber
Apresenta consulta com o lançamento contábil do movimento, caso o mesmo já tenha sido contabilizado.
Apresenta quadro das legendas e seus significados referenciados a situação do movimento
Esta operação permite excluir o movimento bancário tanto pagar quanto receber, deletando o registro no banco de dados
Esta operação efetua a contrapartida do movimento, ou seja estornar o valor que eu recebi ou paguei.
Esta operação permite visualizar o rateio contábil aplicado sobre o movimento bancário.
Pesquisa o movimento dentro do arquivo de movimentos bancários, tendo como resultado o movimento posicionado e destacado na browse.
Executa duas movimentações bancárias em uma única operação: saída da conta origem e entrada na conta destino.
Estorna a transferência realizada, voltando os valores para suas contas de origem
Esta opção permite a contabilização da movimentação bancária efetivada.
Lista de parâmetros aplicados ao FINA100 e seu processamento
|
A Movimentação Bancária é utilizada para efetuar lançamentos entre contas alimentando seu saldo na tabela SE8 - Saldos bancários e registrando seus movimentos na tabela SE5 - Movimentação bancaria .Sua característica básica é a não geração de receitas e despesas para a empresa, controlando somente entradas e saídas de valores entre contas.
|
LP | Fato Gerador | On | Off (CTBAFIN) |
---|---|---|---|
516 | Inclusão do movimento bancário a pagar com rateio | X | X |
517 | Inclusão do movimento bancário a receber com rateio | X | X |
557 | Cancelamento de movimento bancário pagar com rateio | X | X |
558 | Cancelamento do movimento bancário receber com rateio | X | X |
560 | Transferência financeira - saída do banco origem | X | X |
561 | Transferência financeira - entrada do banco origem | X | X |
562 | Movimento bancário a pagar | X | X |
563 | Movimento bancário a receber | X | X |
564 | Cancelamento movimento bancário pagar | X | X |
565 | Cancelamento movimento bancário receber | X | X |
|
Ponto de entrada | Descrição |
---|---|
F100BROW | O ponto de entrada será executado antes do browse da movimentação bancaria. Documentação: F100BROW - Movimentação bancária -- 11684 |
FA100PAG | O ponto de entrada sera utilizado apos gravação dos dados e da contabilização de contas a pagar na movimentação bancaria. Documentação: http://tdn.totvs.com.br/display/public/mp/FA100PAG+-+Grava+dados+--+11930 |
FA100REC | O ponto de entrada sera utilizado apos a gravação dos dados e da contabilização de contas a receber na movimentação bancária. Documentação: http://tdn.totvs.com.br/display/public/mp/FA100REC+-+Grava+dados+--+11931 |
FINATROC | executado após a gravação de todos os dados da movimentação a receber e da contabilização. Utilizado somente pelo ambiente SIGALOJA. Documentação: FINATROC - Gravação de dados da movimentação a receber -- 12069 |
FA100VLD | permite ao usuário criar validações quanto ao acesso para exclusão e cancelamento de movimento bancário. Documentação: FA100VLD - Validação de exclusão e cancelamento -- 24109 |
FA100CA2 | executado após a confirmação da Exclusão da Movimentação Bancária, antes de efetuar a exclusão e a contabilização. Documentação: FA100CA2 - Cancela movimentação bancária -- 11924 |
FA100CAN | O ponto de entrada sera utilizado apos a exclusão da movimentação bancária e antes da contabilização. Documentação: FA100CAN - Cancela movimento bancário -- 11925 |
FA100Get | permite ao cliente preencher automaticamente os dados da tela de transferência bancária. Documentação: FA100GET - Preenchimento da tela de Transferência Bancária -- 109531 |
FA100TRF | executado antes da transferência e retornara .T. para gravar a transferência ou .F. em caso contrário. Documentação: FA100TRF - Grava transferência |
F100DOC | utilizado para alterar o numero do cheque no momento da transferência entre bancos e agencias. Documentação: F100DOC - Alteração de número do cheque -- 11685 |
A100BL01 | executado apos a gravação dos dados da transferência bancaria. Documentação: A100BL01 - Gravação de dados -- 11548 |
FA100DOC | sera utilizado para manipular a variavel cDocTran. Retorno: valor que deverá conter em cDocTran. Parâmetros: cBcoOrig, cAgenOrig,cCtaOrig,cTipoTran Documentação: FA100DOC - Manipula variável -- 11926 |
A100TR01 | utilizado na gravação de transferência do movimento bancário. Documentação: http://tdn.totvs.com.br/display/public/mp/A100TR01+-+Transferencia+de+movimento+bancario+--+11549 |
A100TRA | O ponto de entrada A100TRA complementa o ponto de entrada A100TR01. Esse ponto de entrada recebe um array de parâmetros com o seguinte conteúdo: lEstorno, cBcoOrig, cBcoDest, cAgenOrig, cAgenDest, cCtaOrig, cCtaDest, cNaturOri, cNaturDes, cDocTran,cHist100. Documentação: A100TRA - Movimentação bancária -- 11552 |
A100TR02 | utilizado durante a gravação dos dados de transferência bancaria Documentação: A100TR02 - Gravação de dados de transferencia bancária -- 11550 |
A100TRB | O ponto de entrada A100TRB complementa o ponto de entrada A100TR02. Documentação: A100TRB - Gravação de transferência -- 11553 |
A100TR03 | executado apos gravação dos dados da transferência bancaria. Apos gravar o SE5 de ambos bancos Origem / Destino, após a contabilização. Documentação: A100TR03 - Gravação de dados de transferencia bancaria -- 11551 |
A100TRC | O ponto de entrada A100TRC complementa o ponto de entrada A100TR03. Documentação: A100TRC - Gravação da transferência -- 11554 |
F100TOK | valida os dados da movimentação bancária. Documentação: F100TOK - Validar dados da movimentação bancária -- 11688 |
FA100TRF | O ponto de entrada FA100TFR sera executado antes da transferência e retornara .T. para gravar a transferência ou .F. em caso contrário. Documentação: FA100TRF - Grava transferência -- 11932 |
FA100ROT | Permite a inclusão de botões customizados na EnchoiceBar da rotina Movimento Bancário. Documentação: FA100ROT - Inclusão de botões customizados na EnchoiceBar -- 30104 |
FA100OKP | utilizado para bloquear a inclusão de movimentos a pagar na rotina Movimentos Bancários. Se o retorno for verdadeiro, o movimento sera realizado normalmente, caso contrario não haverá inclusão do movimento. Retorno lógico. Documentação: FA100OKP - Bloqueia inclusão de movimentos -- 11928 |
FA100OKR | utilizado para bloquear a inclusão de movimentos a receber na rotina Movimentos bancários. Caso o retorno seja verdadeiro o movimento é feito normalmente, caso contrario não se fará a inclusão do movimento. Retorno lógico. Documentação: FA100OKR - Bloqueia inclusão de movimentos -- 11929 |
A85CHPDT | permite que o usuário possa fazer seu próprio tratamento para selecionar os cheques de terceiros que poderão ser utilizados no tipo de pagamento informado na opção pagamento diferenciado. Documentação: A85CHPDT - Seleção de cheques de terceiros -- 11564 |
F100FBRW | O ponto de entrada será executado antes do browse da movimentação bancaria. Documentação: F100FBRW - Permite filtrar as movimentações bancárias |
FA100NAT | Ponto de entrada que permite não validar o CST na rotina FINA100. Documentação: FA100NAT Não valida CST de Credito |
<!-- esconder o menu --> <style> div.theme-default .ia-splitter #main { margin-left: 0px; } .ia-fixed-sidebar, .ia-splitter-left { display: none; } #main { padding-left: 10px; padding-right: 10px; overflow-x: hidden; } .aui-header-primary .aui-nav, .aui-page-panel { margin-left: 0px !important; } .aui-header-primary .aui-nav { margin-left: 0px !important; } </style> |