Esta versão do sistema foi descontinuada e não recebe atualizações e novas implementações. Acesse a documentação da versão 5.10.3 aqui

Identificador de Regra

VEN-140NECAN01

Módulo: VEN - Vendas.

Finalidade: Nota Fiscal Eletrônica - Enviar para o arquivo eletrônico informações do registro de aquisição de Cana.

Características: O identificador de regras é executado durante várias vezes, primeiramente ele busca as informações referentes ao grupo "cana" (ZC01) para isto os campos "VSIntFcdDia" e "VSIntDcaSeq" estarão com valor zero, neste caso deverão ser preenchidos os campos:
- safra (VSIntCanSaf)
- ref (VSIntCanMre)
- qTotMes (VSIntCanTme)
- qTotAnt (VSIntCanTma)
- qTotGer (VSIntCanTge)
- vFor (VSIntCanVfo)
- vTotDed (VSIntCanTde)
- vLiqFor (VSIntCanLfo)

Em segundo momento, será buscado da regra o grupo de fornecimento diário "forDia" (ZC04), neste momento os campos estarão preenchidos da seguinte forma: (VSIntFcdDia > 0) e (VSIntDcaSeq = 0), nesta situação deve ser informado o campo:
- qtde (VSIntFcdQtd)

Em terceiro momento, será buscado da regra o grupo de Taxas e Contribuições "deduc" (ZC10), neste momento os campos estarão preenchidos da seguinte forma: (VSIntFcdDia = 0) e (VSIntDcaSeq > 0), neste momento devem ser informados os seguintes campos:
- xDed (VSIntDcaDes)
- vDed (VSIntDcaVlr)

As variáveis que aceitam retorno da regra devem ser utilizadas conforme manual do contribuinte pode ocorrer erros na emissão ou validação do arquivo caso isso não seja respeitado.

Transação: Não se aplica.

Regra:

@ Exemplo de regra para geração de Registro de Aquisição de Cana @

@ Declaração das variáveis @
Definir Alfa VSIntGerCan;
Definir Numero VSIntCodEmp;
Definir Numero VSIntCodFil;
Definir Alfa VSIntCodSnf;
Definir Numero VSIntNumNfv;
Definir Numero VSIntFcdDia;
Definir Alfa VSIntCanSaf;
Definir Alfa VSIntCanMre;
Definir Numero VSIntCanTme;
Definir Numero VSIntCanTma;
Definir Numero VSIntCanTge;
Definir Numero VSIntCanVfo;
Definir Numero VSIntCanTde;
Definir Numero VSIntCanLfo;
Definir Numero VSIntFcdDia;
Definir Numero VSIntFcdQtd;
Definir Numero VSIntDcaSeq;
Definir Alfa VSIntDcaDes;
Definir Numero VSIntDcaVlr;

