4034

Tarefas Automáticas do Banco de Dados

Permite controlar as tarefas(jobs) executadas automaticamente pelo Banco de Dados Oracle. São permitidas as funções de inclusão, alteração, execução instantânea, e deleção.

Inclusão - Os campos necessários a inclusão estão listados abaixo:

  • Tipo de pacote: JOB ou CTX. Use JOB. Para utilizar o CTX é necessário logar na aplicação como dono do objeto. Ex: ERP;
  • Próxima Execução: Data e hora da primeira execução da tarefa;
  • Regra de Execução: Intervalo de execução da tarefa, ou seja, de quanto em quanto tempo será executada a tarefa;
  • Código PL/SQL: Comando SQL a ser executado, pode ser qualquer construção SQL, Inserts, Pacotes, funções, etc;

Alteração - Os campos que permitem alteração, estão listados abaixo:

  • Ativo: Sim-Torna a Tarefa Ativa(pronta para execução) ou Não-A Tarefa ficará inativ(não entrará em execução);
  • Regra de Execução: Intervalo de execução da tarefa, ou seja, de quanto em quanto tempo será executada a tarefa;

Execução Instantânea - O duplo click, fará a tarefa ser executada imediatamente;

Deleção - Fará a deleção da tarefa;


Programas vinculados:

Apresenta script de Criação da Tarefa - Mostra o script para rodar no PL/SQL.


Informação Importante:

Para tipo CTX, o script SQL deverá ser rodado diretamento no SQL, logado como dono do objeto. Segue alguns exemplos:

  • call ctx_schedule.startup ('erp.bas$_cadg_end_ctx_idx', 'SYNC', 2);
  • call ctx_schedule.startup ('ERP.COM$_LICITACAO_CTX_IDX', 'SYNC', 1440);
  • call ctx_schedule.startup('erp.bas$_cadg_end_ctx_idx','OPTIMIZE FAST',1440,to_date('09/03/2005 21:30:00','dd/mm/rrrr hh24:mi:ss'));
  • call ctx_schedule.stop('erp.bas$_cadg_end_ctx_idx', 'SYNC');
  • call ctx_schedule.stop('ERP.COM$_LICITACAO_CTX_IDX', 'SYNC');
  • ctxsys.ctx_ddl.sync_index('ERP.COM$_LICITACAO_CTX_IDX');

Exemplo de execução de Tarefas Automáticas:

Para verificar as alterações do registro do contribuinte no Cadastro Geral estão sendo indexadas.Devemos indentificar a tarefa como no exemplo abaixo:

  • Se verificar que o número de falhas é maior que 0,clicar em novo para adicionar uma nova tarefa,a mesma execução e mesmo código PL/SQL: