Regra por processo 611 - Executa plano de ação personalizado
Será executada após pressionar o botão "Plano" nas tela de cadastro de Acidente de Trabalho, Trabalhos SESMT, reuniões da CIPA, reuniões da brigada e PGR.
Recursos utilizados: A regra será executada
após pressionar o botão porém antes de abrir a tela de cadastro de Plano de
Ação, permitindo a execução de uma tela SGI na regra e possibilitando o
cancelamento da abertura da tela original do sistema através do comando CANCEL(2).
Necessário utilizar a variável OriTelPln
para identificar em qual tela o botão Plano foi pressionado. Segue os valores
possíveis da variável OriTelPln e as respectivas telas:
- Acidente de Trabalho (Segurança/Acidentes/Cadastro - pasta Plano de Ação);
- Trabalhos SESMT(Segurança/Trabalhos do SESMT - pasta Plano de Ação);
- Reunião CIPA (Segurança/CIPA/Reuniões - pasta Plano de Ação);
- PGR (Segurança/PGR/PGR - pasta Plano Ação/Situação);
- Ocorrências (Segurança/Acidentes/Ocorrências - pasta Plano de Ação);
- Reunião Brigada (Segurança/Brigada/Reuniões - pasta Plano de Ação);
Os registros do Plano de Ação (R084PLN) ficarão disponíveis através da sintaxe
"TABELA.CAMPO". Entretanto, os registros só estarão disponíveis quando for
selecionado um plano de ação e em seguida for pressionado o botão que chamou a
regra. Pela regra, não será possível alterar os registros da tabela R084PLN
através da sintaxe "TABELA.CAMPO", sendo necessário a utilização do comando 'ExecSQL'.
Comando Cancel: Quando na regra for utilizado o comando CANCEL(2),
a tela de cadastro de Plano de Ação não será apresentada. Desta forma, será
possível executar a função ExecutaTelaSGI e em seguida o comando CANCEL(2). Será
aberto então, somente a tela de cadastro de plano de ação personalizada do
usuário. Quando for executado o comando CANCEL(1) na regra, será cancelado a
execução da regra, apresentando uma mensagem ao usuário, e não será apresentada
nenhuma tela de cadastro de Plano de Ação. Se for utilizado o comando CANCEL(0),
a regra será cancelada, mas não apresentará mensagem ao usuário e abrirá a tela
de cadastro de Plano de Ação original do sistema.
Exemplo de regra especial para ser utilizada na regra por processo 611:
----------------------------------------------
/* Altera campo Observação (do plano de ação), informa qual foi a tela de origem
*/
Definir Alfa vObsPln;
vNumEmp = R084PLN.NumEmp;
vCodPln = R084PLN.CodPln;
Se (OriTelPln = 1)
{
vObsPln = "Origem do plano de ação = Acidente de Trabalho";
ExecSql "UPDATE R084PLN SET OBSPLN = :vObsPln WHERE NUMEMP = :vNumEmp AND CODPLN
= :vCodPln";
}
Se (OriTelPln = 2)
{
vObsPln = "Origem do plano de ação = Trabalhos SESMT";
ExecSql "UPDATE R084PLN SET OBSPLN = :vObsPln WHERE NUMEMP = :vNumEmp AND CODPLN
= :vCodPln";
}
Se (OriTelPln = 3)
{
vObsPln = "Origem do plano de ação = Reunião CIPA";
ExecSql "UPDATE R084PLN SET OBSPLN = :vObsPln WHERE NUMEMP = :vNumEmp AND CODPLN
= :vCodPln";
}
Se (OriTelPln = 4)
{
vObsPln = "Origem do plano de ação = PGR";
ExecSql "UPDATE R084PLN SET OBSPLN = :vObsPln WHERE NUMEMP = :vNumEmp AND CODPLN
= :vCodPln";
}
Se (OriTelPln = 5)
{
vObsPln = "Ocorrências de Acidentes";
ExecSql "UPDATE R084PLN SET OBSPLN = :vObsPln WHERE NUMEMP = :vNumEmp AND CODPLN
= :vCodPln";
}
Se (OriTelPln = 6)
{
vObsPln = "Origem do plano de ação = Reuniões da Brigada";
ExecSql "UPDATE R084PLN SET OBSPLN = :vObsPln WHERE NUMEMP = :vNumEmp AND CODPLN
= :vCodPln";
Disponível para o módulo: SM.