Identificador de Regra
CPR_439FIXCS02
Módulo: CPR - Compras.
Finalidade: permite ao consultor fazer personalizações via regra, após o término do processo de fixação de preços.
Características: para o funcionamento da rotina, deverá ser cadastrada uma nova regra para o módulo Compras (CPR), e após isto, a regra deverá ser importada para o identificador de regras, sendo executada durante o processo de fixação de preços.
Tela: F439FIX
Transação: Não se aplica.
Regra:
Definir Numero CprNLista;
Definir Alfa CprA_S_N;
Definir Numero obtValorNumero_CodEmp;
Definir Numero obtValorNumero_CodFil;
Definir Numero obtValorNumero_NumOcp;
Definir Numero obtValorNumero_SeqIpo;
Definir Numero obtValorNumero_FilCtr;
Definir Numero obtValorNumero_NumCtr;
Definir Data obtValorData_DatCpt;
Definir Numero obtValorNumero_SeqCcp;
Definir Alfa obtValorAlfa_CodMoe;
Definir Numero obtValorNumero_CotMoe;
Definir Numero obtValorNumero_VlrAcf;
Definir Numero obtValorNumero_QtdBru;
Definir Numero obtValorNumero_QtdTax;
Definir Numero obtValorNumero_QtdLiq;
Definir Numero obtValorNumero_VlrBru;
Definir Numero obtValorNumero_VlrLiq;
Definir Numero obtValorNumero_PreOri;
Definir Numero obtValorNumero_PreUni;
Definir Alfa obtValorAlfa_CodTrg;
Definir Numero obtValorNumero_VlrRoy;
Definir Numero obtValorNumero_CreRoy;
Definir Numero obtValorNumero_TaxRoy;
ListaRegraPrimeiro(CprNLista, CprA_S_N); /*Posiciona no primeiro registro da lista*/
se (CprA_S_N = "S")
@INICIO
CprA_S_N = "N";
enquanto (CprA_S_N <> "S") /*Enquanto não estiver no final da lista entra no laço.*/
@INICIO
ListaRegraObterValorNumero(CprNLista, "CodEmp", obtValorNumero_CodEmp, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "CodFil", obtValorNumero_CodFil, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "NumOcp", obtValorNumero_NumOcp, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "SeqIpo", obtValorNumero_SeqIpo, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "NumCtr", obtValorNumero_NumCtr, CprA_S_N);
ListaRegraObterValorData(CprNLista, "DatCpt", obtValorData_DatCpt, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "SeqCcp", obtValorNumero_SeqCcp, CprA_S_N);
ListaRegraObterValorAlfa(CprNLista, "CodMoe", obtValorAlfa_CodMoe, CprA_S_N);
ListaRegraObterValorData(CprNLista, "DatMoe", obtValorData_DatMoe, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "CotMoe", obtValorNumero_CotMoe, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "VlrAcf", obtValorNumero_VlrAcf, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "QtdBru", obtValorNumero_QtdBru, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "QtdTax", obtValorNumero_QtdTax, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "QtdLiq", obtValorNumero_QtdLiq, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "VlrBru", obtValorNumero_VlrBru, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "VlrLiq", obtValorNumero_VlrLiq, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "PreOri", obtValorNumero_PreOri, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "PreUni", obtValorNumero_PreUni, CprA_S_N);
ListaRegraObterValorAlfa(CprNLista, "CodTrg", obtValorAlfa_CodTrg, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "VlrRoy", obtValorNumero_VlrRoy, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "CreRoy", obtValorNumero_CreRoy, CprA_S_N);
ListaRegraObterValorNumero(CprNLista, "TaxRoy", obtValorNumero_TaxRoy, CprA_S_N);
ListaRegraProximo(CprNLista, CprA_S_N); /*Posiciona no próximo registro;*/
ListaRegraFim(CprNLista, CprA_S_N); /*Atualiza variável final de lista*/
fim
fim
ListaRegraSalvarLista(CprNLista, "C:\\ERP", "listaTxt", "T");
Variáveis Disponibilizadas:
Nome | Tipo | Observações | Retorna Valor |
---|---|---|---|
CprNLista | NÚMERO | Endereço da lista em memória (ver tabela abaixo). | N |
CodEmp | NÚMERO | Código de empresa | N |
CodFil | NÚMERO | Código de filial | N |
NumOcp | NÚMERO | Número da ordem de compra | N |
SeqIpo | NÚMERO | Sequência do item de ordem de compra | N |
FilCtr | NÚMERO | Filial do contrato | N |
NumCtr | NÚMERO | Número do contrato | N |
DatCpt | DATA | Mês e ano de competência | N |
SeqCcp | NÚMERO | Sequência de item de contrato | N |
CodMoe | ALFA | Código de moeda | N |
CotMoe | NÚMERO | Cotação de moeda | N |
VlrAcf | NÚMERO | Valor de acréscimo financeiro | N |
QtdBru | NÚMERO | Quantidade bruta a fixar | N |
QtdTax | NÚMERO | Quantidade de taxas a aplicar na fixação de preços | N |
QtdLiq | NÚMERO | Quantidade de taxas a aplicar na fixação de preços | N |
QtdLiq | NÚMERO | Quantidade líquida a fixar | N |
VlrBru | NÚMERO | Valor bruto a fixar | N |
VlrLiq | NÚMERO | Valor líquido a fixar | N |
PreOri | NÚMERO | Preço de referência | N |
PreUni | NÚMERO | Preço efetivo utilizado | N |
CodTrg | ALFA | Código de transgenia | N |
VlrRoy | NÚMERO | Valor de royalties | N |
CreRoy | NÚMERO | Crédito de royalties | N |
TaxRoy | NÚMERO | Taxa sobre os royalties | N |
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.