Árvore de páginas

01. DADOS GERAIS

Linha de Produto:Microsiga Protheus®
Segmento:Serviços
Módulo:Fiscal


02. DESCRIÇÃO

Ponto de entrada utilizado para permitir a alteração do cálculo de PIS padrão do sistema, permitindo a manipulação da alíquota e da base de cálculo do PIS.


Importante

A utilização desse ponto de entrada é de responsabilidade exclusiva do cliente, pois terá impacto direto na escrituração das notas e dos livros fiscais.

Utilize com cautela!

Importante!

É importante que, ao haver a necessidade de deslocar algum registro das tabelas físicas dentro do Ponto de Entrada, esse tenha o tratamento de GetArea() e RestArea() para que o sistema siga o fluxo normal.


03. Especificação

Parâmetros do ponto de entrada:

Nome

Tipo

Descrição

ParamIXB[1]NuméricoNúmero do Item
ParamIXB[2]CarácterCódigo do Produto
ParamIXB[3]CarácterCódigo da TES
ParamIXB[4]CarácterTipo de Participante (C = Cliente/F = Fornecedor)
ParamIXB[5]CarácterCódigo do Participante
ParamIXB[6]CarácterCódigo da Loja do Participante
ParamIXB[7]CarácterOperação da Nota Fiscal (E = Entrada/S = Saída)


Retorno:

O ponto de entrada deverá retornar um array de 3 posições:

NomeTipoDescrição
aRet[1]CarácterIndica se calcula ou não o PIS para o item. (S=Sim, N=Nao)
aRet[2]Carácter

Indica o percentual de alíquota para cálculo de PIS para o item. 

Caso seja passado zerado, o sistema desconsiderará o retorno dessa posição, possibilitando que seja informado somente a base de cálculo.

aRet[3]Carácter

Indica o valor de base de cálculo que será considerada para cálculo de PIS para o item. 

Caso seja passado zerado, o sistema desconsiderará o retorno dessa posição, possibilitando que seja informado somente a alíquota


Observação:

Para a correta utilização do ponto de entrada, verifique se o parâmetro MV_TPALPIS está preenchido com 1.

04. EXEMPLO DE UTILIZAÇÃO


PE MaCalcPIS
#INCLUDE "PROTHEUS.CH"

User Function MaCalcPIS()
	Local nItem      := PARAMIXB[1] //Número do Item
    Local cProduto   := PARAMIXB[2] //Código do Produto
    Local cTes       := PARAMIXB[3] //Código da TES
    Local cCliFor    := PARAMIXB[4] //Tipo de Participante (C = Cliente/F = Fornecedor)
    Local cCodCliFor := PARAMIXB[5] //Código do Participante
    Local cLoja      := PARAMIXB[6] //Código da Loja do Participante
    Local cOperNF    := PARAMIXB[7] //Operação da Nota Fiscal (E = Entrada/S = Saída)

	Local aRet     := {}

	Local cCalcPIS := "N" // S=Calcula PIS; N=Não Calcula PIS.
	Local nAliqPIS := 0  // Retorna o percentual de alíquota do PIS.
	Local nBasePIS := 0  // Retorna a base de cálculo do PIS.      

	If cProduto $ 'PA0000000000000000000000000001'
        cCalcPIS := "S"
        nAliqPIS := 1
        nBasePIS := 1000
    ElseIf cProduto $ 'PA0000000000000000000000000002'
        cCalcPIS := "S"
        nAliqPIS := 3
		nBasePIS := 3000
    EndIf    

	aAdd(aRet, cCalcPIS)
	aAdd(aRet, nAliqPIS)
	aAdd(aRet, nBasePIS)

Return aRet



05. DEMAIS INFORMAÇÕES

Por meio desse Ponto de Entrada, também é possível acessar o aHeader[] e o aCols[] para tomada de decisões.

06. ASSUNTOS RELACIONADOS

RESTAREA()

GETAREA()