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 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. EXECUÇÃO
- Manual
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.
- Automática
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)
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#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 |
Informações | ||
---|---|---|
| ||
Para que a compensação funcione entre filiais se faz necessário o uso do parâmetro AUTAFILCOMP, caso contrário não há a necessidade de informá-lo. Para mais informações acesse a documentação da rotina automática. |
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.
- Estorno
Operação que permite realizar o estorno do movimento gerado pela compensação.
- Legenda
Apresenta quadro das legendas e seus significados referenciados a situação do título a pagar.
- Pesquisa
Pesquisa o título dentro do arquivo de contas a pagar, tendo como resultado o título posicionado e destacado na browse.
- Visualizar
Operação que permite visualizar o título posicionado, podendo conferir seu saldo e valor.
04. PARÂMETROS APLICADOS
Lista de parâmetros aplicados ao FINA450 e seu processamento
Deck of Cards | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
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://tdn.totvs.com/x/p6Rc |
lFA450BU | O ponto de entrada lFA450BU permite o cliente fazer a inclusão de um botão. Documentação: https://tdn.totvs.com/x/E6Vc |
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: https://tdn.totvs.com/x/haVc |
F450SE5 | O ponto de entrada F450SE5 é executado após a compensação de todos os títulos selecionados na tela. Documentação: https://tdn.totvs.com/x/GqNc |
F450OWN | Monta expressão de filtro do arquivo SE1 na IndRegua. Documentação: https://tdn.totvs.com/x/FqNc |
F450FIL | Realiza customização do filtro da IndRegua Documentação: https://tdn.totvs.com/x/nwtRCg |
F450OWN1 | Monta expressão de filtro do arquivo SE2 na IndRegua. Documentação: https://tdn.totvs.com/x/9GASCw |
F450FIL1 | Realiza customização do filtro da IndRegua Documentação: https://tdn.totvs.com/x/ogtRCg |
F450ORDEM | |
F450GRAVA | Permite manipular os dados da tabela temporária responsável pela compensação. Documentação: https://tdn.totvs.com/x/k422C |
F450Conf | O ponto de entrada F450CONF tem como finalidade validar a marcação do título para compensação. Documentação: https://tdn.totvs.com/x/FaNc |
F450valid | Ponto de entrada permite a validação de informações da tela de compensação. Documentação: https://tdn.totvs.com/x/iaVc |
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://tdn.totvs.com/x/FKNc |
F450SE1C | 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://tdn.totvs.com/x/GKNc |
F450SE2C | O ponto de entrada F450SE2C sera utilizado para gravacoes complementares no arquivo SE2; nao necessita retorno e nao passa nenhum parametro. Documentação: https://tdn.totvs.com/x/GaNc |
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. Documentação: https://tdn.totvs.com/x/vaNc |
FILEMOT | Ponto de entrada para leitura do arquivo de texto de motivos de baixa de contas a receber. Documentação: https://tdn.totvs.com/x/IF1NDQ |
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> |