Identificador de Regra

VEN-140BENEF01

Módulo: VEN - Vendas.

Finalidade: permite alterar o código do Benefício Fiscal do item da nota fiscal. Este identificador só é válido a partir da versão 4.0 da Nota Fiscal Eletrônica.

Observação

É obrigatório possuir um Dispositivo Fiscal, caso contrário o identificador não será executado.

Para auxiliar na sugestão dos Benefícios Fiscais, disponibilizamos o parâmetro global AtuCodBnf. Para saber mais sobre o comportamento deste parâmetro, acesse a documentação da tela F000PGS e a documentação que traz detalhes sobre a sua parametrização.

Característica: executado sempre que gravar os Dispositivos Fiscais.

Tela: todas as telas e web services de emissão de nota fiscal de saída, e telas e web services em que uma nota de entrada gera um nota de saída. Na F440NPR, herda os Dispositivos Fiscais da nota de origem e gera o código do Benefício Fiscal a partir desses Dispositivos Fiscais.

Transação: não se aplica.

Variáveis Disponibilizadas:

Nome Tipo Observações Retorna Valor
VenNCodEmp NÚMERO Código da empresa da nota fiscal. N
VenNCodFil NÚMERO Código da filial da nota fiscal. N
VenNCodFor NÚMERO Código do fornecedor da nota fiscal (quando for nota fiscal de entrada). N
VenNCodCli NÚMERO Código do cliente da nota fiscal (quando for nota fiscal de saída). N
VenACodSnf ALFA Série da nota fiscal. N
VenNNumDoc NÚMERO Número da nota fiscal de entrada ou saída. N
VenNSeqIte NÚMERO Sequência do item da nota fiscal. N
VenAEntSai ALFA Informa se é nota fiscal de E - Entrada ou S - Saída. N
VenAProSer ALFA Informa se é P - Produto ou S - Serviço. N
VenACodTns ALFA Transação do produto ou serviço. N
VenACodPro ALFA Código do produto. N
VenACodDer ALFA Derivação do produto. N
VenACodSer ALFA Código do serviço. N
VenACodBnf ALFA Código do benefício fiscal (10 caracteres). S
VenNCodDfs NÚMERO Código do Dispositivo Fiscal N

Exemplo de regra:

Definir Numero VenNCodCli;
Definir Alfa VenACodPro;
Definir Alfa VenACodBnf;
Definir Alfa xDados;
Definir Numero xTam;
CopiarAlfa(VenACodBnf, 1, 2);
CopiarAlfa(VenACodPro, 1, 5);
IntParaAlfa(VenNCodCli, xDados);
CopiarAlfa(xDados, 1, 3);
VenACodBnf = VenACodBnf + VenACodPro + xDados;
TamanhoAlfa(VenACodBnf, xTam);
Enquanto (xTam < 10)
Inicio
VenACodBnf = VenACodBnf + 'x';
TamanhoAlfa(VenACodBnf, xTam);
Fim

Este artigo ajudou você?