Árvore de páginas

Rotina Automaticas Fina070

Produto:

ADVPL

Versões:

Todas

Ocorrência:

Exemplo de utilização da Rotina automática do Contas a Receber por sequencia da baixa.

Ambiente:

P12

Passo a passo:

#Include 'Protheus.ch'
#Include "TOPCONN.CH"
#Include "Tbiconn.ch"

User Function myfina70()

Local aBaixa := {}
Private lMsErroAuto:= .F.
PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01"

dbSelectArea("SE1")
SE1->(dbSetOrder(1))
SE1->(dbGoTop())

conout("Teste de Baixa de Titulo")

aBaixa := {{"E1_PREFIXO" ,"TW5" ,Nil },;
{"E1_NUM" ,"XX1000001" ,Nil },;
{"E1_TIPO" ,"NF " ,Nil },;
{"E1_CLIENTE" ,"0023 " ,Nil },;
{"E1_LOJA" ,'01' ,Nil },;
{"E1_NATUREZ" ,"NAT_FK " ,Nil },;
{"E1_PARCELA" ," " ,Nil },;
{"AUTMOTBX" ,"001" ,Nil },;
{"CBANCO" ,"237" ,Nil },;
{"CAGENCIA" ,"1010 " ,Nil },;
{"CCONTA" ,"10101 " ,Nil },;
{"AUTDTBAIXA" ,CtoD("03/08/2018") ,Nil },;
{"AUTDTCREDITO",CtoD("03/08/2018") ,Nil },;
{"AUTHIST" ,"TESTE CADASTRO 002000002 " ,Nil },;
{"AUTJUROS" ,0 ,Nil,.T.}}
//{"NVALREC" ,560,Nil }}

MSExecAuto({|x,y,b,a| Fina070(x,y,b,a)},aBaixa,6,.F.,5) //3 - Baixa de Título, 5 - Cancelamento de baixa, 6 - Exclusão de Baixa.

If lMsErroAuto
MostraErro()
Else
conout("BAIXADO COM SUCESSO!" + E1_NUM)
Endif

RESET ENVIRONMENT
Return

Observações:

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.

  • Lembrando a apenas que o exemplo contido no TDN:
    http://tdn.totvs.com/pages/releaseview.action?pageId=6070728
  • Trata apenas a Baixa simples do processo não prevendo a sequência caso tenha essa necessidade utilizar o exemplo especifico neste documento , validando as boas praticas de programação no caso de utilizar todos os parâmetros da função do MSExecAuto({|x,y,b,a| Fina070(x,y,b,a)},aBaixa,6,.F.,5) é necessário ajustar o mesmo neste exemplo estamos utilizando o quatros parâmetros dessa forma foi acrescentado caracteres (b,a) assim o sistema entender a sequencia de parâmetros passados.


Parâmetros utilizados pela FINA070:

  1. xAutoCab: É possivel 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.

  2. nOpc: Opção que está sendo realizada no fonte, como por exemplo: baixa, cancelamento de baixa, etc.

  3. nOpbaixa: Variável que determina qual baixa ou cancelamento de baixa será executado no caso a sequência a ser considerada.

  4. lNoMbrowse: Variável lógica que informa se deve ou não ser apresentado o Browse da rotina FINA070.

  5. Conteúdos do nOpc: 3 - Baixa de Título, 5 - Cancelamento de baixa, 6 - Exclusão de Baixa.