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.