Identificador de Regra

SGQ-100PIAED01

Módulo: SGQ - Sistema de Gestão da Qualidade.

Finalidade: Este identificador de regras será executado antes de excluir ou após alterar ou incluir algum documento na tela SGQ > Controle de Documentos. Através dele, por exemplo, será possível enviar e-mails avisando quando um documento foi incluído, excluído ou alterado.

Características: No caso da inclusão e da alteração, o identificador de regras é chamado dentro da transação do banco de dados, após os dados alterados/incluídos já estarem gravados no banco, porém não confirmados. Portanto, caso alguma mensagem de erro seja dada dentro da regra, a alteração/inclusão será cancelada no banco de dados.

No caso da exclusão, a regra é executada antes dos dados serem excluídos do banco. Assim, se alguma mensagem de erro for dada dentro da regra a exclusão não será efetuada.

Tela: Documentos do SGQ (F100DOC)

Transação: Não se aplica.

Regra:

Deve estar ligado a uma regra

Exemplo de regra:

@ REGRA PARA ENVIAR E-MAILS PARA OS RESPONSÁVEIS PELAS CÓPIAS DOS DOCUMENTOS @

@ variáveis alimentadas pelo Gestão Empresarial | ERP@
Definir Alfa VSCodDoc;
Definir Alfa VSTipOpr;

@ variáveis internas da regra @
Definir Alfa EndEml;
Definir Alfa AssEml;
Definir Alfa TxtEml;
Definir Alfa ASeqCop;

Definir Cursor Cur_E100Ruc;
Definir Cursor Cur_E099Usu;

VCodEmp = CodEmp; @empresa ativa@

@ busca todos os usuários associados às cópias do documento @
Cur_E100Ruc.Sql "SELECT SEQCOP,CODUSU FROM E100RUC WHERE CODDOC = :VSCodDoc AND CODEMP = :VCodEmp";
Cur_E100Ruc.AbrirCursor();
Enquanto (Cur_E100Ruc.Achou)
inicio
VCodUsu = Cur_E100Ruc.CodUsu;
VSeqCop = Cur_E100Ruc.SeqCop;
IntParaAlfa(VSeqCop,ASeqCop);

@ busca o endereço de e-mail do usuário @
Cur_E099Usu.Sql "SELECT INTNET FROM E099USU WHERE CODUSU = :VCodUsu AND CODEMP = :VCodEmp";
Cur_E099Usu.AbrirCursor();
EndEml = Cur_E099Usu.IntNet;
Se (EndEml <> "")
inicio
Se (VSTipOpr = "I")
AssEml = "Inclusão";
Senao
Se (VSTipOpr = "A")
AssEml = "Alteração";
Senao
AssEml = "Exclusão";
AssEml = AssEml + " do documento " + VSCodDoc;
TxtEml = "Verificar a cópia " + ASeqCop;
EnviarEmail("remetente@senior.com.br",AssEml, EndEml, "", TxtEml, "");
Cur_E100Ruc.Proximo();
fim;
fim;

Variáveis Disponibilizadas:

Nome Tipo Observações Retorna Valor
VSCodDoc ALFA Código do documento do SGQ N
VSTipOpr ALFA Tipo de Operação (I - Inclusão / A - Alteração / E - Exclusão) 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.

Este artigo ajudou você?