Árvore de páginas


Nota

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.

Adiantamento vinculado ao pedido de compra

É possível vincular adiantamentos a pedidos de compra para que o sistema faça a compensação automaticamente ao classificar o documento de entrada. Veja mais em Adiantamento no Pedido de Compras.

02. EXECUÇÃO

  • Manual

Procedimento efetuado de forma manual via rotina Compensação contas a pagar (FINA340), 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 (FINA340), 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)

Exemplo de rotina automática
#INCLUDE "Protheus.ch"
#INCLUDE "RWMAKE.CH"
#INCLUDE "TBICONN.CH"

Static __COMPAUT := Nil

User Function CMPAUTOMA()
	Local lRet := .F.
	Local cQry := ""
	Local aTipos := {"NF ", "PA ", "NDF"}
	Local cTblTmp := ""
	Local aNF := {}
	Local aPA_NDF := {}
	Local aContabil := {}
	Local bBlock := Nil
	Local aEstorno := {}
	Local nSldComp := 0
	Local nTaxaPA := 0
	Local nTaxaNF := 0
	Local nHdl := 0
	Local nOperacao := 0

	If __COMPAUT == Nil
		cQry := "SELECT E2_TIPO TIPO, 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

Observação

Para utilizar o processo de Compensação Automática Contas a Pagar é necessário chamar a função: FinCmpAut.
A compensação pode ser realizada de N para N: N adiantamentos/devoluções (PA ou NDF) para N títulos (NF, DP, etc.) ou vice-versa.

Compensação contas a pagar automática 


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;


Importante: Data da compensação

A data da compensação deverá ser maior que a data de emissão dos títulos envolvidos, por exemplo:

  • PA com emissão no dia 29/03
  • NF com emissão no dia 02/04

A compensação destes títulos só poderá ser efetuada após o dia 02/04 tendo em vista que no dia 29/03 a NF ainda não existia, sendo assim o conceito de baixas será corretamente aplicado nas operações de compensação. (E2_BAIXA maior que E2_EMISSAO)

  • Não é possível, pelo Financeiro, realizar a compensação de Pagamentos Antecipados amarrados a Pedidos de compra.

Importante: Filtro de filial

Para compensação entre adiantamentos e títulos de diferentes filiais, deve ser utilizado o botão Filiais para definir quais filiais serão consideradas para a seleção dos títulos a compensar.
Caso não seja utilizado o botão Filiais, apenas títulos da filial corrente serão considerados para a compensação.

Observação

Caso as tabelas do módulo financeiro sejam totalmente compartilhadas e não for utilizado o botão Filiais, serão considerados para o processo os registros de todas as filiais. Se for utilizado o botão Filiais, os registros serão filtrados por filial de origem (E2_FILORIG).

Observação

Caso as tabelas do módulo financeiro sejam compartilhadas a nível de filial, e não for utilizado o botão Filiais, serão considerados para o processo os registros cuja filial de origem (E2_FILORIG) seja a filial corrente. Se for utilizado o botão Filiais, os registros serão filtrados por filial de origem (E2_FILORIG).

Filial do processo de compensação

Quando o processo de compensação for feito com títulos de filiais diferentes, a rotina irá considerar a filial do título de origem (de partida) da compensação para gravar as movimentações (tabela SE5) e contabilização (tabela CT2).

Obs: Comportamento vigente na rotina FINA340 com data igual ou superior a , para deixar a rotina com o mesmo comportamento da rotina FINA330 (Compensação a Receber). Até então a rotina FINA340 exibia uma tela para a selecionar a filial do processo após clicar no botão "Compensar".



  • Excluir

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 a pagar.


  • Pesquisa

Pesquisa o titulo dentro do arquivo de contas a pagar, tendo como resultado o titulo posicionado e destacado na browse.


  • Visualizar

Operação que permite visualizar o titulo posicionado, podendo conferir seu saldo e valor.

04. PARÂMETROS APLICADOS

