Á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 COFINS padrão do sistema, permitindo a manipulação da alíquota e da base de cálculo do COFINS.


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 COFINS para o item. (S=Sim, N=Nao)
aRet[2]Carácter

Indica o percentual de alíquota para cálculo de COFINS 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 COFINS 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_TPALCOF está preenchido com 1.

04. EXEMPLO DE UTILIZAÇÃO


PE MaCalcCOF
#INCLUDE "PROTHEUS.CH"

User Function MaCalcCOF()
    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 cCalcCOF := "" // S=Calcula COFINS; N=Não Calcula COFINS.
	Local nAliqCOF := 0  // Retorna o percentual de alíquota do COFINS.
	Local nBaseCOF := 0  // Retorna a base de cálculo do COFINS.      

	If cProduto $ 'PA0000000000000000000000000001'
        cCalcCOF := "S"
        nAliqCOF := 1
        nBaseCOF := 1000
    ElseIf cProduto $ 'PA0000000000000000000000000002'
        cCalcCOF := "S"
        nAliqCOF := 3
		nBaseCOF := 3000
    EndIf   

	aAdd(aRet, cCalcCOF)
	aAdd(aRet, nAliqCOF)
	aAdd(aRet, nBaseCOF)

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()