01. VISÃO GERAL
Execução automática (ExecAuto) da substituição de títulos provisórios a receber(PR).
02. EXEMPLO DE UTILIZAÇÃO
ExecAuto - Substituição de Provisórios
#Include 'Protheus.ch' #include "tbiconn.ch" //Substituicao de titulos Contas a receber User Function UFSUBSCR() Local aTitDef := {} Local aTitPrv := {} Local cCliente := "F040CT" // Codigo de busca do cliente Local cLoja := "01" // Loja de Busca Local nVlrSubs := 0 Local cNumTitulo PRIVATE lMsErroAuto := .F. //Numeracao do titulo destino (opcional) cNumTitulo := GetSX8Num("SE1","E1_NUM") dbSelectArea("SE1") dbSetOrder(2) If MsSeek(xFilial("SE1")+cCliente+cLoja) While !(SE1->(eof())) .AND. xFilial("SE1")+cCliente+cLoja == SE1->(E1_FILIAL+E1_CLIENTE+E1_LOJA) If SE1->E1_TIPO $ MVPROVIS .AND. SE1->E1_SALDO > 0 .AND. SE1->E1_MOEDA == 1 aAdd(aTitPrv,{ {"E1_PREFIXO" , SE1->E1_PREFIXO ,Nil},; {"E1_NUM" , SE1->E1_NUM ,Nil},; {"E1_PARCELA" , SE1->E1_PARCELA ,Nil},; {"E1_TIPO" , SE1->E1_TIPO ,Nil},; {"E1_NATUREZ" , SE1->E1_NATUREZA ,Nil},; {"E1_CLIENTE" , SE1->E1_CLIENTE ,Nil},; {"E1_LOJA" , SE1->E1_LOJA ,Nil} }) nVlrSubs += SE1->E1_SALDO // VALOR QUE SERÁ GERADO O TITULO É A SOMA DE TODOS OS TITULOS PR SELECIONADOS Endif SE1->(dbSkip()) EndDO SE1->(dbSetOrder(1)) If Len(aTitPrv) > 0 begin transaction //Titulo Definitivo aTitDef := {{"E1_PREFIXO" , "CON" ,Nil},; {"E1_NUM" , cNumTitulo ,Nil},; {"E1_PARCELA" , " " ,Nil},; {"E1_TIPO" , "NF" ,Nil},; {"E1_NATUREZ" , "000001" ,Nil},; {"E1_CLIENTE" , PADR(cCliente,TamSx3("E1_CLIENTE")[1]) ,Nil},; {"E1_LOJA" , PADR(cLoja,TamSx3("E1_LOJA")[1]) ,Nil},; {"E1_EMISSAO" , dDataBase,Nil},; {"E1_VENCTO" , dDataBase,Nil},; {"E1_VENCREA" , dDataBase,Nil},; {"E1_VALOR" , nVlrSubs ,Nil }} MSExecAuto({|x,y,z| Fina040(x,y,z)},aTitDef,6,aTitPrv) If lMsErroAuto MostraErro() Else conout("Titulo substituído com sucesso") Endif End transaction Endif Else Conout("Titulo não encontrado") Endif Return
Visão Geral
Import HTML Content
Conteúdo das Ferramentas