Histórico da Página
...
Informações | ||
---|---|---|
| ||
FINA565(nPosArotina, aGetAut1, aChvAut, aGetAut2, aColItens, aEdit, lAutomato) Na rotina automática de Liquidação Contas a Pagar (FINA565) é possível gerar novos títulos a partir de títulos. As variáveis aChvAut e lAutomato são de uso interno e não devem ser enviadas na chamada. As informações utilizadas nesta user function precisam estar previamente cadastradas na base que será utilizada. Para o cancelamento da liquidação, devem ser passadas as seguintes informações: nPosArotina := 4 AADD(aGetAut1,{"CLIQCAN",cNumLiq}) A posição 1 do array, deve ser a string fixa "CLIQCAN". A variável cNumLiq é o número da liquidação a ser cancelada, que pode ser obtida através do campo E2_NUMLIQ. |
Informações | ||
---|---|---|
| ||
Na rotina automática de Liquidação Contas a Pagar (FINA565) não é possível enviar dados para seleção de filiais e ou realizar a busca multi-filial dos registros desejados. Sendo assim, a seleção dos títulos no processamento será realizada na abertura do ambiente no momento da chamada da rotina. |
Totvs custom tabs box | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||
Totvs custom tabs box items | |||||||||||||||||||
| |||||||||||||||||||
Totvs custom tabs box items | |||||||||||||||||||
| |||||||||||||||||||
Totvs custom tabs box | |||||||||||||||||||
| |||||||||||||||||||
Exemplificação do passo a passo via browser. | |||||||||||||||||||
|
Totvs custom tabs box items | |||||
---|---|---|---|---|---|
| |||||
Título a ser liquidado. Tela de Juros e Descontos |
Totvs custom tabs box items | ||||
---|---|---|---|---|
| ||||
Tela 21 - Configuração dos parâmetros para filtragem dos títulos. |
Totvs custom tabs box items | ||||||
---|---|---|---|---|---|---|
|
| |||||
Seleção de Títulos filtrados |
Totvs custom tabs box items | ||||
---|---|---|---|---|
| ||||
Tela de Juros e Descontos |
Totvs custom tabs box items | ||||
---|---|---|---|---|
| ||||
Tela 2 - Condição de pagamento e aCols de cheques. |
Totvs custom tabs box items | ||||
---|---|---|---|---|
| ||||
Resultado Final Título Baixado: Titulos gerados: |
04. EXEMPLOS DE ROTINA AUTOMATICA
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#INCLUDE 'PROTHEUS. | ||||||||
Bloco de código | ||||||||
| ||||||||
#INCLUDE 'PROTHEUS.CH'
USER FUNCTION F565EXEC()
Local aTela1 := {}
Local aTela2 := {}
Local aEdtVlr := {}
Local aCols := {}
Local aItens := {}
Local cPrefixo := 'GER'
Local cFornec := 'FINC83'
Local cLoja := '01'
Local nRotina := 2 // Liquidar
Local nI := 0
// Variáveis utilizadas para o controle de erro da rotina automática
Private lMsErroAuto := .F.
Private lAutoErrNoFile := .T.
PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01 " USER "admin" PASSWORD "" TABLES "SE1,SA1,SE2" MODULO "FIN"
// Define a DataBase da movimentação
dDataBase := cToD("08/09/2016")
// Define Parâmetros da Rotina
Pergunte('FIN565',.F.)
// Array de desvio de tela - Caso não seja passado nenhum dos parametros
// a liquidação ira considerar o título posicionado
aAdd(aTela1, {'cFornDe', 'FINC83'}) //- Fornecedor De:
aAdd(aTela1, {'cLojaDe', '01' }) //- Loja De:
aAdd(aTela1, {'cFornAte', 'FINC83'}) //- Fornecedor Até:
aAdd(aTela1, {'cLojaAte', '01' }) //- Loja Até:
aAdd(aTela1, {'cForn565', 'FINC83'}) //- Gerar p/:
aAdd(aTela1, {'cLoja', '01'}) //- Loja:
aAdd(aTela1, {'nValorMax', 0.00}) //- Valor:
aAdd(aTela1, {'nValorDe', 0.00}) //- Titulos no valor De:
aAdd(aTela1, {'nValorAte', 999999999999}) //- Até o Valor De:
aAdd(aTela1, {'cMoeda565', '1'}) //- Moeda:
aAdd(aTela1, {'cOutrMoed', '1'}) //- Outras moedas:
aAdd(aTela1, {'cIntervalo', '1'}) //- Intervalo por:
aAdd(aTela1, {'dData565I', CTOD('08/09/2016')}) //- Data De:
aAdd(aTela1, {'dData565F', CTOD('08/09/2016')}) //- Data Até:
aAdd(aTela1, {'cPrefDe', ' '}) //- Prefx De:
aAdd(aTela1, {'cPrefAte', 'zzz'}) //- Prefx Até:
aAdd(aTela1, {'cNumDe', 'FIN565001'}) //- Titulo De:
aAdd(aTela1, {'cNumAte', 'FIN565001'}) //- Titulo Até:
//aHeader - Cabeçalho
aAdd(aTela2, {'cLoja', cLoja }) //- Loja
aAdd(aTela2, {'cCondicao', '003' }) //- Condicao (opcional)
aAdd(aTela2, {'cTipo', 'CH ' }) //- Tipo
aAdd(aTela2, {'cNatureza', 'FIN001CA' }) //- Natureza
aAdd(aTela2, {'NTXLIQ', 4}) //- TX Moeda (opcional)
aAdd(aTela2, {'cFornece', cFornec }) //- Fornecedor
// Itens/aCols
//Utilizando condição de pagamento torna-se obrigatório apenas esses campos
aItens := {}
AADD(aItens, {'E2_PREFIXO', cPrefixo}) //- Prefixo
AADD(aItens, {'E2_BCOCHQ' , '001'}) //- Banco
AADD(aItens, {'E2_AGECHQ' , '0001'}) //- Agencia
AADD(aItens, {'E2_CTACHQ' , '00001'}) //- Conta
AADD(aItens, {'E2_NUM' , 'CHQ001'}) //- Num Cheque
AADD(aCols, ACLONE(aItens))
//Array que controla edição dos títulos a serem liquidados.
aEdtVlr := {}
AAdd( aEdtVlr, {'Editar', .T. } ) //- Se necessario Editar Valores
aAdd( aEdtVlr, { {'chave','E2_FILIAL+E2_PREFIXO+E2_NUM+E2_PARCELA+E2_TIPO+E2_FORNECE+E2_LOJA'},;
{'nCotMoed', 3},;
{'nValJur', 0},;
{'nValDes', 0},;
{'nValLiq', 6005} } )
MSEXECAUTO( { |a, b, c, d, e, f, g| FINA565( a, b, c, d, e, f, g )}, nRotina, aTela1, Nil, aTela2, aCols, aEdtVlr, .T. )
If lMsErroAuto
MostraErro()
Else
Conout("Liquidação gerada com sucesso!")
EndIf
Return NIL
|
Bloco de códigowarning | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
Exemplo de duas parcelas:
For nI := 1 To 2
aItens := {}
AADD(aItens, {'E2_PREFIXO', cPrefixo}) //- Prefixo
AADD(aItens, {'E2_TIPO' , 'CH'}) //- Tipo
AADD(aItens, {'E2_BCOCHQ' , '100'}) //- Banco
AADD(aItens, {'E2_AGECHQ' , '001'}) //- Agencia
AADD(aItens, {'E2_CTACHQ' , '1001'}) //- Conta
AADD(aItens, {'E2_NUM' , 'FLQ'+STRZERO(nI,4)}) //- Num Cheque
AADD(aItens, {'E2_VENCTO' , dDataBase+(nI*15)}) //- Dt Vencimento
AADD(aItens, {'E2_VLCRUZ' , 3002.50}) //- Valor
AADD(aItens, {'E2_ACRESC' , 0}) //- Acrescimo
AADD(aItens, {'E2_DECRESC', 0}) //- Decrescimo
AADD(aItens, {'E2_VALOR' , 3002.50}) //- Valor Total
AADD(aCols, ACLONE(aItens))
Next nI |
Midnight | |
title | Cancelamento Liquidação |
---|---|
collapse | true |
#INCLUDE "TOTVS.CH"
#INCLUDE "RWMAKE.CH"
#INCLUDE "TBICONN.CH"
USER FUNCTION F565CNCL()
Local nRotina As Numeric
Local aTela1 As ARRAY
Local cNumLiq As Character
Private lMsErroAuto := .F.
Private lAutoErrNoFile := .T.
PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01 " USER "admin" PASSWORD "" TABLES "SE1,SA1,SE2" MODULO "FIN"
nRotina := 4
aTela1 := {}
cNumLiq := "000002"
AADD(aTela1,{"CLIQCAN",cNumLiq})
// Define a DataBase da movimentação
dDataBase := CTOD("08/09/2016")
MSEXECAUTO( { |a, b, c, d, e, f, g| FINA565( a, b, c, d, e, f, g )}, nRotina, aTela1, Nil, Nil, Nil, Nil, .T. )
If lMsErroAuto
MostraErro()
Else
Conout("Liquidação cancelada com sucesso!")
EndIf
Return
Aviso | |||||||||
---|---|---|---|---|---|---|---|---|---|
| |||||||||
Caso seja informada uma condição de pagamento é necessário apenas informar os campos:
Não informando uma condição de pagamento devera ser preenchido todos os campos que compõem o aCols (Para acréscimo e decréscimo utilizar esta forma - títulos gerados).
| |||||||||
Bloco de código | |||||||||
| |||||||||
#INCLUDE "TOTVS.CH"
#INCLUDE "RWMAKE.CH"
#INCLUDE "TBICONN.CH"
USER FUNCTION F565CANC()
Local nRotina As Numeric
Local aTela1 As ARRAY
Private lMsErroAuto := .F.
Private lAutoErrNoFile := .T.
PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01 " USER "admin" PASSWORD "" TABLES "SE1,SA1,SE2" MODULO "FIN"
nRotina := 4
aTela1 := {}
AADD(aTela1,{"CLIQCAN","000002"})
// Define a DataBase da movimentação
dDataBase := CTOD("30/03/2023")
MSEXECAUTO( { |a, b, c, d, e, f, g| FINA565( a, b, c, d, e, f, g )}, nRotina, aTela1, Nil, Nil, Nil, Nil, .T. )
If lMsErroAuto
MostraErro()
Else
Conout("Liquidação cancelada com sucesso!")
EndIf
Return |
04. DEMAIS INFORMAÇÕES
Card documentos Informacao A rotina realizara a liquidação de todos os títulos encontrados pelo filtro - configurado através do array que corresponde aos parâmetros apresentados na primeira tela. Titulo IMPORTANTE!
...