Identificador de Regra
CPR-435RCPAR01
Módulo: CPR - Compras.
Finalidade: o objetivo deste identificador é sobrepor as parcelas de uma nota fiscal de entrada, quando a mesma é fechada nas rotinas do Agronegócio.
Características: o identificador é disparado no momento anterior ao fechamento da nota fiscal.
Seu funcionamento consiste no seguinte:
- Se não houver linhas no retorno da lista de parcelas, nada será feito.
- Caso retornem parcelas na lista, as parcelas pré-existentes na nota fiscal serão excluídas e serão assumidas novas parcelas.
É destinado ao identificador, a responsabilidade de fechar o valor correto das parcelas com o valor da nota fiscal. O sistema não efetuará consistências posteriores a isso.
Tela: F435CCC, F435CST, F115COE, F115TRF
Transação: Não se aplica.
Regras
Definir Numero CprNCodEmp;
Definir Numero CprNCodFil;
Definir Numero CprNCodFor;
Definir Numero CprNNumNfc;
Definir Alfa CprACodSnf;
Definir Numero CprNFilCtr;
Definir Numero CprNNumCtr;
Definir Numero CprNDatCpt;
Definir Numero CprNSeqCcp;
Definir Numero CprNVlrLiq;
Definir Numero CprNVlrFin;
Definir Alfa CprACodCpg;
Definir Numero CprNCodFpg;
Definir Alfa CprATnsPro;
Definir Alfa CprATnsSer;
Definir Alfa CprACodPor;
Definir Alfa CprACodCrt;
Definir Alfa CprACodTpt;
Definir Alfa CprACodFcr;
Definir Numero CprNDatFcr;
Definir Data dVctPar;
Definir numero ListaPar;
Definir Alfa aAux;
Definir numero i;
definir numero nvalorpar;
definir numero nValorRestante;
NValorPar = (CprNVlrFin/3);
NValorPar = ArredondarValor(NValorPar, 2);
NValorRestante = CprNVlrFin - (NValorPar * 3);
i = 1;
dVctPar = DatSis;
enquanto (i <= 3)
{
Se (i = 3)
{
NValorPar = NValorPar + NValorRestante;
}
ListaRegraNovaLinha(ListaPar);
ListaRegraAddValorLinhaAlfa(ListaPar, "CodPor", CprACodPor, aAux);
ListaRegraAddValorLinhaAlfa(ListaPar, "CodCrt", CprACodCrt, aAux);
ListaRegraAddValorLinhaAlfa(ListaPar, "CodTpt", CprACodTpt, aAux);
ListaRegraAddValorLinhaAlfa(ListaPar, "CodCrp", "", aAux);
ListaRegraAddValorLinhaAlfa(ListaPar, "CodFcr", CprACodFcr, aAux);
ListaRegraAddValorLinhaNumero(ListaPar, "DatFcr", CprNDatFcr, aAux);
ListaRegraAddValorLinhaNumero(ListaPar, "VctPar", DVctPar, aAux);
ListaRegraAddValorLinhaNumero(ListaPar, "CodNtg", 0, aAux);
ListaRegraAddValorLinhaAlfa(ListaPar, "CodBan", "001", aAux);
ListaRegraAddValorLinhaAlfa(ListaPar, "CodAge", "001", aAux);
ListaRegraAddValorLinhaAlfa(ListaPar, "CcbFor", "1234", aAux);
ListaRegraAddValorLinhaNumero(ListaPar, "CodPar", i, aAux);
ListaRegraAddValorLinhaNumero(ListaPar, "VlrPar", NValorPar, aAux);
ListaRegraAddValorLinhaNumero(ListaPar, "QtdDdd", 0, aAux);
ListaRegraAddValorLinhaNumero(ListaPar, "PerDdp", 0, aAux);
ListaRegraAddValorLinhaNumero(ListaPar, "VlrDdp", 0, aAux);
ListaRegraAddValorLinhaNumero(ListaPar, "JrsNeg", 0, aAux);
ListaRegraAddValorLinhaNumero(ListaPar, "MulNeg", 0, aAux);
ListaRegraAddValorLinhaNumero(ListaPar, "VlrDsc", 0, aAux);
ListaRegraAddValorLinhaNumero(ListaPar, "OutNeg", 0, aAux);
ListaRegraAddValorLinhaNumero(ListaPar, "DatNeg", 0, aAux);
ListaRegraAddValorLinhaNumero(ListaPar, "TipTcc", 1, aAux);
ListaRegraAddValorLinhaNumero(ListaPar, "CodFpg", CprNCodFpg, aAux);
ListaRegraSalvarLinha(ListaPar);
DVctPar = DvctPar + 10;
Se (i = 3)
NValorPar = NValorPar + NValorRestante;
i = i + 1;
}
Variáveis Disponibilizadas:
Observação
As variáveis CprACodPor, CprACodCrt, CprACodTpt, CprACodFcr, CprNDatFcr são obtidas através da primeira parcela existente na nota fiscal. Caso não houver parcelas, estas variáveis estarão sem valor e devem ser preenchidas.
Nome | Tipo | Observações | Retorna Valor |
---|---|---|---|
CodPar | NÚMERO | Código da parcela | S |
VctPar | DATA | Data de vencimento da parcela | S |
VlrPar | NÚMERO | Filial do contrato | S |
PerDdp | NÚMERO | Número interno do contrato | S |
QtdDdd | NÚMERO | Mês e ano de competência do contrato | S |
CodPor | ALFA | Sequência do item do contrato | S |
CodCrt | ALFA | Filial do controle entradas e saídas | S |
CodTpt | ALFA | Data da entrada do controle entradas e saídas | S |
CodCrp | ALFA | Sequência de entrada do controle entradas e saídas | S |
CodFcr | ALFA | Código do fornecedor da ordem de compra | S |
DatFcr | DATA | Código da transação da ordem de compra | S |
CodNtg | NÚMERO | Código da transportadora da ordem de compra | S |
VlrDsc | NÚMERO | Código do produto do item da ordem de compra | S |
JrsNeg | NÚMERO | Código da derivação do item da ordem de compra | S |
MulNeg | NÚMERO | Quantidade do produto do item da ordem de compra | S |
OutNeg | NÚMERO | Preço unitário do produto do item da ordem de compra | S |
DatNeg | DATA | Data base dos valores negociados | S |
CodFpg | NÚMERO | Código da forma de pagamento | S |
CodBan | ALFA | Código do banco | S |
CodAge | ALFA | Código da agência | S |
CcbFor | ALFA | Número da conta corrente do fornecedor | S |
TipTcc | NÚMERO | Tipo da conta - conforme lista de tipos de conta | 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.