Árvore de páginas

Versões comparadas

Chave

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

...

Este ponto de entrada permite que os campos: Gera Dirf (E2_DIRF) e Cód.Ret. (E2_CODRET) sejam preenchidos no momento da geração de pagamentos de comissões.

03. DEMAIS INFORMAÇÕES

...

titleImportante:

...

Comportamento e Regras de Negócio

O ponto de entrada M530DIRF tem como objetivo a manipulação e gravação dos campos referentes à DIRF. Ele é alimentado com os dados provenientes do registro de comissão (SE3) e, caso o parâmetro MV_CRF_SE3 esteja preenchido, seu valor será priorizado e repassado ao ponto de entrada.

03. DEMAIS INFORMAÇÕES

A rotina de Atualização de Pagamento de Comissões (MATA530) passou por uma reestruturação em novembro de 2025.

Em decorrência dessa alteração, o título gerado no contas a pagar não estará mais disponível no momento em que o ponto de entrada for acionado.

Dessa forma, eventuais customizações que dependam desse comportamento poderão necessitar de ajustes. Adicionalmente, novos parâmetros foram disponibilizados para utilização, conforme detalhado nos tópicos a seguir.


Aviso
titleImportante:

Para utilizar o ponto de entrada M530DIRF é necessário que o fonte MATA530 esteja com a data igual ou superior a 28/04/2026.Devido à mudança para ExecAuto, é essencial validar se as customizações existentes no M530DIRF estão compatíveis com a estrutura de array multidimensional detalhada acima para garantir a correta integração com o módulo financeiro.

04. ASSUNTOS RELACIONADOS

...

Bloco de código
languagevb
themeMidnight
firstline1
titleF645LIQM530DIRF
linenumberstrue
#include "protheus.ch"  

/*/{Protheus.doc} M530DIRF
    Este ponto de entrada permite que os campos: Gera Dirf (E2_DIRF) e Cód.Ret. (E2_CODRET) 
    sejam preenchidos no momento da geração de pagamentos de comissões.
	
    @author 
	@since 28/04/2026
	@version 12.1.2510
/*/

user function M530DIRF()

    Local cCodRet   := ""
    Local aAreaSE3  := SE3->(GetArea())

    // ParamIXB[1] Esta posição contém o código de retenção informado no PARAMETRO "MV_CRF_SE3"

    // ParamIXB[2,1] R_E_C_N_O_ do registro de comissão
    // ParamIXB[2,2] Filial do registro de comissão
    // ParamIXB[2,3] Prefixo do registro de comissão
    // ParamIXB[2,4] Número do registro de comissão
    // ParamIXB[2,5] Parcela do registro de comissão
    // ParamIXB[2,6] Sequencia do registro de comissão
    // ParamIXB[2,7] Vendedor do registro de comissão

    SE3->(DbSetOrder(1))
    SE3->(DbGoTo(ParamIXB[2,1]))

    // Tratamento dos dados da comissão para verificar se o título deve ou não ser enviado para a DIRF. 
    // O codigo de retenção 8045 abaixo, é somente um codigo exemplo.

    If ParamIXB[2,7] $ "000001" .And. (Empty(ParamIXB[1]) .Or. ParamIXB[1] != "8045")
        cCodRet := "8045"
    Else
        cCodRet := ParamIXB[1]
    Endif
    
    RestArea(aAreaSE3)

Return cCodRet