Árvore de páginas

Ponto-de-Entrada: MT461VCT - Alteração no vencimento e valor do título


Descrição:
O ponto de entrada MT461VCT permite alterar o valor e o vencimento do título gerado no momento de geração da nota fiscal.


Programa Fonte:
MATA461.PRX

Sintaxe:

MT461VCT( aVencto, aTitulo ) ---> aVencto


Parâmetros:


NomeTipoDescrição
aVenctoArray of RecordArray contendo data de vencimento e valor de cada parcela. Vide Observação
aTituloArray of RecordArray contendo valores dos títulos que serão gravados. Vide Observação


Retorno:
aVencto - Array - Array contendo os novos vencimentos, deverá enviar data de vencimento e valor de cada parcela.

Observações:

Estrutura do array aVencto:

[1] - Título
[1][1] - Data do Vencimento
[1][2] - Valor da Parcela

Estrutura do array aTitulo:

[1] - Valor do Título
[2] - Valor do IRF
[3] - Valor do INSS 
[4] - Valor do ISS
[5] - Valor do PIS
[6] - Valor do CSLL
[7] - Valor do COFINS
[8] - Valor do IPI
[9] - Valor do Solidário
[10] - Valor da Nota na Moeda
[11] - Valor da Nota em Real
[12] - Valor do Acréscimo
[13] - Valor das Despesas Acessórias na Moeda
[14] - Valor das Despesas Acessórias em Real
[15] - Diferença no Valor do Título na Moeda do Título 
[16] - Taxa da NDF
[17] - Moeda da NDF
[18] - Valor do FETHAB
[19] - Diferença no Rateio das Despesas Acessórias em Dólar
[20] - Valor do FABOV
[21] - Valor do FACS
[22] - Valor do TPDP
[23] - Valor do FUMIPEQ
[24] - Valor do IMA
[25] - Valor do ISS Bi Tributado
[26] - Valor do FAMAD



Importante

Caso a soma das parcelas seja diferente do total da nota fiscal, a rotina irá ajustar o valor na última parcela ou na única parcela gerada. 


Exemplo: 


User Function MT461VCT()

Local aVencto  := PARAMIXB[1]
Local aTitulos := PARAMIXB[2]

//Neste exemplo foi utilizado uma Condição de Pagamento a vista (parcela única),
//no valor total de R$ 51.200,00 e será alterada para 2 parcelas, onde a somatória
//do valor das parcelas, tem que ser o mesmo valor total da nota fiscal.

If Len(aVencto) == 1
    //Monta a primeira parcela a vista no valor de R$ 10.000,00
    aVencto[1][1] := dDataBase
    aVencto[1][2] := 10000
  
    //Monta a segunda parcela para 30 dias no valor de R$ 41.200,00
    //totalizando os R$ 51.200,00 do valor total da nota fiscal.
    aAdd(aVencto,{ dDataBase + 30,;
                   41200 })
EndIf

Return aVencto