Histórico da Página
...
Índice | ||||||
---|---|---|---|---|---|---|
|
Informações | ||
---|---|---|
| ||
Essa rotina foi ajustada para atender a Lei Geral de Proteção de Dados (Lei n° 13.70), sendo que alguns campos que apresentam informações consideradas como dados sensíveis e/ou pessoais, serão ofuscados deixando de ser legíveis. |
01. VISÃO GERAL
Esta rotina permite que sejam executadas as compensações de todos os adiantamentos já efetuados e cadastrados, realizados pelos fornecedores (títulos tipo PA), além de notas de crédito a abater (títulos tipo NDF).
Os adiantamentos selecionados e informados pelo usuário serão abatidos do valor total do título original.
títulos 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:
- Títulos de débito - exemplo: NF (Nota Fiscal), BOL (boleto), etc.
- Títulos de crédito - exemplo: PA (pagamento antecipado), RA (Recebimento antecipado) e títulos de devolução (NDF e NCC).
02.02. EXECUÇÃO
- Manual
Procedimento efetuado de forma manual via rotina Compensação contas a pagar (FINA340entre carteiras (FINA450), com exibição das telas envolvidas no processo e necessitando de ações/comandos do usuário.
- Automática
Procedimento realizado de forma automática na rotina de Compensação contas a pagar (FINA340entre carteiras (FINA450), sem exibição de telas ou necessidade de interação do usuário.
...
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#INCLUDE#include "Protheusrwmake.ch" #INCLUDE#include "RWMAKE.CH" #INCLUDE "TBICONN.CH" Static __COMPAUT := Nil 'tbiconn.ch' User Function CMPAUTOMAAuto450() Local lRetaAutoCab := .F. Local cQry{} Local aArea := "" Local aTiposGetArea() Local cTabSe1 := {"TMPSE1A"NF ", "PA ", "NDF"} Local cTblTmpLocal cTabSe2 := "TMPSE2A" Local aNF Local aSE1450 := {} Local aPA_NDF := {} Local aContabilaSE2450 := {} Local bBlock := Nil Local aFilCmp aEstorno := {} Local nSldComp := 0 Local nTaxaPA Private lMsHelpAuto := 0 Local nTaxaNF := 0 Local nHdl.F. Private lMsErroAuto := 0 Local nOperacao := 0 If __COMPAUT == Nil cQry := "SELECT E2_TIPO TIPO,.F. BeginSql Alias cTabSe1 SELECT R_E_C_N_O_ R_E_C_N_O FROM " + RetSqlName("SE2") + " " cQry += "WHERE E2_SALDO > 0 AND E2_TIPO IN (?) " cQry += "ORDER BY E2_TIPO" cQry := ChangeQuery(cQry) __COMPAUT := FWPreparedStatement():New(cQry) EndIf __COMPAUT:SetIn(1, aTipos) cQry := __COMPAUT:GetFixQuery() cTblTmp := MpSysOpenQuery(cQry) While (cTblTmp)->(!Eof()) If (cTblTmp)->TIPO $ MVPAGANT+"|"+MV_CPNEG Aadd(aPA_NDF, (cTblTmp)->R_E_C_N_O) Else Aadd(aNF, (cTblTmp)->R_E_C_N_O) EndIf (cTblTmp)->(DbSkip()) lRet := .T. EndDo (cTblTmp)->(DbCloseArea()) cTblTmp := "" If lRet Pergunte("AFI340", .F.) lContabiliza := MV_PAR11 == 1 lAglutina := MV_PAR08 == 1 lDigita := MV_PAR09 == 1 lRet := FinCmpAut(aNF, aPA_NDF, aContabil, bBlock, aEstorno, nSldComp, dDatabase, nTaxaPA ,nTaxaNF, nHdl, nOperacao) If lRet Alert("Compensação realizada com sucesso") Else Alert("Ocorreu um erro no processo de compensação") EndIf EndIf Return |
Informações | ||
---|---|---|
| ||
Para utilizar o processo de Compensação Automática Contas a Pagar é necessário chamar a função: FinCmpAut. |
03. OPERAÇÕES
- Compensar
Através desta operação é possível a compensação de títulos a pagar:
- Compensar títulos de um mesmo fornecedor/loja com adiantamentos deste mesmo fornecedor/loja
- Compensar títulos de um determinado fornecedor com adiantamentos deste mesmo fornecedor, não importando qual a loja do titulo a compensar
- Compensar título de determinado fornecedor com adiantamentos de diversos fornecedores, podendo ser determinada uma faixa de fornecedores ou todos. Com isso, o título pode ser compensado com qualquer título de adiantamento em aberto no cadastro de títulos, não importando qual o fornecedor deste título.
- Excluir
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
|
Informações | ||
---|---|---|
| ||
Importante:
|
03. OPERAÇÕES
- Compensar
Operação que permite realizar a compensação entre carteiras pagar/receber.
- Cancelar
Operação que permite realizar o cancelamento do movimento gerado pela compensação.Operação que permite realizar a exclusão do movimento gerado pela compensação
- Estorno
Operação que permite realizar o estorno do movimento gerado pela compensação, gerando assim sua contrapartida.
- Legenda
Apresenta quadro das legendas e seus significados referenciados a situação do titulo título a pagar.
- Pesquisa
Pesquisa o titulo título dentro do arquivo de contas a pagar, tendo como resultado o titulo título posicionado e destacado na browse.
...
Operação que permite visualizar o titulo título posicionado, podendo conferir seu saldo e valor.
...
Lista de parâmetros aplicados ao FINA340 FINA450 e seu processamento
Deck of Cards | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
05. CONTABILIDADE
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)
...
Card documentos | ||||
---|---|---|---|---|
|
...
title | Informações |
---|
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:
Variaveis de contabilização FINA340
05. PRINCIPAIS PROCESSOS
Deck of Cards | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
06. CONTABILIDADE
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) |
---|---|---|---|
535 | Cancelamento da Compensação de títulos a Pagar / a Receber | X | |
594 | Contas a Pagar/Receber - Compensação entre Carteiras | X |
07. TABELAS RELACIONADAS
- SE2 - Cadastro do contas a pagar
- SE1 - Cadastro do contas a receber
- SE5 - Movimentação Bancária
- SED - Cadastro de Naturezas
- SA1 - Cadastro de Clientes
- SA2 - Cadastro de Fornecedores
- FK2 - Baixas a Pagar
- FK1 - Baixas a receber
- FK6 - Valores acessórios
- FK7 - Tabela Auxiliar
- FKA - Rastreio de movimento
08. PONTOS DE ENTRADA
Ponto de entrada | Observação |
---|---|
F450BROW | Ponto de entrada que permite manipular o conteúdo dos campos, e quais campos irão compor o browser na rotina de compensação entre carteiras. Documentação: https |
06. TABELAS RELACIONADAS
- SE2 - Cadastro do contas a pagar
- SE5 - Cadastro de cheques
- SED - Cadastro de Naturezas.
- SA2 - Cadastro de Fornecedores.
- FK2 - Baixas a Pagar.
- FK3 - Impostos Calculados.
- FK4 - Impostos Retidos.
- FK5 - Movimentos Bancários.
- FK6 - Valores acessórios.
- FK7 - Tabela Auxiliar
- FKA - Rastreio de movimento.
07. PONTOS DE ENTRADA
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/j7GFDgp6Rc | ||||
lFA450BU | Ponto de Entrada chamado quando realizada a confirmação do estorno de compensaçãoO ponto de entrada lFA450BU permite o cliente fazer a inclusão de um botão. Documentação: | httpzoFdAg | F340GREST | Gravação de dados adicionais no estorno da compensação||
F450ValCon | O ponto de entrada F450ValCon, permite a validação dos dados referentes aos títulos selecionados e controla a confirmação do processo de compensação, na rotina de Compensação de Carteiras. Executado na função FA450CMP(). Documentação: | httpiqVc | |||
F450SE5 | PontoO ponto de entrada | permite gravação de informação complementares no momento do estorno da compensaçãoF450SE5 é executado após a compensação de todos os títulos selecionados na tela. Documentação: | httpW7KFDg | FA340QRY | Complemento de query para cancelamento da compensação|
F450OWN | Monta expressão de filtro do arquivo SE1 na IndRegua. Documentação: | httplgwGD | |||
F450FIL | Realiza customização do filtro da IndRegua Documentação: https | 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 compensadosrqNc | F340CMP | Tem como finalidade permitir ao usuario calcular o titulo de NDF ou PA e sera chamado na funcao Fa340Tit()|
F450OWN1 | Monta expressão de filtro do arquivo SE2 na IndRegua. Documentação: | http6aJc | |||
F450FIL1 | Realiza customização do filtro da IndRegua Documentação: https | FA340ORD | Ponto de Entrada permite a alteração do indice, mudando assim a ordem dos titulos exibidos da markbrowse para a compensação a pagarr6Nc | ||
F450ORDEM | |||||
F450GRAVA | Permite manipular os dados da tabela temporária responsável pela compensação. Documentação: https | F340ValOk | O ponto de entrada F340ValOk, permite o controle dos dados e da confirmação da tela de compensação de títulos a pagarfKVc | ||
F450Conf | O ponto de entrada F450CONF tem como finalidade validar a marcação do título para compensação | F340TOTCP | Possibilita manipular os valores totais de títulos a serem compensados. Documentação: httphttps://tdn.totvs.com/x/nYIbCQFaNc | ||
F340VLDF450valid | Ponto de Entrada que permite validar se um título será ou não compensadoentrada permite a validação de informações da tela de compensação. Documentação: httpJ6Vc | F340LEGE | |||
F450CAES | O ponto de entrada F450CAES é utilizado para validar ou executar algum procedimento após o usuário confirmar o Cancelamento/Estorno da compensação entre carteiras. Documentação: https | 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 Documentação: http56Rc | ||
SE5FI341F450SE1C | O ponto de entrada F450SE1C sera utilizado para gravações complementares no arquivo SE1; não necessita retorno e não passa nenhum parâmetro. Documentação: https 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.Documentação: http6KRc | ||||
F340GERNDFF450SE2C | Possibilidade de gravar campos adicionais na inclusão da NDF gerada pela compensação à pagarO ponto de entrada F450SE2C sera utilizado para gravacoes complementares no arquivo SE2; nao necessita retorno e nao passa nenhum parametro. Documentação: httphttps://tdn.totvs.com/x/kvdbDQ FA340NDFGrv | ||||
FA450BUT | O ponto de entrada FA450BUT será utilizado na inclusão de opções na barra de ferramentas. O retorno deverá ser o array dos botões | F340FLCP | Permite implementar uma expressão complementar no filtro de titulos. Documentação: httphttps://tdn.totvs.com/x/66JcvaNc | ||
F340FCPTOPFILEMOT | Esse ponto Ponto de entrada permite criar um novo filtro para a rotina de Compensação Contas a Pagar - FINA340. para leitura do arquivo de texto de motivos de baixa de contas a receber. Documentação: httphttps://tdn.totvs.com/x/r_xZE |
...
id | Veja mais |
---|---|
effectType | fade |
...
id | 1 |
---|---|
label | Veja mais |
effectType | fade |
...
HTML |
---|
<!-- 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> |
...