Identificador de Regra
GER-075CDLCB01
Módulo: GER - Gerais.
Finalidade: Executado sempre que um registro for inserido, alterado ou excluído, sendo que a execução se dará antes das alterações serem confirmadas no banco de dados, ou seja, é possível impedir que um registro seja incluído, alterado ou excluído do banco de dados.
Não há variável de retorno. Caso a operação não possa ser confirmada no banco de dados, deverá ser exibida uma mensagem de erro, por exemplo, através da função "GeraLog".
Tela: F075BAR
Transação: Não se aplica.
Regra:
Definir Alfa VSEstado;
Definir Alfa VSCodBar;
Definir Alfa VSCodPro;
Definir Alfa VSCodDer;
Definir Alfa VSUniMed;
Definir Cursor Cur_E075Bar;
Se ((VSEstado = "I") e (CodUsu = 15)) @ inclusão @
inicio
GeraLog("Usuário 15 não pode incluir códigos de barras!");
fim;
Senao
se (VSEstado = "A") @ alteração @
inicio
Cur_E075Bar.SQL "SELECT * FROM E075BAR WHERE CODBAR = :VSCodBar";
Cur_E075Bar.AbrirCursor();
se (VSCodPro <> Cur_E075Bar.CodPro)
GeraLog("Não é permitido alterar o código do produto ligado a este código de barras!");
fim;
Variáveis Disponibilizadas:
Nome | Tipo | Observações | Retorna Valor |
---|---|---|---|
VSEstado | ALFA | "I" - Inserindo / "A" - Alterando / "E" - Excluindo | N |
VSCodBar | ALFA | Código de barras | N |
VSCodPro | ALFA | Código do produto | N |
VSCodDer | ALFA | Código da derivação | N |
VSUniMed | ALFA | Unidade de medida | 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.