Esta rotina permite que sejam executadas as compensações de titulo a pagar com títulos a receber, efetuando desta forma o encontro de contas entre o fornecedor e o cliente.
Os títulos a serem considerados nesse processo são:
Procedimento efetuado de forma manual via rotina Compensação entre carteiras (FINA450), 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 Compensação entre carteiras (FINA450), 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 "rwmake.ch" #include 'tbiconn.ch' User Function Auto450() Local aAutoCab := {} Local aArea := GetArea() Local cTabSe1 := "TMPSE1A" Local cTabSe2 := "TMPSE2A" Local aSE1450 := {} Local aSE2450 := {} Local aFilCmp := {} Private lMsHelpAuto := .F. Private lMsErroAuto := .F. BeginSql Alias cTabSe1 SELECT R_E_C_N_O_ as RECNO FROM %Table:SE1% SE1 WHERE SE1.E1_FILIAL = 'D MG 01 ' AND SE1.E1_PREFIXO = 'CPT' AND SE1.E1_NUM = 'VT001' AND SE1.E1_TIPO = 'NF' AND SE1.E1_CLIENTE = 'FIN001' AND SE1.E1_LOJA = '01' AND SE1.%NotDel% EndSql While (cTabSe1)->(!EOF()) SE1->(DbGoto((cTabSe1)->RECNO)) AAdd(aSE1450, {SE1->E1_FILIAL+SE1->E1_PREFIXO+SE1->E1_NUM+SE1->E1_PARCELA+SE1->E1_TIPO}) If ascan(aFilCmp,SE1->E1_FILIAL) == 0 Aadd(aFilCmp, SE1->E1_FILIAL) EndIf (cTabSe1)->(DbSkip()) Enddo (cTabSe1)->(DbCloseArea()) BeginSql Alias cTabSe2 SELECT R_E_C_N_O_ as RECNO FROM %Table:SE2% SE2 WHERE SE2.E2_FILIAL = 'D MG 02 ' AND SE2.E2_PREFIXO = 'CPT' AND SE2.E2_NUM = 'VT001' AND SE2.E2_TIPO = 'NF' AND SE2.E2_FORNECE = 'FIN001' AND SE2.E2_LOJA = '01' AND SE2.%NotDel% EndSql While (cTabSe2)->(!EOF()) SE2->(DbGoto((cTabSe2)->RECNO)) AAdd(aSE2450, {SE2->E2_FILIAL+SE2->E2_PREFIXO+SE2->E2_NUM+SE2->E2_PARCELA+SE2->E2_TIPO+SE2->E2_FORNECE+SE2->E2_LOJA}) If ascan(aFilCmp,SE2->E2_FILIAL) == 0 Aadd(aFilCmp, SE2->E2_FILIAL) EndIf (cTabSe2)->(DbSkip()) Enddo (cTabSe2)->(DbCloseArea()) aAutoCab :={ {"AUTDVENINI450", cTod('27/08/19') , nil},; {"AUTDVENFIM450", cTod('27/08/19') , nil},; {"AUTNLIM450" ,8000, nil},; {"AUTCCLI450" , "FIN001" , nil},; {"AUTCLJCLI" , "01" , nil},; {"AUTCFOR450" , "FIN001" , nil},; {"AUTCLJFOR" , "01" , nil},; {"AUTCMOEDA450" , "01" , nil},; {"AUTNDEBCRED" , 1 , nil},; {"AUTLTITFUTURO", .F. , nil},; {"AUTARECCHAVE" ,aSE1450, nil},; {"AUTAPAGCHAVE" , aSE2450 , nil},; {"AUTAFILCOMP" , aFilCmp , nil}} //Parâmetro opcional, somente devera ser informado quando houver uma compensação multi-filiais MSExecAuto({|x,y,z| Fina450(x,y,z)}, nil , aAutoCab , 3 ) If !lMsErroAuto ConOut("Incluido com sucesso! ") confirmsx8() Else ConOut("Erro na inclusao!") rollbacksx8() MostraErro() EndIf RestArea(aArea) Return |
Para que a compensação funcione entre filiais se faz necessário o uso do parametro AUTAFILCOMP, caso contrario não ha a necessidade de informa-lo Para mais informações acesse a documentação da rotina automática |
Operação que permite realizar a compensação entre carteiras pagar/receber.
Operação que permite realizar o cancelamento do movimento gerado pela compensação.
Operação que permite realizar o estorno do movimento gerado pela compensação.
Apresenta quadro das legendas e seus significados referenciados a situação do titulo a pagar.
Pesquisa o titulo dentro do arquivo de contas a pagar, tendo como resultado o titulo posicionado e destacado na browse.
Operação que permite visualizar o titulo posicionado, podendo conferir seu saldo e valor.
Lista de parâmetros aplicados ao FINA450 e seu processamento
|
A contabilização dos processos aplicados a uma compensação contas a pagar via módulo Financeiro é feita pelos lançamentos padrões abaixo:
LP | Fato Gerador | ON | OFF (CTBAFIN) |
---|---|---|---|
589 | Cancelamento de compensação de títulos contas a pagar | X | X |
597 | Compensação contas a pagar | X | X |
Contabilização do tipo DIC A contabilização do título do tipo DIC gerado pela compensação, pode ser contabilizada pela LP 510 - Inclusão de títulos a pagar, pois o mesmo é gerado através da rotina automática do FINA050 (Contas a Pagar). Contabilização dos impostos gerados na compensação. A contabilização dos impostos gerados pela compensação, podem ser contabilizados, pela própria LP 597 - Compensação a pagar, através das variáveis: NPIS340, NCOF340, NCSL340, NIRF340, NISS340. Para os demais casos, a contabilização permanece a mesma, conforme a documentação abaixo: |
Ponto de entrada | Observação |
---|---|
F340BROW | O ponto de entrada F340BROW sera chamado antes do browse e podera ser utilizado no tratamento dos dados apresentados no browse. Documentação: http://tdn.totvs.com/x/56Jc |
F340LIBT | O ponto de entrada indica se haverá a validação de liberação do titulo no momento da compensação. Documentação: http://tdn.totvs.com/x/_a2FDg |
F340DTFIN | O PE é chamado nas validações do parâmetro MV_DATAFIN existentes na Compensação CP. Documentação: http://tdn.totvs.com/x/6qJc |
F340TAXA | Neste ponto de entrada é possível alterar as taxas das moedas que serão utilizadas na compensação do contas a pagar. Documentação: http://tdn.totvs.com/x/aK_FDg |
F340ATLIS | Este Ponto de Entrada permite a manipulação do Array aTitulos, para alteração do listBox da tela de compensação. |
F340TOTCP | ponto de entrada F340TOTCP() possibilita manipular os valores totais de títulos a serem compensados. Documentação: http://tdn.totvs.com/x/nYIbCQ |
F340MKTIT | O ponto de entrada F340MKTIT permite a customização dos títulos já selecionados na markbrowse. Permite a manipulação da array que contem os títulos, e, |
F340NAT | |
F340_PA | O ponto de entrada F340_PA sera executado apos contabilizar cada titulo de compensacao a pagar. Documentação: http://tdn.totvs.com/x/7aJc |
F340SE5 | O ponto de entrada F340SE5 manipula Movimentos Bancários Processados tendo como parâmetro o Recno dos registros SE5 que foram utilizados na Compensação. Documentação: http://tdn.totvs.com/x/sAKqC |
F340GRV | O ponto de entrada F340GRV valida a inclusão na rotina de Compensação de Contas a Pagar (FINA340) Documentação: http://tdn.totvs.com/x/IgBzB |
F340ACAN | Este ponto de entrada permite que seja criada uma regra para informar quando será Estornado ou não. Documentação: http://tdn.totvs.com/x/j7GFDg |
F340CAN | Ponto de Entrada chamado quando realizada a confirmação do estorno de compensação. Documentação: http://tdn.totvs.com/x/zoFdAg |
F340GREST | Gravação de dados adicionais no estorno da compensação Documentação: http://tdn.totvs.com/x/iqVc |
F340FCAN | Ponto de entrada permite gravação de informação complementares no momento do estorno da compensação. Documentação: http://tdn.totvs.com/x/W7KFDg |
FA340QRY | Complemento de query para cancelamento da compensação Documentação: http://tdn.totvs.com/x/lgwGD |
FA340FILT | O ponto de entrada FA340FILT é executado na montagem da tabela de títulos a compensar e será utilizado para escolher quais títulos serão compensados |
F340CMP | Tem como finalidade permitir ao usuario calcular o titulo de NDF ou PA e sera chamado na funcao Fa340Tit() Documentação: http://tdn.totvs.com/x/6aJc |
FA340ORD | Ponto de Entrada permite a alteração do indice, mudando assim a ordem dos titulos exibidos da markbrowse para a compensação a pagar |
F340ValOk | O ponto de entrada F340ValOk, permite o controle dos dados e da confirmação da tela de compensação de títulos a pagar |
F340TOTCP | Possibilita manipular os valores totais de títulos a serem compensados. Documentação: http://tdn.totvs.com/x/nYIbCQ |
F340VLD | Ponto de Entrada que permite validar se um título será ou não compensado. |
F340LEGE | |
SE5FI340 | Ponto de Entrada que permite realizar gravações complementares na tabela SE5, após a gravação do movimento bancário do título principal na compensação a pagar automática |
SE5FI341 | Ponto de Entrada que permite realizar gravações complementares na tabela SE5, após a gravação do movimento bancário do título de Adiantamento na compensação a pagar automática. |
F340GERNDF | Possibilidade de gravar campos adicionais na inclusão da NDF gerada pela compensação à pagar. Documentação: http://tdn.totvs.com/x/kvdbDQ |
FA340NDFGrv | |
F340FLCP | Permite implementar uma expressão complementar no filtro de titulos. Documentação: http://tdn.totvs.com/x/66Jc |
F340FCPTOP | Esse ponto de entrada permite criar um novo filtro para a rotina de Compensação Contas a Pagar - FINA340. Documentação: http://tdn.totvs.com/x/r_xZE |
<!-- 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> |