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.


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

NomeTipoDescriçã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/S

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

RESTAREA()

GETAREA()



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