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 Apuração(PS2) padrão do sistema, permitindo a manipulação da alíquota e da base de cálculo do PIS Apuração.
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érico | Número do Item |
| ParamIXB[2] | Carácter | Código do Produto |
| ParamIXB[3] | Carácter | Código da TES |
| ParamIXB[4] | Carácter | Tipo de Participante (C = Cliente/F = Fornecedor) |
| ParamIXB[5] | Carácter | Código do Participante |
| ParamIXB[6] | Carácter | Código da Loja do Participante |
| ParamIXB[7] | Carácter | Operação da Nota Fiscal E/S |
Retorno:
O ponto de entrada deverá retornar um array de 3 posições:
| Nome | Tipo | Descrição |
|---|---|---|
| aRet[1] | Carácter | Indica se calcula ou não o PIS para o item. (S=Sim, N=Nao) |
| aRet[2] | Numérico | Indica o percentual de alíquota para cálculo de PIS Apuração para o item. |
| aRet[3] | Numérico | Indica o valor de base de cálculo que será considerada para cálculo de PIS Apuração para o item. |
04. EXEMPLO DE UTILIZAÇÃO
#INCLUDE "PROTHEUS.CH"
User Function MaCPISAPU()
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 cCalcPS2 := "N" // S=Calcula PIS; N=Não Calcula PIS.
Local nAliqPS2 := 0 // Retorna o percentual de alíquota do PIS.
Local nBasePS2 := 0 // Retorna a base de cálculo do PIS.
If cProduto $ 'PA0000000000000000000000000001'
cCalcPS2 := "S"
nAliqPS2 := 1
nBasePS2 := 1000
ElseIf cProduto $ 'PA0000000000000000000000000002'
cCalcPS2 := "S"
nAliqPS2 := 3
nBasePS2 := 3000
EndIf
aAdd(aRet, cCalcPS2)
aAdd(aRet, nAliqPS2)
aAdd(aRet, nBasePS2)
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