Árvore de páginas

Versões comparadas

Chave

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

...

Linha de Produto:Microsiga Protheus®
Segmento:Backoffice
Módulo:Financeiro
Função:

FINA050 - Contas a Pagar

Requisito/Story/Issue (informe o requisito relacionado) :DFINGRV-26568
Observações:

Ponto de entrada para manipulação do valor do IRRF.
Deve ser utilizado para tratamento de redução da base por numero de dependentes.
Retornar novo valor calculado do IRRF.

...

A finalidade do ponto de entrada F050CIRF é permitir validações de usuário no valor do IRRF.  substituir o valor calculado do IRRF efetuado pelo sistema. Este ponto de entrada não trabalha em conjunto com o F50CIRFF.

03. PARÂMETROS


Nome

Tipo

Descrição

nBaseIrrf

Numérico

Valor da base de cálculo do IRRF.

...

Bloco de código
languagevb
themeMidnight
firstline1
titleF050CIRF
linenumberstrue
#INCLUDE "protheus.ch"
//-------------------------------------------------------------------
/*/{Protheus.doc} user function F50CIRFF
description Ponto de entrada para manipular o valor de IRRF (M->E2_IRRF). 
Deve retornar o valor da base e moeda corrente.
contexto de execução, alteração na emissão ou valor de título a pagar.
@author  diegos.sousa
@since   27/05/2022
@version 12.1.33
@return nNewIrrf, numerico.  Valor do campo M->E2_IRRF. 
/*/
//-------------------------------------------------------------------
user function F050CIRF(nBaseIrrf) as numeric
    local nDependentesnBaseIrrf    := M->A2_NUMDEP   Paramixb //Ex:Base 6
calculada pelo   local nValDedPorDep   := 100,00
    local nw            sistema 
	local nNewIrrf	  := 0
    local lAtivo          := .F.
    default nNewIrrf      := 0,00
    default nBaseIrrf     := M->E2_BASEIRF  //Ex: 10.000,00 

 
    lAtivo := (FunName() = "FINA080" )
         
    If lAtivo
 
        For nw := 1 to nDependentes

            nBaseIrrf -= nValDedPorDep

        Next nw

        nNewIrrf := (nBaseIrrf * 1.5) / 100  
    EndIf
 
	//Regra de calculo do IRRF que substitui a do sistema
	If SA2->A2_TIPO == "J" 
	   nNewIrrf := nBaseIrrf * 0,015
	EndIf

return nNewIrrf


06. LEIA TAMBÉM

...