Todos os processos customizados de todos os módulos têm sua configuração armazenada na tabela MGGLO.GLO_PROCESSOCUSTOMIZADO, que possui os seguintes campos:
PRC_ST_NOMEOBJETO: Nome do objeto do banco (function) que retornará os dados customizados. Deve conter o nome do usuário (Owner) e o nome do objeto (exemplo: MGMAG.F_NOMEOBJETO).
PRC_ST_NOMEPROCESSO: Nome de identificação do processo customizado.
PRC_ST_OWNER: Nome do usuário (Owner) da package.
PRC_ST_PACKAGE: Nome da package que terá customização.
PRC_ST_DESCRICAO: Descreve a utilização do processo customizado.
PRC_ST_EXEMPLO: Código de uma função exemplo, de como implementar uma função específica, que será indicada no campo PRC_ST_NOMEOBJETO.
PRC_BO_STATUS: Define se o processo customizado está ativado (S) ou desativado (N).
A figura a seguir, exibe um exemplo de como ficam os dados de configuração do(s) processo(s) customizado(s) quando não há nenhuma customização.
Para que o Processo Customizado seja executado, será necessário ajustar os seguintes campos da tabela MGGLO.GLO_PROCESSOCUSTOMIZADO:
PRC_ST_NOMEOBJETO: Informar o nome do objeto do banco (function) que retornará os dados customizados. Este nome deve ser composto pelo nome do usuário (Owner) e o nome do objeto (exemplo: MGMAG.F_NOMEOBJETO);
PRC_BO_STATUS: Informar "S";
Não existe uma tela dentro do Mega Empresarial onde esses dados possam ser manipulados, por isso é necessário um profissional de conhecimento técnico para configurá-lo.
A regra só será utilizada pelo sistema se esses valores forem informados corretamente.
Funcionamento - Processos Customizados
O processo customizado é executado da seguinte forma: a package responsável pelo processo customizado chama a package de funções globais (owner MGGLO) passando os parâmetros que identificam o registro do processo customizado na tabela MGGLO.GLO_PROCESSOCUSTOMIZADO, e também os parâmetros necessários para a função específica. A função global dos processos customizados verifica se há uma função específica para customização e se o processo customizado está ativo, em caso positivo, será executada a função específica que preencherá as tabelas para gerar as informações.A função específica que retornará os dados customizados deverá ser criada com as mesmas características existentes na função de exemplo.Dentre as características mais importantes a serem utilizadas para a criação desta função, estão:
- Sempre deverá ser uma função (Function), ou seja, não poderá ser um procedimento (Procedure);
- A função criada sempre deverá receber um parâmetro do tipo Varchar2;
- Deverá ser criada uma variável do tipo “sys_refcursor”;
- Deverá ser criada uma variável do tipo “xmltype”;
- A variável do tipo “xmltype” deverá ser utilizada conforme exemplo, dentro do bloco “Extraindo XML dos parâmetros”;
- O retorno da função obrigatoriamente deverá ser a variável do tipo sys_refcursor.