Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Este ponto de entrada pertence à rotina de Pedidos de Venda - MATA410A(). Está localizado dentro da função A410TIPO9() e é usado para validar a Condição de Pagamento Tipo 9, permitindo a manipulação das parcelas.

Características da Condição de Pagamento Tipo 9


Aviso
titleImportante
  • Certifique-se de que a soma das parcelas geradas pelo ponto de entrada esteja igual ao valor total do pedido de venda.
  • A quantidade de parcelas geradas pelo ponto de entrada não pode ser superior ao conteúdo do parâmetro MV_NUMPARC.
  • A quantidade total de parcelas que podem ser geradas pelo ponto de entrada depende da quantidade de campos C5_PARCx e C5_DATAx existentes na tabela SC5.

...

Retorno

Tipo

Descrição

Obrigatório

nParcelasNúmerica

Variável númerica indicando a quantidade de parcelas que será gerada.

Sim

06. EXEMPLO

Neste exemplo usamos um cenário de pedido de venda com um item, onde está sendo verificado se o risco do cliente está diferente de "A" para atribuir 25% do total do pedido de venda na primeira parcela a vista e 75% do valor para daqui 30 dias para a segunda parcela.

Bloco de código
languagevb
themeMidnight
firstline1
titleMT410PC
linenumberstrue
#INCLUDE 'PROTHEUS.CH'

User Function MT410PC ()

    Local nPValor	:= aScan(aHeader,{|x| AllTrim(x[2]) == "C6_VALOR"})
    
    SA1->(DbSetOrder( 1 ))
    SA1->(DbSeek( xFilial("SA1") + M->C5_CLIENTE + M->C5_LOJACLI ))

    If SA1->A1_RISCO ==<> 'A'
        M->C5_PARC1 := aCols[n][nPValor] * 0.25
        M->C5_DATA1 := DataValida(dDatabase, .T.)

        M->C5_PARC2 := aCols[n][nPValor] * 0.75
        M->C5_DATA2 := DataValida(dDatabase + 30, .T.)

        nParcelas := 2
    EndIf

Return nParcelas