Módulo: Configurações > Avançado Versão disponível: A partir da 4.9
O Gerenciador de Objetos é uma ferramenta desenvolvida em Oracle no Sankhya Om com o propósito de otimizar a criação, gerenciamento e manipulação dos objetos, utilizando as melhores práticas na construção, proporcionando ganho de performance e integridade.
Através do Gerenciador de Objetos, será possível realizar a criação de regras de negócio e identificação de regras personalizadas, possibilitando a celeridade na localização de adversidades, centralização das informações e avaliação da performance dos objetos pela telemetria.
Além disso, ressaltamos os seguintes benefícios:
-
Cloud Friendly: O Gerenciador de Objetos é incorporado no Sankhya Om, tornando-se desnecessário uma ferramenta de banco de dados para realizar a criação/manutenção das regras de negócios.
-
Telemetria de objetos: Neste dashboard será possível visualizar a quantidade de execuções, o tempo de processamento utilizado por cada objeto e um indicador apresentando quais objetos estão afetando a performance do sistema.
-
Rastreabilidade de alterações: O usuário consegue mapear todas as alterações realizadas nos objetos para melhorar o diagnóstico de problemas, identificando as responsabilidades.
- Facilidade na ativação desativação de regras: Este recurso irá ajudar a ter mais simplicidade na hora de ativar ou desativar as regras de negócios personalizadas.
Por questões de compliance e segurança, a inclusão de regras foi descontinuada. Porém, caso necessário, direcione a inserção do recurso ao DBA responsável da sua empresa.
Nesse artigo trataremos sobre os seguintes tópicos:
Clique nas imagens acima para saber mais |
Configurando a Grade da Tela
As colunas apresentadas na tela Gerenciador de Objetos podem ser personalizadas conforme sua necessidade. Abaixo, siga os passos necessários para essas personalizações:
Acesse o ícone "Modo Formulário" e selecione "Configurar grade"; assim, a tela para configuração será aberta. As movimentações podem ser feitas através das setas, podendo mover as colunas que estão em "Colunas disponíveis" para "Colunas selecionadas", a fim de serem apresentadas ou não na grade e também, sendo possível selecionar a ordem dessas colunas.
Após realizar as alterações, basta clicar no botão "Salvar":
Criação de Objetos
Para criar novas regras de negócios personalizadas, siga os procedimentos abaixo:
Clique no botão "Cadastrar Regras de customização". Após isso, a tela de cadastro será aberta para preenchimento das informações necessárias:
Trouxemos uma descrição para te orientar no preenchimento dos campos:
No campo "Tabela Relacionada", selecione a tabela correspondente na qual será criada a regra de negócio.
Informe no campo "Nome Regra", o nome do objeto no banco de dados, por exemplo: "STP_VALIDA_PROD".
Quando a marcação "Ativo" estiver habilitada, quer dizer que a regra será executada; se não estiver marcada, não haverá a execução da regra.
O campo "Status Publicação" é preenchido automaticamente, sendo possível identificar se o objeto foi publicado ou publicado com erro.
No campo "Grupo" você poderá selecionar ou criar agrupadores para um conjunto de regras de negócio para facilitar a identificação. Exemplo: Fiscal, Contabilidade, Produção, Comercial, entre outros.
Para utilizar um grupo já criado, basta acessar a lupa ao lado:
Observação: para criar um novo grupo, basta digitar o nome dele no campo. Assim, após a criação do objeto, o novo grupo será inserido na lista de grupos disponibilizados no painel de filtros rápidos:
Na aba "Dados do Objeto" preencha as seguintes informações:
No campo "Descrição", informe o funcionamento da regra de negócio, qual será o impacto no sistema, qual será o objetivo da regra de negócio, etc.
A marcação "Insert" fará com que a regra seja executada no momento de inserção da tabela selecionada.
Já a marcação "Update", quando habilitada, fará com que a regra seja executada no momento de atualização da tabela selecionada.
A marcação "Delete" irá executar a regra no momento em que um registro for removido da tabela selecionada.
No campo "Momento de Execução", selecione o momento em que o objeto será executado ("Before" ou "After"). Se será antes ou após os eventos de Insert, Update ou Delete serem aplicados na tabela.
O campo "Tipo" possui duas opções, sendo "Nativo" para os objetos originários do ERP e "Personalizada" para os objetos criados.
Atualmente, o Gerenciador de Objetos tem a "Abrangência" apenas para objetos "for each row". O gatilho é chamado uma vez para cada linha que a operação modifica.
No campo "Documentação", você poderá anexar um documento detalhando a funcionalidade do objeto.
Por fim, no campo "Regra", deve ser inserida a regra de negócio do cliente que foi desenvolvida em PL-SQL. Caso hajam dúvidas sobre o preenchimento desse campo, acesse o tópico Preenchimento do campo Regra.
Após o preenchimento dos campos necessários, clique no botão "Salvar".
Após salvar o objeto, será aberto um pop-up para informar o motivo da criação. Ao salvar o motivo, o objeto passará por uma validação que poderá ou não apresentar erro. Caso não apresente erro, o objeto será publicado no banco de dados e estará pronto para ser executado, conforme as regras definidas, obedecendo o momento de execução e os eventos de Insert, Update e Delete.
Dando continuidade, na aba "Histórico de Alterações" podemos verificar as informações relacionadas à criação e todas as alterações realizadas no objeto:
No campo "Data" você poderá selecionar os períodos que deseja ou selecionar os períodos configurados no sistema.
Na aba "Telemetria" podemos visualizar a quantidade de vezes que a regra de negócio foi disparada, o tempo total e o tempo médio de execução da regra:
Preenchimento do campo Regra
A estrutura criada para comportar a regra é composta por uma package e duas triggers por tabela. As triggers são responsáveis por executar a regra antes ou após uma modificação de um registro da tabela.
Você terá acesso para criação de uma procedure com um comportamento similar de uma trigger, sendo possível acessar o New e Old porém, com uma sintaxe um pouco diferente. Utilizaremos o exemplo de um objeto sendo criado na tabela TGFPRO (Tabela de Produtos) para acessar as informações de New e Old da TGFPRO:
PKG_DSP_TGFPRO.NEW_CODPROD
PKG_DSP_TGFPRO.OLD_CODPROD
Observação: para cada tabela que possua uma regra cadastrada, o sistema irá gerar um pacote contendo os campos da tabela com a informação de New e Old. A estrutura será sempre PKG_DSP_”NOME DA TABELA”.”TEMPO”_”NOME DO CAMPO” (PKG_DSP_TGFPRO.NEW_ATIVO).
O pacote também auxiliará as informações do momento de execução, sendo três eventos:
- PKG_DSP_TGFPRO.EVENTO := 'INSERTING';
- PKG_DSP_TGFPRO.EVENTO := 'UPDATING';
- PKG_DSP_TGFPRO.EVENTO := 'DELETING';
Não poderão ser utilizados campos dos tipos CLOB e BLOB. A imagem abaixo demonstra um exemplo de como utilizar:
Alteração de Objetos
Para realizar alterações das regras de negócio nos objetos, realize os procedimentos abaixo:
- Selecione o objeto que deseja editar com um duplo clique;
- Realize as alterações desejadas e clique no botão Salvar;
- Após salvar o objeto, será aberto um pop-up para informar o motivo das alterações; clique no botão Salvar;
- Para consultar as alterações realizadas no objeto, clique na aba "Histórico de Alterações".
Dashboard Telemetria de Objetos
Nesse dashboard podemos visualizar a quantidade de execuções, o tempo de processamento utilizado por cada objeto e um indicador apresentando quais objetos estão afetando a performance do sistema. Para acessá-lo, inicialmente, clique no botão "Telemetria" localizado no alto da tela e, logo depois, na tela que se abre ("Telemetria de Objetos"), selecione os filtros que deseja:
Assim, será apresentada a lista de objetos com alguns indicadores, conforme as métricas abaixo:
- Farol Verde: Tempo médio de execução entre 0 e 0,4999 seg.
- Farol Amarelo: Tempo médio de execução entre 0,5000 e 0,9999 seg.
- Farol Vermelho: Tempo médio de execução acima de 1 seg.
- Linha Vermelha: Tempo médio de execução acima de 5 seg.
Configurar a Ordem de Execução dos Objetos
A ordem de execução dos objetos é realizada conforme a ordem de criação/alteração deles. Nesse campo, foi disponibilizada uma tela para que você possa selecionar a ordem de acordo com sua necessidade.
Então, clique no botão "Outras Opções..." e selecione a opção "Criar ordem de execução".
A seleção da ordem é feita através das setas. Assim, após selecionar a ordem desejada, clique em "Salvar Ordem":
Parametrizar Telemetria
Aqui também podemos configurar a quantidade de dias em que a telemetria será armazenada, considerando que o período mínimo é de 7 dias e o máximo de 90 dias:
Para realizar essa, clique no botão Outras Opções... e selecione a opção "Parametrizar telemetria". Após isso, informe a quantidade de dias que a telemetria será armazenada e clique em "Salvar":
Dúvidas frequentes
Quais os tipos de objetos aceitos pelo Gerenciador de Objetos?
São aceitas as regras do negócios do tipo trigger, ou seja, são procedures com comportamento de trigger, sendo que não é possível criar functions e views pelo Gerenciador de Objetos.
As regras de negócios atuais serão transferidas automaticamente para o Gerenciador de Objetos?
Não, as transferências deverão ser realizadas manualmente.
Preciso transferir todas as minhas regras de negócios atuais?
Não, as transferências ficam a critério do cliente. Porém os benefícios oferecidos pela ferramenta só poderão ser avaliados se os objetos estiverem na tela do Gerenciador de Objetos, como por exemplo, telemetria de objetos e histórico de alterações.
Para qual tipo de banco é aplicado o Gerenciador de Objetos?
Atualmente, é aplicado apenas para o banco de dados Oracle.
Como utilizar NEW e OLD no Gerenciador de Objetos?
Para melhor exemplificação utilizaremos a tabela TGFFIN, de forma que, para criar regras através do banco de dados e utilizar NEW e OLD de uma trigger, o executante aplica :NEW ou :OLD.
Assim, na ferramenta do Gerenciador de Objetos a sintaxe é alterada para PKG_DSP_TGFFIN.NEW_. Observe o exemplo abaixo:
O comando :NEW.CODPARC será alterado para: PKG_DSP_TGFFIN.NEW_CODPARC
O comando :OLD.CODPARC será alterado para: PKG_DSP_TGFFIN.OLD_CODPARC
Como utilizar Evento no Gerenciador de Objetos?
Para este, considere a tabela TGFFIN para exemplificação:
A informação do evento vai sempre estar dentro da PKG_DSP_TGFFIN.EVENTO, essa variável sempre contém uma das seguintes informações: INSERTING, UPDATING ou DELETING. A ordem de execução dos objetos é realizada conforme a ordem de criação/alteração dos mesmos. Para fazer essa seleção conforme a sua necessidade, acesse o botão "Outras opções" e selecione "Criar ordem de execução" e por meio das setas, selecione a ordem desejada e clique em "Salvar Ordem".
Resolução de problemas
Caso identifique problemas na tela do Gerenciador de Objetos ou na compilação dos objetos e não consiga resolvê-los, estes deverão ser direcionados para a equipe de suporte Service Desk da Sankhya.
Os demais problemas relacionados às regras de negócios e os códigos SQL, são de responsabilidade do cliente ou do responsável pela criação do objeto.
Comentários
0 comentário
Por favor, entre para comentar.