Inicio
@ Verifica se está solicitando os campos do grupo "Cana" (ZC01) @
Se ((VSIntFcdDia = 0) e (VSIntDcaSeq = 0))
{
/*
É do grupo "Cana" (ZC01)
Devem ser retornados os seguintes campos:
- safra (VSIntCanSaf)
- ref (VSIntCanMre)
- qTotMes (VSIntCanTme)
- qTotAnt (VSIntCanTma)
- qTotGer (VSIntCanTge)
- vFor (VSIntCanVfo)
- vTotDed (VSIntCanTde)
- vLiqFor (VSIntCanLfo)
*/
@ A variável (VSIntGerCan) indica se para esta nota será informado registro @
@ de aquisição de cana-de-açucar (O valor padrão é "N" (Não informar) @
VSIntGerCan = "S"; @ Indica que será informado registro de aquisição de cana @
VSIntCanSaf = "2009/2010";
VSIntCanMre = "11/2010";
VSIntCanTme = 1234567890.0000000001;
VSIntCanTma = 2358486548.6658;
VSIntCanTge = 9999999999.9999999999;
VSIntCanVfo = 300000.75;
VSIntCanTde = 5000.00;
VSIntCanLfo = 99999999.99;
}
Senao
{
@ Verifica se está solicitando os campos do grupo "forDia" (ZC04) @
Se ((VSIntFcdDia > 0) e (VSIntDcaSeq = 0))
{
/*
É do grupo "forDia" (ZC04)
Devem ser retornados os seguintes campos:
- qtde (VSIntFcdQtd)
O campo VSIntFcdDia corresponde ao dia do fornecimento e é
preenchido automaticamente pelo sistema
*/

@ Exemplo de regra de fornecimento @
@ Até o dia 10, são fornecidos diariamente 500 kg de cana @
Se (VSIntFcdDia <= 10)
VSIntFcdQtd = 500;

@ Entre os dias 11 e 25 são fornecidos diariamente 17,5 kg de cana @
Se ((VSIntFcdDia >= 11) e (VSIntFcdDia <= 25))
VSIntFcdQtd = 17.5;

@ Após o dia 25 até o dia 31, são fornecidos diariamente 1500,80 kg de cana @
Se ((VSIntFcdDia >= 26) e (VSIntFcdDia <= 31))
VSIntFcdQtd = 1500.80;
}
Senao
{
@ Verifica se está solicitando os campos do grupo "deduc" (ZC10) @
Se ((VSIntFcdDia = 0) e (VSIntDcaSeq > 0))
{
@ Exemplo de Deduções (Taxas e Contribuições) @
@ Neste exemplo retorno a mesma taxa e valor 10 vezes iguais @
@ No layout 2.00 da NF-e estão previstos até 10 deduções @
Se (VSIntDcaSeq <= 10)
{
/*
É do grupo "deduc" (ZC10)
Devem ser retornados os seguintes campos:
- xDed (VSIntDcaDes)
- vDed (VSIntDcaVlr)
*/
VSIntDcaDes = "DESCRICAO DA TAXA";
VSIntDcaVlr = 500.00;
}
}
}
}
Fim;

Variáveis Disponibilizadas:

Nome Tipo Observações Retorna Valor
VSIntCodEmp NÚMERO Código da Empresa da nota fiscal N
VSIntCodFil NÚMERO Código da Filial da nota fiscal N
VSIntCodSnf ALFA Código da Série da nota fiscal N
VSIntNumNfv NÚMERO Número da nota fiscal N
VSIntFcdDia NÚMERO Fornecimento diário - Dia (infNFe - cana - forDia - dia) N
VSIntDcaSeq NÚMERO Taxas e Deduções - Sequência (De 1 até 10) N
VSIntGerCan ALFA Indica se deve gerar informação de cana (S/N) S
VSIntCanSaf ALFA Identificação da safra (infNFe - cana - safra) AAAA ou AAAA/AAAA S
VSIntCanMre ALFA Mês e ano de referência (infNFe - cana - ref) MM/AAAA S
VSIntCanTme NÚMERO Quantidade Total do Mês (infNFe - cana - qTotMes) S
VSIntCanTma NÚMERO Quantidade Total Anterior (infNFe - cana - qTotAnt) S
VSIntCanTge NÚMERO Quantidade Total Geral (infNFe - cana - qTotGer) S
VSIntCanVfo NÚMERO Valor dos Fornecimentos (infNFe - cana - vFor) S
VSIntCanTde NÚMERO Valor Total da Dedução (infNFe - cana - vTotDed) S
VSIntCanLfo NÚMERO Valor Líquido dos Fornecimentos (infNFe - cana - vLiqFor) S
VSIntFcdQtd NÚMERO Quantidade (infNFe - cana - forDia - qtde) Referente a variável "VSIntFcdDia" S
VSIntDcaDes ALFA Descrição da Dedução (infNFe - cana - deduc - xDed) Referente a variável "VSIntDcaSeq" S
VSIntDcaVlr NÚMERO Valor da Dedução (infNFe - cana - deduc - vDed) Referente a variável "VSIntDcaSeq" 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.

Este artigo ajudou você?