Identificador de Regra
CPR-440ALDFA01
Módulo: CPR - Compras.
Finalidade: Alterar o valor do diferencial de alíquota nas notas fiscais de entrada.
Características: O exemplo de regra consiste em calcular o diferencial de alíquotas entre estados (UF)desconsiderando a redução do ICMS dos itens de produto. A regra verifica se o item possui uma redução de ICMS. Havendo a redução, sendo um produto e valor do diferencial sendo maior que zero, é buscado o valor da redução. Então é feito o cálculo do ICMS da nota sem redução e feito o cálculo do ICMS do Estado sem redução. Logo em seguida é subtraído do valor do ICMS do estado, o valor do ICMS da nota fiscal ( VSVlrDfa = VSVlrIce - VSVlrIcm).
Tela: Notas Fiscais de Entrada
Transação: Pode estar ou não ligado à transação do item da nota fiscal de entrada.
Regra:
Definir Cursor Cur_E019Red;
Definir Numero VSCodEmp;
Definir Numero VSCodFil;
Definir Alfa VSProSer;
Definir Alfa VSSigUfs;
Definir Alfa VSCodTrd;
Definir Alfa xCodTrd;
Definir Alfa xSigUfs;
xCodEmp = VSCodEmp;
xCodFil = VSCodFil;
xCodTrd = VSCodTrd;
xSigUfs = VSSigUfs;
Se (((VSCodTrd <> "") e (VSProSer = "P") e (VSVlrDfa > 0)))
inicio
Cur_E019Red.SQL "SELECT CODEMP, CODFIL, REDENT FROM E019RED
WHERE SIGUFS = :xSigUfs AND
CODTRD = :xCodTrd AND
(CODEMP = :xCodEmp OR CODEMP = 0) AND
(CODFIL = :xCodFil OR CODFIL = 0) ORDER BY CODEMP,CODFIL DESC ";
Cur_E019Red.AbrirCursor();
Se (Cur_E019Red.Achou)
inicio
VSVlrBic = (VSVlrBic * 100)/(100 - Cur_E019Red.RedEnt);
VSVlrIcm = (VSVlrBic * (VSPerIcm/100));
VSVlrIce = (VSVlrBic * (VSPerIce/100));
VSVlrDfa = VSVlrIce - VSVlrIcm;
fim;
Cur_E019Red.FecharCursor();
fim;
Variáveis Disponibilizadas:
| Nome | Tipo | Observações | Retorna Valor |
|---|---|---|---|
| VSProSer | ALFA | Indicativo se um item produto (P) ou serviço (S) | N |
| VSSigUfs | ALFA | Estado da nota fiscal de entrada | N |
| VSTipNfe | NÚMERO | Tipo da nota fiscal de entrada | N |
| VSOrigem | ALFA | Origem da chamada (nesse caso será NFE) | N |
| VSCodEmp | NÚMERO | Empresa da nota fiscal de entrada | N |
| VSCodFil | NÚMERO | Filial da nota fiscal de entrada | N |
| VSCodSnf | ALFA | Série da nota fiscal de entrada | N |
| VSNumNfc | NÚMERO | Número da nota fiscal de entrada | N |
| VSSeqIte | NÚMERO | Sequência do item sendo calculado | N |
| VSCodFor | NÚMERO | Fornecedor da nota fiscal de entrada | N |
| VSTnsIte | ALFA | Transação do item | N |
| VSNopIte | ALFA | Natureza de operação do item | N |
| VSCodPro | ALFA | Código do produto | N |
| VSCodDer | ALFA | Código da derivação do produto | N |
| VSCodSer | ALFA | Código do serviço | N |
| VSCodFam | ALFA | Código da família | N |
| VSCodTic | ALFA | Código do ICMS especial | N |
| VSCodTrd | ALFA | Código de redução do ICMS | N |
| VSCodTst | ALFA | Código do ICMS substituído | N |
| VSCodStc | ALFA | Código de substiuição do COFINS | N |
| VSCodStp | ALFA | Código de substituição do PIS | N |
| VSCodStr | ALFA | Código da situação tributária | N |
| VSCodClf | ALFA | Código da classificação fiscal | N |
| VSCodTpr | ALFA | Código da tabela de preço do item | N |
| VSQtdRec | NÚMERO | Quantidade recebida na unidade de medida do fornecedor | N |
| VSUniNfc | ALFA | Unidade de medida do fornecedor | N |
| VSQtdEst | NÚMERO | Quantidade recebida na unidade de medida do estoque | N |
| VSUniMed | ALFA | Unidade de medida do estoque | N |
| VSPreUni | NÚMERO | Preço unitário na unidade de medida do fornecedor | N |
| VSPreEst | NÚMERO | Preço unitário na unidade de medida do estoque | N |
| VSPerIpi | NÚMERO | Percentual de IPI | N |
| VSPerIcm | NÚMERO | Percentual de ICMS | N |
| VSPerFun | NÚMERO | Percentual de FUNRURAL | N |
| VSPerSen | NÚMERO | Percentual do Senar | N |
| VSNumPrj | NÚMERO | Projeto | N |
| VSCodFpj | NÚMERO | Fase | N |
| VSCtaFin | NÚMERO | Conta financeira | N |
| VSCtaRed | NÚMERO | Conta contábil | N |
| VSCodCcu | ALFA | Centro de custos | N |
| VSVlrFre | NÚMERO | Valor de frete | N |
| VSVlrSeg | NÚMERO | Valor de seguros | N |
| VSVlrEmb | NÚMERO | Valor de embalagens | N |
| VSVlrEnc | NÚMERO | Valor de encargos | N |
| VSVlrOut | NÚMERO | Valor de outras despesas | N |
| VSVlrDar | NÚMERO | Valor de arredondamento | N |
| VSVlrFrd | NÚMERO | Valor frete destacado | N |
| VSVlrOud | NÚMERO | Valor de outras despesas destacado | N |
| VSVlrBru | NÚMERO | Valor bruto do item | N |
| VSPerDsc | NÚMERO | Percentual de desconto | N |
| VSVlrDsc | NÚMERO | Valor de desconto | N |
| VSPerDs1 | NÚMERO | Percentual de desconto 1 | N |
| VSVlrDs1 | NÚMERO | Valor de desconto 1 | N |
| VSPerDs2 | NÚMERO | Percentual de desconto 2 | N |
| VSVlrDs2 | NÚMERO | Valor de desconto 2 | N |
| VSPerDs3 | NÚMERO | Percentual de desconto 3 | N |
| VSVlrDs3 | NÚMERO | Valor de desconto 3 | N |
| VSPerDs4 | NÚMERO | Percentual de desconto 4 | N |
| VSVlrDs4 | NÚMERO | Valor de desconto 4 | N |
| VSPerDs5 | NÚMERO | Percentual de desconto 5 | N |
| VSVlrDs5 | NÚMERO | Valor de desconto 5 | N |
| VSVlrDzf | NÚMERO | Valor de desconto na zona franca | N |
| VSVlrBip | NÚMERO | Valor base do IPI | N |
| VSVlrIpi | NÚMERO | Valor do IPI | N |
| VSVlrBid | NÚMERO | Valor base IPI presumido | N |
| VSVlrIpd | NÚMERO | Valor do IPI presumido | N |
| VSVlrBic | NÚMERO | Valor base do ICMS | N |
| VSVlrIcm | NÚMERO | Valor do ICMS | N |
| VSVlrBsi | NÚMERO | Valor base ICMS SUbstituído | N |
| VSVlrIcs | NÚMERO | Valor do ICMS substituído | N |
| VSVlrBsd | NÚMERO | Valor base ICMS substituto destacado | N |
| VSVlrIsd | NÚMERO | Valor ICMS susbtituto destacado | N |
| VSVlrBsp | NÚMERO | Valor base subsituição do PIS | N |
| VSVlrStp | NÚMERO | Valor substituição do PIS | N |
| VSVlrBsc | NÚMERO | Valor base subsituição do COFINS | N |
| VSVlrStc | NÚMERO | Valor da substituição do COFINS | N |
| VSVlrBpi | NÚMERO | Valor base PIS recuperar | N |
| VSVlrPis | NÚMERO | Valor PIS recuperar | N |
| VSVlrBcr | NÚMERO | Valor base COFINS recuperar | N |
| VSVlrCor | NÚMERO | Valor COFINS recuperar | N |
| VSPerIim | NÚMERO | Percentual do imposto de importação | N |
| VSVlrIim | NÚMERO | Valor do imposto de importação | N |
| VSPerIss | NÚMERO | Percentual de ISS | N |
| VSPerIrf | NÚMERO | Percentual de IRRF | N |
| VSPerIns | NÚMERO | Percentual de INSS | N |
| VSVlrBis | NÚMERO | Valor base do ISS | N |
| VSVlrIss | NÚMERO | Valor do ISS | N |
| VSVlrBir | NÚMERO | Valor base do IRRF | N |
| VSVlrIrf | NÚMERO | Valor do IRRF | N |
| VSVlrBin | NÚMERO | Valor base do INSS | N |
| VSVlrIns | NÚMERO | Valor do INSS | N |
| VSVlrBct | NÚMERO | Valor base COFINS retido | N |
| VSVlrCrt | NÚMERO | Valor COFINS retido | N |
| VSPerCrt | NÚMERO | Percentual COFINS retido | N |
| VSVlrBpt | NÚMERO | Valor base PIS retido | N |
| VSPerPit | NÚMERO | Percentual PIS retido | N |
| VSVlrBcl | NÚMERO | Valor base CSLL retido | N |
| VSVlrCsl | NÚMERO | Valor de CSLL retido | N |
| VSPerCsl | NÚMERO | Percentual de CSLL retido | N |
| VSVlrBor | NÚMERO | Valor base outras retenções | N |
| VSVlrOur | NÚMERO | Valor de outras retenções | N |
| VSPerOur | NÚMERO | Percentual de outras retenções | N |
| VSPerIce | NÚMERO | Percentual de ICMS do Estado | N |
| VSVlrIce | NÚMERO | Valor de ICMS do Estado | N |
| VSVlrDfa | NÚMERO | Valor da diferença das alíquotas entre os Estados | S |
Atenção
Caso o parâmetro global LisVarReg esteja habilitado, a variável ListaVariaveis estará disponível em todos os identificadores de regras do sistema. O conteúdo desta variável lista os campos disponibilizados no identificador de regras em questão.
Não é aconselhada a ativação desse parâmetro global para o uso cotidiano. Esse recurso de listagem dos campos de identificadores auxilia a construção de regras e o Suporte para, por exemplo, depuração ou quando não houver acesso à documentação dos identificadores de regras.
English
Español
English
Español


