| Linha de Produto: | Linha Protheus |
|---|---|
| Segmento: | Backoffice |
| Módulo: | Financeiro |
A rotina FINA070 possui cinco parâmetros a serem informados, porém para o funcionamento em Execauto. O primeiro parâmetro necessita ser preenchido como um array, pois as informações utilizadas neste array são essenciais para a conclusão do processo.
xAutoCab: É possível informar o array com os dados referentes ao título a ser baixado e as informações necessárias para esta baixa, como por exemplo data da baixa, data de crédito, etc.
nOpc: Opção que está sendo realizada no fonte, como por exemplo: baixa, cancelamento de baixa, etc - Conteúdos do nOpc: 3 - Baixa de Título, 5 - Cancelamento de baixa, 6 - Exclusão de Baixa.
lNoMbrowse: Variável lógica que informa se deve ou não ser apresentado o Browse da rotina FINA070.
nOpbaixa: Variável que determina qual baixa ou cancelamento de baixa será executado.
Exemplo nOpBaixa: Caso um título seja baixado completamente em duas, ou mais baixas parciais, por meio deste parâmetro pode-se informar qual das baixas será cancelada.
Este parâmetro não obedece a sequência de baixa gravada na tabela SE5, portanto, em um cenário com 4 baixas parciais, por exemplo, ao cancelar a segunda baixa (parâmetro igual a 2) e em seguida, for opção do usuário, cancelar a terceira baixa, o parâmetro deve ser passado com o valor 2 novamente, pois a baixa anteriormente cancelada não é mais considerada na sequência de baixas, a rotina considera uma nova sequência, de 1 a 3, sendo a primeira baixa equivalente a 1, a terceira baixa equivalente a 2 e a quarta baixa equivalente a 3. Caso o valor do parâmetro seja superior ao número de baixas existente (por exemplo, 3 baixas parciais e o parâmetro com valor 4), a rotina considera automaticamente o parâmetro como valor 1, cancelando a primeira baixa da sequência (seja essa sequência a original, ou seja, respeitando a ordem das baixas, ou seja a ordem atual, já após ter havido o cancelamento de alguma baixa parcial). cFiltro: Grava um filtro nos títulos da MBrowse. |
Caso os campos abaixo sejam informados com valor zero no array da rotina automática, o 4o. elemento no array (lógico) deve retornar .T. para que seja considerado o valor informado.
Se o 4o. elemento não for informado o sistema assume os valores padrão do sistema:
AUTJUROS
AUTMULTA
AUTDESCONT
AUTCM1
AUTPRORATA
#INCLUDE "Protheus.ch"
//-------------------------------
// Baixa do titulo a receber
//-------------------------------
User Function BAIXA070()
Local aBaixa := {}
aBaixa := {{"E1_PREFIXO" ," " ,Nil },;
{"E1_NUM" ,"200 " ,Nil },;
{"E1_PARCELA" ," " ,Nil },;
{"E1_TIPO" ,"NF " ,Nil },;
{"AUTMOTBX" ,"NOR" ,Nil },;
{"AUTBANCO" ,"001" ,Nil },;
{"AUTAGENCIA" ,"00001" ,Nil },;
{"AUTCONTA" ,"0000000001" ,Nil },;
{"AUTDTBAIXA" ,dDataBase ,Nil },;
{"AUTDTCREDITO",dDataBase ,Nil },;
{"AUTHIST" ,"BAIXA TESTE" ,Nil },;
{"AUTJUROS" ,0 ,Nil,.T.},;
{"AUTVALREC" ,700 ,Nil }}
MSExecAuto({|x,y| Fina070(x,y)},aBaixa,3)
Return
//-------------------------------
// Cancelamento da baixa do titulo a receber
//-------------------------------
User Function CANC070()
Local aBaixa := {}
aBaixa := {{"E1_PREFIXO" ," " ,Nil },;
{"E1_NUM" ,"200 " ,Nil },;
{"E1_PARCELA" ," " ,Nil },;
{"E1_TIPO" ,"NF " ,Nil },;
{"AUTMOTBX" ,"NOR" ,Nil },;
{"AUTBANCO" ,"001" ,Nil },;
{"AUTAGENCIA" ,"00001" ,Nil },;
{"AUTCONTA" ,"0000000001" ,Nil },;
{"AUTDTBAIXA" ,dDataBase ,Nil },;
{"AUTDTCREDITO",dDataBase ,Nil },;
{"AUTHIST" ,"BAIXA TESTE" ,Nil },;
{"AUTJUROS" ,0 ,Nil,.T.},;
{"AUTVALREC" ,700 ,Nil }}
MSExecAuto({|x,y| Fina070(x,y)},aBaixa,5)
Return
|
#INCLUDE "Protheus.ch"
//--------------------------------------------------
// Para correto funcionamento o parâmetro MV_MULNATR
// deve estar igual a .T.
//---------------------------------------------------
//-------------------------------------------------------------
// Neste exemplo é utilizada uma natureza e um centro de custo
//--------------------------------------------------------------
User Function EXEC070()
Local aBaixa := {}
aBaixa := {{"E1_PREFIXO" ," " ,Nil },;
{"E1_NUM" ,"200 " ,Nil },;
{"E1_PARCELA" ," " ,Nil },;
{"E1_TIPO" ,"NF " ,Nil },;
{"AUTMOTBX" ,"NOR" ,Nil },;
{"AUTBANCO" ,"001" ,Nil },;
{"AUTAGENCIA" ,"00001" ,Nil },;
{"AUTCONTA" ,"0000000001" ,Nil },;
{"AUTDTBAIXA" ,dDataBase ,Nil },;
{"AUTDTCREDITO",dDataBase ,Nil },;
{"AUTHIST" ,"BAIXA TESTE" ,Nil },;
{"AUTJUROS" ,0 ,Nil,.T.},;
{"AUTVALREC" ,500 ,Nil }}
//Adicionando o vetor da natureza
Aadd(aAuxEv,{"EV_NATUREZ","EASY", NIL }) //Natureza a Ratear
Aadd(aAuxEv,{"EV_VALOR", 500, NIL }) //Valor do Rateio na Natureza
Aadd(aAuxEv,{"EV_PERC", 100, NIL }) //Percentual do Rateio na Natureza
Aadd(aAuxEv,{"EV_RATEICC", "1", NIL }) //Rateio por Centro de Custo == 1 - Sim
//Adicionando Múltiplos Centros de Custo
//Primeiro Centro de Custo
aAuxEz := {}
Aadd( aAuxEz,{"EZ_CCUSTO", "000001 ", NIL}) //Centro de Custo da Natureza
Aadd( aAuxEz, {"EZ_VALOR", 500, NIL}) //Valor do Rateio neste Centro de Custo
Aadd(aRatEz, aAuxEz)
Aadd(aAuxEv,{"AUTRATEICC", aRatEz, NIL}) //Recebendo dentro do Array da Natureza os Multiplos Centros de Custo
Aadd(aRatEvEz,aAuxEv) //Adicionando a Natureza ao Rateio de Multiplas Naturezas
MSExecAuto({|x,y,z| Fina070(x,y,,,,,,,z)},aBaixa,3,aRatEvEz)
If lMsErroAuto
MostraErro()
Else
MsgAlert("Baixa realizada com sucesso!")
EndIf
Return
|
#INCLUDE "Protheus.ch"
//-------------------------------
// Baixa do titulo a receber
//-------------------------------
User Function BAIXA070()
Local aBaixa := {}
aBaixa := {{"E1_PREFIXO" ," " ,Nil },;
{"E1_NUM" ,"200 " ,Nil },;
{"E1_PARCELA" ," " ,Nil },;
{"E1_TIPO" ,"NF " ,Nil },;
{"AUTMOTBX" ,"NOR" ,Nil },;
{"AUTBANCO" ,"001" ,Nil },;
{"AUTAGENCIA" ,"00001" ,Nil },;
{"AUTCONTA" ,"0000000001" ,Nil },;
{"AUTDTBAIXA" ,dDataBase ,Nil },;
{"AUTDTCREDITO",dDataBase ,Nil },;
{"AUTHIST" ,"BAIXA TESTE" ,Nil },;
{"AUTJUROS" ,0 ,Nil,.T.},;
{"AUTTXMOEDA" ,5.0000 ,Nil }}
MSExecAuto({|x,y| Fina070(x,y)},aBaixa,3)
Return |
Não há.
Documento de referencia FINA070 - baixas a receber
<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>
|