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)
#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}}
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}}
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} }
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) |
Outras Ações / Ações relacionadas
| Ação | Descrição |
|---|---|
| Inclua a ação | Inclua a descrição relacionada |
| Inclua a ação | Inclua a descrição relacionada |
| Inclua a ação | Inclua a descrição relacionada |
Principais Campos e Parâmetros
| Campo | Descrição |
|---|---|
| Inclua o campo | Inclua a descrição relacionada |
| Inclua o campo | Inclua a descrição relacionada |
| Inclua o campo | Inclua a descrição relacionada |
<!-- 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>
|