Á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 da base de cálculo.
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 na base de cálculo e 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.

04. RETORNO

Nome

Tipo

Descrição

nNewIRRF

Numérico

Novo valor calculado para o 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 F50CIRFF(nBaseIrrf) as numeric
    local nDependentes    := SA2->A2_NUMDEP   //Ex: 6
    local nValDedPorDep   := 100,00
    local nw              := 0
    local lAtivo          := .F.
    default nNewIrrf      := 0,00
    default nBaseIrrf     := SE2->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
 
return nNewIrrf

F050CIRF()
    local nBaseIrrf   := Paramixb //Base calculada pelo sistema 
	local nNewIrrf	  := 0

	//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

F50CIRFF - Ponto de entrada para manipulação do cálculo da base de cálculo do IRRF. 



HTML
<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}
</style>