Lista de parâmetros aplicados ao FINA340 e seu processamento

    Pergunta Descrição
    Considera loja ? Este campo indica se a loja do fornecedor devera ser considerada na filtragem dos registros a serem compensados. Desta forma se escolhida a opção "Não", todos os títulos "PA" de todas as lojas serão trazidos para a confirmação da compensação. Se escolhida a opção "Sim", somente as "PA's" da loja do titulo principal serão consideradas. 
    Considera Fornecedor ? Informe a opção "Original" para que o fornecedor a ser considerado na compensação seja o mesmo do titulo, ou "Outros" sendo possível compensar títulos entre diferentes fornecedores 
    Do fornecedor ? Informe o código inicial do intervalo de fornecedores a serem considerados na compensação
    Ate o Fornecedor ? Informe o código final do intervalo de fornecedores a serem considerados na compensação
    Cons. filiais abaixo ?

    Informe "Sim" para que sejam consideradas as filiais do seu sistema, ou "Não" considerando apenas a filial logada.
    Esta pergunta não tem mais efeito no processo de compensação. Utilize o botão Filiais para a seleção das filiais a serem consideradas para a seleção dos títulos que comporão a compensação.

    Da filial ?

    Informe o código inicial do intervalo de filiais a serem considerados na compensação.
    Esta pergunta não tem mais efeito no processo de compensação. Utilize o botão Filiais para a seleção das filiais a serem consideradas para a seleção dos títulos que comporão a compensação.

    Ate a filial ?

    Informe o código final do intervalo de filiais a serem considerados na compensação.
    Esta pergunta não tem mais efeito no processo de compensação. Utilize o botão Filiais para a seleção das filiais a serem consideradas para a seleção dos títulos que comporão a compensação.

    Aglutina Lancto ? Informe a opção "SIM" para que os lançamentos contábeis gerados através da compensação sejam aglutinados em um único lançamento 
    Mostra lançamentos ? Informe a opção "SIM" para que os lançamentos contábeis gerados através da compensação sejam exibidos em tela, ou "NAO", caso contrario 
    Compensa títulos ?  Informe a opção "Normais" para que sejam considerados na compensação os títulos do tipo NF,PA,NDF, ou "Imposto" para que sejam considerados os títulos de impostos gerados TX e TXA
    Contabiliza online ? Informe se "SIM" para que a contabilização dos lançamentos referentes a compensação contas a pagar sejam realizados online, ou "NAO", caso contrario. 
    Compensa transferidos ? Informe se "Sim" caso permita a compensação de títulos transferidos ao banco (Borderô), ou "Não" caso contrario
    Compensa saldo do imposto ?

    Define se no momento da compensação entre impostos, não sera zerado o saldo do TX, deixando em aberto para envio a DARF e pagamento do imposto, a funcionalidade desse pergunte só sera aplicada quando

    o pergunte Compensa títulos ? = "Impostos"

    Considera bx dos imp. do PA ? Define se no momento da compensação entre títulos normais NF x PA, se os impostos do tipo TXA do PA possuírem baixa, esses valores serão usados para liquidar o saldo do TX da NF, a funcionalidade desse pergunte so sera aplicada quando

    o pergunte Compensa títulos ? = "Normais"

     
    Parâmetro Descrição  Default
    MV_CTBFLAG Indica se a marcação dos flags de contabilização das rotinas offline será feita na transação do  lançamento contábil - SIGACTB.   .F.
    MV_BX10925 Define momento do tratamento da retencão dos impostos Pis Cofins e Csll  1 = Na Baixa ou 2 = Na Emissão   1
    MV_PABRUTO Define se na geração do PA com impostos 1 = Gera um PA com o valor bruto. 2 = Gera um PA  com o valor líquido (padrão do sistema).   2
    MV_LIBCHEQ Opção para liberação de saldo bancário quando da geração de cheques antes da baixa.   S
    MV_PAPRIME Define se na geração do PA com impostos, será provisionado os impostos de inss e iss  na para PA Liquido 1=Sim 2=Não (Default)   2
    MV_CTLIPAG Controla as baixas a pagar através da data de liberação preenchida,caso .T. o sistema verifica se o cpo E2_DATALIB preenchido,caso contrario não controla  .F.
    MV_VLMINPG Valor mínimo para executar a baixa do título, mesmo que o campo E2_DATALIB não esteja preenchido e o parâmetro MV_CTLIPAG seja .T.   0
    MV_IMPADT Define utilização da geração de IRRF em adiantamento a Pagar  
    MV_SOLNCP Define se deve ser usada a rotina de solicitação de Nota de credito   .F.
    MV_MUNIC Utilizado para identificar o código dado a secretaria das finanças do município para recolher o  ISS.   MUNIC
    MV_MCUSTO Moeda utilizada para verificação do limite de credito que foi informado no cadastro de clientes.   2
    MV_COMSEIC Habilita integração de pedido de compra de serviços para o Easy Siscoserv.   .F.
    MV_ESS0012 Habilita integração do Documento de Entrada do SIGACOM para o SIGAESS.   .F.
    MV_ESS0013 Habilita integração dos títulos gerados no SIGAFIN pelo SIGACOM para o SIGAESS.   .F.
    MV_ESS0022 Habilita integração SIGAEIC x SIGAESS .F.
    MV_JURXFIN Habilita a integração entre os módulos SIGAFIN - Financeiro e SIGAPFS - Jurídico  Padrão desabilitado.  
    MV_PCOINTE Indica se a integração dos processos do Planejamento e Controle Orçamentário com os processos de  Lançamentos / Bloqueios esta ativa (1=Sim/ 2=Nao). 2
    MV_BXDTFIN Não permite data de baixa menor que o a data contida no parâmetro MV_DATAFIM (1=Permite, 2=Não Permite)   2
    MV_UNIAO Utilizado para identificar o código dado a secretaria da Receita Federal para pagamento do Imposto de Renda.   UNIAO
    MV_ESTADO Sigla do estado da empresa usuária do Sistema, para efeito de calculo de ICMS (7, 12 ou 18%).   SP
    MV_PISNAT Natureza para títulos referentes ao PIS PIS
    MV_COFINS Natureza para títulos referentes ao COFINS COFINS
    MV_CSLL Natureza para títulos referentes ao CSLL CSLL
    MV_IRF Natureza para títulos referentes ao IRF IRF
    MV_ISS Natureza para títulos referentes ao ISS ISS
    MV_BP10925 Define se deve considerar no valor de pagamento, o valor bruto da baixa parcial ou o valor liquido considerando os impostos.(1=Vl Bruto/2=Vl Liquido) 1
    MV_COMPCP Indica se na compensação de uma NF com um PA os impostos serão proporcionalizados.   .F.
    MV_MRETISS Modo de retenção do ISS nas aquisições de serviços 1 = na emissão do título principal;  2 = na baixa do título principal   1
    MV_CPIMPAT Indica se haverá compensação automática de impostos a pagar. 1 - Automática; 2 - Manual   2
    MV_AG10925 Indica se os impostos do PCC serão aglutinados em um titulo apenas quando ocorrerem os três impostos no mesmo titulo.   2
    MV_FINVDOC Ativa o controle de documentos obrigatórios nas rotinas de liberação para baixa / movimentação dos títulos a pagar? ("1" = Sim / "2" = Não)   2
    MV_CMTXCON Indica que será gerado correção monetária para títulos com taxa contratada na compensação CP  T = Gera CM / F = Não gera CM   .F.
    MV_CALCCM Indica se o calculo de correção monetária sera ou não efetuado. Validos: "S" - calcula ou "N" - não calcula.   S
    MV_TXPRCON Define se a taxa informada na compensacao sera utilizada em todo o processo. T = Tx no Processo, F = Tx Individual .F.

    Opções para configuração dos parâmetros MV_PABRUTO, MV_BP10925, MV_PAPRIME 

    Quando o parâmetro MV_PABRUTO, estiver igual 2 (Líquido), ao gerar títulos do tipo PA (pagamento antecipado), é mantida a geração com o valor líquido, em que são descontados os valores de impostos que podem ser retidos na inclusão.

    Ao realizar a compensação de um título, por exemplo, do tipo NF com uma PA, sendo que ambas retêm impostos na baixa, é aconselhável os parâmetros abaixo sejam configurados da seguinte maneira, para que haja coerência de valores:

    • MV_COMPCP = .T. - Indica se na compensação de uma NF com um PA os impostos serão proporcionalizados.
    • MV_BP10925 = 2 - Considera valor Líquido na baixa Parcial descontados os impostos.
    • MV_PAPRIME = 1 - Considera provisionamento de impostos para PA Líquido. 

    Quando o parâmetro MV_PABRUTO estiver igual a 1 (Bruto)  ao gerar títulos do tipo PA, o mesmo é gerado com o valor bruto, não descontando os valores de impostos que podem ser retidos na inclusão. Então a compensação de uma NF com um PA deve ser pelo valor bruto , configurando os parâmetros conforme abaixo:  

    • MV_PABRUTO = 1 - Bruto e MV_BX10925 = 1 Imposto na baixa ou MV_BX10925=2 Imposto na emissão
    • MV_BP10925 = 1  - Considera valor Bruto na baixa Parcial sem descontar os impostos.
    • MV_PAPRIME = 2 - Não considera provisionamento de impostos para PA Líquido.


    Importante

    Se o sistema não estiver configurado com uma dessas duas opções, pode acontecer de, ao efetuar o estorno, o título tipo PA ficar com o status parcialmente compensado.

    Observações

    O parâmetro MV_COMPCP não influencia caso o parâmetro MV_PABRUTO esteja com o valor em 1Independente dos títulos terem impostos, ou não, é necessário a parametrização.

    Naturezas

    A compensação entre NF x PA, partindo tanto da NF como do PA, não é permitida caso o parâmetro MV_PABRUTO esteja com o valor 2 (Líquido) e as naturezas estiverem diferentes.

    Entretanto, recomendamos utilizar a mesma natureza financeira para os títulos de NF e de PA para garantir que não ocorra divergência nos valores dos impostos gerados.

    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)

    589Cancelamento de compensação de títulos contas a pagarXX
    597Compensação contas a pagar XX


    IMPORTANTE!

    A contabilização da compensação sera sempre feita com base nos dados do Título Compensado podendo ser qualquer tipo de obrigação: NF, TX, DP e etc. (Cuja movimentação (SE5) tenha esta classificação: E5_TIPODOC = 'CP' e E5_MOTBX = 'CMP')

    Variáveis de contabilização

    A seguir a lista de variáveis que podem ser utilizadas na configuração do Lançamento Padrão 597 (Compensação Contas a pagar) para contabilização online da Compensação a pagar (FINA340):

    VALOR - Armazena o valor compensado
    VALOR2 - Valor de Acréscimo
    VALOR3 - Valor de Decréscimo
    VALOR4 - Variação da correção monetária
    VLRINSTR - Armazena o valor compensado
    nSldReal - Armazena o valor compensado na moeda correspondente do título
    ABATIMENTO - Valores de abatimentos
    REGVALOR - Recno do registro atual
    STRLCTPAD - Chave do título principal+número do documento

    Essas variáveis são alimentadas com os dados do registro posicionado de onde partiu a compensação. Enquanto que para os registros selecionados para compensar, é feita a contabilização pela SE5. 

    Na contabilização on-line, não é possível alterar a filial de contabilização, sendo contabilizado na filial do processo de compensação (filial do título de partida da compensação).


    Exemplo:

    Selecionar a NF1 e clicado em Compensar.

    Na tela de seleção dos títulos a compensar, selecionar a PA1 e PA2.

    Ao contabilizar on-line, as informações da NF1 estarão nas variáveis de contabilização. Já as informações da compensação de cada PA, terão seus respectivos registros da SE5 posicionados.


    Variáveis Estorno:

    VALOR - Armazena o valor compensado
    VLRINSTR - Armazena o valor compensado

    Ao forçarmos o posicionamento dos títulos a serem compensados, a contabilização trará os dois títulos (ex: NF x PA), contabilizando o valor dos dois títulos, podendo gerar duplicidade na contabilização.

    As variáveis disponíveis para a contabilização off-line (CTBAFIN):

    VALOR - Armazena o valor compensado
    VALOR2 - Valor de Acréscimo
    VALOR3 - Valor de Decréscimo
    REGVALOR - RECNO do registro atual
    STRLCTPAD - Chave do título principal+número do documento

    Obs.: Estas variaveis estão disponiveis tanto para a compensação quanto para o estorno.

    Essas variáveis são alimentadas com os dados do registro posicionado de onde partiu a compensação. Enquanto que para os registros selecionados para compensar, é feita a contabilização pela SE5.

    Exemplo: LP597

    Preencher no campo CT5_HIST: U_HIST597()

    Criar a seguinte função:


    User function HIST597()
        Local aSaveSE5 := SE5->(GetArea())
        Local aSaveSE2 := SE2->(GetArea())
        Local xRet := Nil
    
        If REGVALOR <> 0
            SE2->(dbGoto(REGVALOR))
            xRet:= "TESTE TIPO: "+ SE2->E2_TIPO + " RECNO: "+ ALLTRIM(STR(SE2->(RECNO())))
        Else
            xRet:= "TESTE TIPO: "+ SE5->E5_TIPO + " TIPODOC: "+SE5->E5_TIPODOC + " RECNO: "+ ALLTRIM(STR(SE5->(RECNO())))
        Endif
    
        RestArea(aSaveSE2)
        RestArea(aSaveSE5)
    Return(xRet)

    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.


    Veja também:

    Contabilização de Compensações CR/CP

    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 entradaObservaçã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.
    Documentação: http://tdn.totvs.com/x/gKRc
    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, 
    com a 8º ocorrência desta, contendo um valor logico que indica se titulo marcado ou não.
    Documentação:http://tdn.totvs.com/x/L6Rc
    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
    Documentação: http://tdn.totvs.com/x/rqNc
    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
    Documentação: http://tdn.totvs.com/x/r6Nc
    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
    Documentação: http://tdn.totvs.com/x/fKVc
    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.
    Documentação: http://tdn.totvs.com/x/J6Vc
    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
    Documentação: http://tdn.totvs.com/x/56Rc
    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.
    Documentação: http://tdn.totvs.com/x/6KRc
    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


    08. DEMAIS REGRAS DE COMPENSAÇÃO


      Regras para geração de correção monetária no processo de compensação do contas a pagar:


      • Compensação de títulos com taxas contratadas iguais - Será gerado o valor de correção monetária apenas se a taxa do movimento for alterada na tela de compensação. Nesse caso, a correção monetária estará vinculada ao título posicionado no início da compensação (e não aos títulos selecionados posteriormente) e o valor será com base na diferença entre o valor com a taxa contratada e o valor considerando a nova taxa informada (não há uso da taxa diária);
      • Compensação de títulos sem taxas contratadas - O valor de correção monetária será gerado para cada título envolvido no processo de compensação, caso haja uma diferença entre o valor da taxa no dia da inclusão do título e o valor da taxa no dia da baixa da compensação. Obs.: Se houver uma alteração no valor da taxa no momento da compensação, esse valor será considerado apenas para o título posicionado e sua correção monetária será referente a diferença entre o valor considerando a nova taxa (informada em tela) e o valor considerando a taxa no dia da inclusão. Para todos os demais títulos envolvidos nesse processo de compensação, será considerada a taxa do dia da compensação e a taxa do dia da inclusão.    
      • Compensação de títulos com taxas contratadas diferentes - Por padrão, o sistema não permite realizar esse tipo de compensação. Porém, é possível habilitá-la através do parâmetro MV_CMTXCON (https://tdn.totvs.com/x/7ZVWFw). Nesse caso, a correção monetária será gerada sempre vinculada a nota. O valor será referente a diferença do valor da nota e o valor do pagamento compensado.
      • Taxa informada na compensação - Por padrão o sistema assume a taxa informada na compensação apenas para o titulo de partida (posicionado). Porém é possível definir se a taxa informada será considerada em todo o processo através do parâmetro MV_TXPRCON(parâmetro MV_TXPRCON). Nesse caso, a taxa informada será considerada não só para o título de partida mas também para os selecionados, de acordo com a moeda. Caso seja usada a taxa por processo a correção monetária se dará pela variação da taxa do título (Taxa do dia ou Taxa contratada) com a taxa informada. Caso não seja informado taxa o sistema segue o comportamento padrão.


      Importante

      Para geração de correção monetária, é necessário que o parâmetro MV_CALCCM esteja habilitado.

        Atenção

        O processo descrito refere-se apenas ao cenário liquido:

        MV_PABRUTO = 2 (Líquido)
        MV_COMPCP = .T.
        MV_BP10925 = 2
        MV_PAPRIME = 1


        Para o cenário bruto as compensações ocorrem sem a geração de DIC acumulado.


        DIC acumulado

        Ao realizar uma compensação de NF que possui retenção na baixa com múltiplos pagamentos antecipados que não possua configuração para retenção, será gerado um único título do tipo DIC para o último PA compensado, esse DIC terá o valor acumulado da diferença de imposto calculados dos demais PAs.


        Exemplo: Compensação entre um 3 PAs sem retenção X 1 NF com retenção

        NF de R$ 1000,00

        Com PCC na baixa (4,65%) = R$ 46,50

        Valor líquido total = R$ 1000,00 (Valor da NF) - R$ 46,50 (Impostos na baixa) = R$ 953,50

        Saldo NF = R$ 1000,00 


        PA 1 de R$ 300,00

        Sem impostos

        Valor líquido = R$ 300,00

        Saldo PA= R$ 300,00


        PA 2 de R$ 300,00

        Sem impostos

        Valor líquido = R$ 300,00

        Saldo PA= R$ 300,00


        PA 3 de R$ 300,00

        Sem impostos

        Valor líquido = R$ 300,00

        Saldo PA= R$ 300,00


        O cálculo da compensação será feito internamente pela rotina em três partes, como se estivesse compensando cada PA separadamente, gerando o DIC somente na última compensação.

         

        1ª compensação - Compensar NF x PA:

        Saldo NF = R$ 1000,00(Saldo NF) - R$ 13,95 (PCC gerado na compensação) - R$ 286,05 (valor compensado) = 700,00

        Movimentação: R$ 300,00

        Gerou os impostos configurados na baixa, no exemplo, o PCC no valor de R$ 13,95 com base de cálculo de R$ 300,00

        Saldo PA = 300,00(Saldo PA) - 300,00 (valor compensado) = 0,00

        Valor referente a Diferença de imposto calculado: 13,95

        *Importante

        Como mencionado anteriormente o DIC não será gerado neste momento.


        2ª compensação - Compensar NF x PA:

        Saldo NF = R$ 700,00(Saldo NF) - R$ 13,95 (PCC gerado na compensação) - R$ 286,05 (valor compensado) = 400,00

        Movimentação: R$ 300,00

        Gerou os impostos configurados na baixa, no exemplo, o PCC no valor de R$ 13,95 com base de cálculo de R$ 300,00

        Saldo PA = 300,00(Saldo PA) - 300,00 (valor compensado) = 0,00

        Valor referente a diferença de imposto calculado: 13,95

        *Importante

        Como mencionado anteriormente o DIC não será gerado neste momento.


        3ª compensação - Compensar NF x PA:

        Saldo NF = R$ 400,00(Saldo NF) - R$ 13,95 (PCC gerado na compensação) - R$ 286,05 (valor compensado) = 100,00

        Movimentação: R$ 300,00

        Gerou os impostos configurados na baixa, no exemplo, o PCC no valor de R$ 13,95 com base de cálculo de R$ 300,00

        Saldo PA = 300,00(Saldo PA) - 300,00 (valor compensado) = 0,00

        Valor referente a Diferença de imposto calculado: 13,95


        Importante

        O DIC será gerado somente neste momento. No valor acumulado de 41,85.


        Valor do DIC gerado = 13,95 (DIC calculado na 1º compensação) + 13,95 (DIC calculado na 2º compensação) + 13,95 (DIC calculado na 3º compensação) = 41,85

        Atenção

        O processo descrito refere-se apenas ao cenário liquido:

        MV_PABRUTO = 2 (Líquido)
        MV_COMPCP = .T.
        MV_BP10925 = 2
        MV_PAPRIME = 1


        Compensação total sem geração de DIC

        Ao realizar uma compensação de uma NF que possua retenção com PAs sem retenção onde o valor liquido da NF seja o total dos PAs a rotina não gerará DIC.


        Exemplo: Compensação total entre um 2 PAs sem imposto X NF com impostos

        NF de R$ 1000,00

        Com PCC na Baixa (4,65%) = R$ 46,50

        Valor líquido total = R$ 1000,00 (Valor da NF) - R$ 46,50 (Impostos na baixa) = R$ 953,50

        Saldo NF = R$ 1000,00 


        PA de R$ 500,00

        Sem impostos

        Valor líquido = R$ 500,00

        Saldo PA= R$ 500,00


        PA de R$ 453,50

        Sem impostos

        Valor líquido = R$ 453,50

        Saldo PA= R$ 453,50


        Compensar 1 NF x 2 PAs:

        Repare que o valor liquido da nota é igual é soma dos PAs sendo assim não foi pago nenhum valor a mais para o fornecedor:

        Será gerado as retenções configuradas para serem calculadas na baixa, no exemplo, PCC no valor de R$ 23,25 referente a primeira compensação.

        Será gerado as retenções configuradas para serem calculadas na baixa, no exemplo, PCC no valor de R$ 23,25 referente a segunda compensação.

        Saldo NF = R$ 1000,00 (Saldo NF) - R$ 23,25 (PCC gerado na 1º compensação) - R$ 23,25 (PCC gerado na 2º compensação) - R$ 500,00 (valor compensado do 1º PA) - R$ 453,50 (valor compensado do 2º PA) = 0,00

        Saldo 1º PA = 500,00 (Saldo PA) - 500,00 (valor compensado) = 0,00

        Saldo 2º PA = 453,50 (Saldo PA) - 453,00 (valor compensado) = 0,00

        Não temos geração de DIC

        Exemplo: Estorno da 2º compensação (2º PA).

        Ao realizar o estono da 2º compensação (2º PA):

        Serão excluídas as retenções geradas pela compensação, no exemplo, o PCC no valor de R$ 23,25

        Saldo NF = 500,00

        Saldo PA = 453,50

        O sistema avalia as compensações anteriores a última estornada e identifica se será necessário a geração de um novo DIC.

        Valor do DIC gerado = 23,25 (DIC calculado na 1º compensação) = 23,25

        O título DIC gerado será referente a última compensação, no exemplo acima seria o 1º PA no valor de 500.


        Atenção

        Para compensações realizadas de forma individual (1 PA x 1 NF) o sistema gera o DIC independente, ou seja, um DIC para cada compensação. Não haverá geração de DIC acumulado.

        Contabilização do DIC

        A inclusão do título do tipo DIC pode ser contabilizado através do LP 510 (Contas a Pagar - Inclusão de títulos).

        A exclusão do título do tipo DIC pode ser contabilizada através do LP 515 (Contas a Pagar - Exclusão de títulos).

        Obs. Para que a sejam contabilizados os LPs 510 e 515 a pergunta: Contabiliza Online da rotina Contas a Pagar (FINA050) deve estar como Sim.

        Atenção

        O processo descrito refere-se apenas ao cenário liquido:

        MV_PABRUTO = 2 (Líquido)
        MV_COMPCP = .T.
        MV_BP10925 = 2
        MV_PAPRIME = 1


        Processo de geração do DIC no momento do estorno

        Para compensações realizadas com mais de um título somente será permitido o estorno/exclusão por ordem de compensação. Da última compensação para a primeira, qualquer ordem diferente desta a rotina apresentará um alerta bloqueando o processo.

        Ao realizar o estorno/exclusão da última compensação a rotina excluirá também o título do tipo DIC. Após esse processo caso seja necessário será gerado um novo DIC referente as compensações anteriores com base no ultimo PA compensado.


        Exemplo: Estorno da 3º compensação

        Saldo NF = R$100,00,00(Saldo NF) + R$ 13,95 (PCC gerado pela compensação) + R$ 286,05 (valor estornado) = 400,00

        Movimentação: R$ 300,00

        Será excluído as retenções geradas pela compensação, no exemplo, o PCC no valor de R$ 13,95 com base de cálculo de R$ 300,00.

        Exclusão do DIC gerado pela compensação no valor de R$ 41,85 (DIC acumulado).

        Saldo PA = 0,00(Saldo PA) + 300,00 (valor estornado) = 300,00

        O sistema avalia as compensações anteriores à última estornada e identifica se será necessário a geração de um novo DIC.

        Valor do DIC gerado = 13,95 (DIC calculado na 1º compensação) + 13,95 (DIC calculado na 2º compensação) = 27,90

        Neste momento será gerado um novo título do tipo DIC referente a primeira e segunda compensação.


        Exemplo: Estorno da 2º compensação

        Saldo NF = R$400,00,00(Saldo NF) + R$ 13,95 (PCC gerado pela compensação) + R$ 286,05 (valor estornado) = 700,00

        Movimentação: R$ 300,00

        Será excluído as retenções geradas pela compensação, no exemplo, PCC no valor de R$ 13,95 com base de cálculo de R$ 300,00.

        Exclusão do DIC gerado pelo estorno no valor de R$ 27,90 (DIC acumulado)

        Saldo PA = 0,00(Saldo PA) + 300,00 (valor estornado) = 300,00

        O sistema avaliará as compensações anteriores a última estornada e identifica se será necessário a geração de um novo DIC.

        Valor do DIC gerado = 13,95 (DIC calculado na 1º compensação) = 13,95

        Neste momento será gerado um novo título DIC referente a última compensação, no exemplo acima seria o 1º PA no valor de 300.


        09. MAIS INFORMAÇÕES


        NOTITSEL no estorno de compensação

        Ao apresentar o assistente NOTITSEL no estorno de compensação, valide o campo E5_FILORIG nos registros da compensação e também verifique os campos da chave (Prefixo+número+parcela+tipo+fornecedor+loja) das tabelas SE2 e SE5. Os campos devem possuir tamanhos correspondentes nas duas tabelas.