Identificador de Regra
VEN-120ALPRE01
Módulo: VEN - Vendas.
Finalidade: alterar o preço unitário e o percentual de desconto do item de produto.
Características: é executado na tela de entrada de pedidos sempre que o preço unitário do item for alterado. Já na tela Entrada de Pedidos com Avaliação de Produto (F120GPC), o identificador em questão não é executado quando a tabela de preço for alterada por meio do Identificador VEN-120ALTPR01, independente se o preço foi ou não alterado, com a mudança da tabela de preço. Caso haja interesse em atribuir valores para os campos Preço Bruto, Percentual de Acréscimo, Percentual de Oferta e/ou Preço Unitário, após a alteração da tabela de preço na tela F120GPC, então deve ser feito o uso do Identificador VEN-120ALPRE02.
Para manter o Preço Bruto ao utilizar o identificador, pode ser necessário fazer uso do parâmetro global VenManBru. Para maiores informações sobre esse parâmetro, clique aqui.
Já no que diz respeito às rotinas, em algumas delas, dado que todo processamento é feito em memória e grava o pedido somente no final da execução, não será possivel acessar o número do pedido na base antes de processar a inclusão, uma vez que ele não estará gravado. Em uma alteração, o número do pedido será válido. Nas telas de geração Agrupada e Individual essa situação não ocorre, ou seja, o identificador trará um número de pedido já presente na base de dados em qualquer situação.
Ao receber os valores VSPerAcr, VSBruRet e VSPerOfe de volta, o sistema analisa se o cálculo Preço Unitário = Preço Bruto - Oferta1 - Oferta2 - Oferta + Acréscimo é válido. Se o sistema encontrar divergências, ele invalida o retorno desses campos.
Transação: não se aplica.
Regras:
Exemplo 1:
Definir Numero VSPreUni;
Definir Numero VSPerDsc;
VSPreUni = VSPreUni / 0.95;
VSPerDsc = 5;
ArredondarValor(VSPreUni,5);
Exemplo 2:
//Variáveis só irão funcionar para rotina 120GPD
definir alfa VenAConsistindoVen120ALTPR01;
definir alfa VenAConsistindoTabelaPreco;
//Validação para quando for WS não barrar o processo.
se ((VenAConsistindoVen120ALTPR01 = "") ou (VenAConsistindoTabelaPreco = ""))
inicio
@ nao faz nada @
fim
senao
inicio
se (VenAConsistindoVen120ALTPR01 = "S")
inicio
@ nao faz nada @
fim
senao
inicio
se (VenAConsistindoTabelaPreco = "S")
inicio
@ nao faz nada @
fim
senao
inicio
mensagem(retorna, "");
fim;
fim;
fim;
Variáveis Disponibilizadas:
| Nome | Tipo | Observações | Retorna Valor |
|---|---|---|---|
| VSCODCLI | NÚMERO | Código do Cliente | N |
| VSCODPRO | ALFA | Código do Produto | N |
| VSCODDER | ALFA | Código da Derivação | N |
| VSUNIMED | ALFA | Unidade de Medida | N |
| VSQTDPED | NÚMERO | Quantidade Pedida | N |
| VSCODFAM | ALFA | Família do Produto | N |
| VSTNSPRO | ALFA | Transação do Item de Produto | N |
| VSCODTRD | ALFA | Código de Redução de ICMS | N |
| VSPERICM | NÚMERO | Percentual de ICMS | N |
| VSCODCPG | ALFA | Código da Condição de Pagamento | N |
| VSCODTPR | ALFA | Código da Tabela de Preço | N |
| VSCHAMADA | ALFA | Identifica a origem da chamada do identificador: se for da consistência do preço bruto, valor = BRUTO e se a chamada é originada na digitação do preço unitário, o valor é = UNITARIO | N |
| VSESTADO | ALFA | Identifica o estado do registro no momento da chamada da regra: o valor INSERINDO ao inserir um registro e ALTERANDO ao alterar um registro já gravado | N |
| VSPREBRU | NÚMERO | Preço bruto | N |
| VSCODEMP | NÚMERO | Código da Empresa | N |
| VSCODFIL | NÚMERO | Código da Filial | N |
| VSNUMPED | NÚMERO | Número do Pedido | N |
| VSPEROF1 | NÚMERO | Percentual de Oferta 1 dos dados gerais do pedido | N |
| VSPEROF2 | NÚMERO | Percentual de Oferta 2 dos dados gerais do pedido | N |
| VSTelaOrigem | ALFA | Representa uma tela em específico ou o processo do sistema responsável pela execução da rotina de pedido | N |
| VSCodCpg | ALFA | Condição de Pagamento do Pedido | N |
| VSCodTpr | ALFA | Código da Tabela de Preço do Item de Produto | N |
| VSPerCom | NÚMERO | Percentual de Comissão do Item de Produto | N |
| VSSeqIpd | NÚMERO | Sequência do item de produto do pedido | N |
| VSCodDep | ALFA | Depósito do item de produto do pedido | N |
| VSPREUNI | NÚMERO | Preço Unitário | S |
| VSPERDSC | NÚMERO | Percentual de Desconto | S |
| VSPEROFE | NÚMERO | Percentual de oferta | S |
| VSPERACR | NÚMERO | Percentual de acréscimo do item de pedido | S |
| VSBRURET | NÚMERO | Preço Bruto do item do pedido, mas essa variável retorna valor, ao contrário da VSPreBru | S |
| VSInteracao | ALFA | Definir a natureza da alteração dos dados no pedido com os seguintes valores: INTERATIVO e AUTOMATICO, sendo: Interativo quando o usuário alterar os valores na tela e Automático quando o sistema faz alterações no pedido durante o processamento | N |
| VSPreUniAnt | NÚMERO | Preço Unitário Anterior. Utilizada para que, ao incluir um item, a validação seja feita com base no preço inicial dele | - |
| VenAConsistindoVen120ALTPR01 | ALFA | Sinaliza se o identificador de regra VEN-120ALTPR01 está em execução. Por padrão, essa variável fica em branco. Ela funciona apenas na tela F120GPD | S |
| VenAConsistindoTabelaPreco | ALFA | Sinaliza se a tabela de preço foi alterada. Por padrão, essa variável fica em branco. Ela funciona apenas na tela F120GPD | 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.
English
Español
English
Español


