Histórico da Página
Objetivo | Criar triggers para monitoramento e/ou integração com o serviço Totvs Apps, quando os parâmetros de jornalização indicarem integração do tipo Trigger, e associação aos eventos de replication para monitoramento. Criação de policies para integração com o serviço Totvs Apps quando os parâmetros de jornalização indicarem integração do tipo CDC. Criação, de forma dinâmica nos ambientes Progress, do campo fwk_last_modif e do indice idx_fwk_last_modif quando os parâmetros de jornalização indicarem integração do tipo Trigger. |
Programa | AU0108 |
Pré-Requisitos | É pré-requisito para a execução dessa função:
Para que a geração de triggers não ocorra com problemas, é obrigatório que todas as tabelas do banco que será gerado as triggers, contenham um índice criado. Caso não seja especificado, irá ocorrer um erro de compilação no momento da geração das triggers. |
Visão Geral | Essa função atualiza o dicionário de dados; portanto é necessário que a conexão seja monousuário ou tenha apenas um usuário conectado à base de dados para evitar erro de Database Status. Após o processo de geração de triggers, a sessão do progress deve ser encerrada. Os processos de monitoramento ou jornalização será iniciado somente após abrir uma nova sessão do progress. Caso a versão do Progress não seja FULL, é exibida mensagem com informações de como proceder para a atualização do banco de dados, possibilitando ainda efetuar a atualização imediatamente. Caso seja utilizado o parâmetro -cache, deve-se atualizar o arquivo de cache para que o monitoramento das tabelas e atributos seja efetuado. Para tanto, após a geração das triggers, deve ser executado o seguinte comando para cada base de dados: SAVE CACHE COMPLETE <nome da base de dados> to “<nome completo do arquivo de cache>”. Exemplo: SAVE CACHE COMPLETE mgind to “c:\cache\cachemgind.csh”. Importante: Os triggers para o monitoramento dos atributos e tabelas para base de dados do tipo Oracle, são gerados em PL-SQL. Os triggers para o monitoramento dos atributos e tabelas para base de dados do tipo SQL Server, são gerados em T-SQL. É criado um trigger para cada evento: insert, update ou delete. Os Triggers em PL-SQL ou T-SQL são criados no diretório de Localização definido no cadastro de Base de Dados com extensão .SQL e são automaticamente enviados ao banco de dados. Quando houver integração com o serviço Totvs Apps configurada, caso ambiente não utilize dataservers e a jornalização seja do tipo Trigger, serão gerados nas tabelas integradas um campo de nome fwk_last_modif que será utilizado para jornalizar os dadosa afetados. Importante: Erro Progress 3307 No momento da geração de triggers pode ser apresentado o erro progress 3307 para alguma tabela. Esse erro somente ocorre quando um número muito elevado de atributos é selecionado para monitoramento. O erro é originado em decorrência de uma limitação do tamanho de um segmento de código progress. O limite existente é de 62k e quando esse limite é excedido, o erro é apresentado. Para solucioná-lo, devem ser selecionados menos atributos para serem monitorados na tabela que apresentou erro. Quando se faz necessário a geração de triggers do Módulo Audit Trail com as bases de dados em monousuário A geração das triggers somente deve ser executada com os bancos em monousuário quando: a) For selecionada uma nova tabela para ser monitorada. b) Alguma deixar de monitorar uma tabela. c) For modificado algum dos eventos a serem monitorados para alguma tabela (create, delete ou write). Quando, por exemplo, for incluído um novo atributo a ser monitorado ou for excluído o monitoramento de algum atributo em uma tabela que já estava sendo monitorada, ou ainda, quando for incluído/alterado/eliminado um alerta para algum atributo que já estava sendo monitorado, a geração de triggers pode ser executada com os bancos em multiusuário. Importante: Quando as triggers forem geradas será verificado se houve alguma atualização de tabela, caso tenha ocorrido, será apresentada a mensagem “17006- Alteração de Dicionário”,” A estrutura de algumas tabelas estão incorretas. Para gerar as trigger será necessário executar o programa (aup/au0101g.p) mono-usuário para atualização do dicionário.” Este programa pode ser executado pelo menu opções executar programas ou pelo editor do progress. |
...