Histórico da Página
...
Dica | ||
---|---|---|
| ||
O parâmetro MV_IMPCOM determina se a compensação automática de títulos a pagar será realizada no modelo legado (fonte apartado) ou com as regras do FINA340 (onde existe todo o processo de retenção dos impostos). |
Informações | ||
---|---|---|
| ||
Para fazer compensações entre títulos NF x NDF e a nota fiscal possuir acréscimo (E2_ACRESC) e/ou decréscimo (E2_DECRESC), configure o parâmetro MV_IMPCOM como T (Verdadeiro). Dessa forma, será atualizado o saldo dos títulos NF e NDF considerando o acréscimo/decréscimo. Já para as compensações entre títulos NF x PA com acréscimo (E2_ACRESC) e/ou decréscimo (E2_DECRESC), não há a necessidade de realizar configurações adicionais. |
Parâmetros da função:
Posição | Parâmetro | Tipo | Descrição |
---|---|---|---|
1 | aNF | array | Vetor com os RECNOs das notas a serem compensadas |
2 | aPA_NDF | array | Vetor com os RECNOs dos PAs/NDFs a serem compensados |
3 | aContabil | array | Vetor de 3 posições: [1] - Contabiliza Online, [2] - Aglutina os movimentos contábeis, [3] - Mostra lançamento contábil |
4 | bBlock | bBlock | Bloco de código que será executado após cada compensação (Geração dos movimentos na tabela SE5). |
5 | aEstorno | array | Vetor de 1 elemento. Esse elemento será um outro vetor, contendo os RECNOs (SE2) a serem cancelados. |
6 | nSldComp | numérico | Numérico com valor determinado a ser compensado. Caso não seja informado será considerado o saldo de cada título. |
7 | dBaixa | date | Data de realização da compensação |
8 | nTaxaPA | numérico | Taxa de movimento a ser considerada no PA para moedas estrangeiras |
9 | nTaxaNF | numérico | Taxa de movimento a ser considerada na NF em moedas estrangeiras |
10 | nHdl | numérico | Cabeçalho do arquivo contábil (Default = 0) |
11 | nOperacao | numérico | Na operação de estorno/exclusão determina a ação que será realizada nos movimentos da compensação. 2 = Gera movimento de estorno, 3=Exclui os movimentos |
12 | aRecSe5 | array | Vetor que contém os RECNOsda SE5 para posterior contabilização |
13 | aNDFDados | array | Vetor com as informações das NDFs |
14 | lHelp | lógico | Informe .T. se deseja exibir o Help dos pagamentos antecipados que não possuem movimentação bancária |
...
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
#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
Local aRecSE5 := {}
Local aNDFDados := {}
Local lHelp := .T.
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 += "AND AND D_E_L_E_T_ = ' ' "
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, aRecSE5, aNDFDados, lHelp)
If lRet
Alert("Compensação realizada com sucesso")
Else
Alert("Ocorreu um erro no processo de compensação")
EndIf
Else
Alert("Não existem dados a serem compensados")
EndIf
Return Nil |
...
Visão Geral
Import HTML Content
Conteúdo das Ferramentas