Oi para todos,
 
    Quero agradecer a resposta de todos, mas nenhuma ainda chegou ao ponto que eu quero. Talvez tenha me expressado mal.
    O problema de usar o dbms_utility.compile_schema é que ele é muito demorado e no banco de produção isso pode gerar erros em outras aplicações que estão sendo executadas (pois as procedures ficam invalidas por alguns segundos).
    Na situação de retornar FALSE não resolve o problema, porque a procedure acaba não sendo executada. Alguém utiliza Oracle com Centura? Nunca passaram por esse problema?
    Uma solução que criei, muito porca e temporária, é criar um script no Oracle que verifica todas as procedures invalidas e recompila. É melhor do que o DMBS_utility.compile_schema que recompila até as validas.
    Aproveito para tentar resolver outro problema. Alguém já criou algum tipo de procedure que retorne registro a registro do Oracle para o Centura? Fiz isso em SQLServer, mas estava querendo utilizar isso no Oracle.
-----Original Message-----
From: Vivian <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED] <[EMAIL PROTECTED]>
Date: Sexta-feira, 12 de Maio de 2000 17:50
Subject: Re: [sqlwin] Procedure Invalida

Oi Cezar,
 
é gerado algum erro na sua aplicação, no momento de execução? Pois se você conseguir o número do erro, pode dar um Return FALSE e além de ele não aparecer, a execução continua normalmente:

On SAM_SqlError   
 ! Extrai os Argumentos do Erro recebido (SQL)
 Call SqlExtractArgs( wParam, lParam, hSqlErro, nErro, nPos )
 !
 If nErro = 203
  Return FALSE
 
Espero ter ajudado.
 
Boa Sorte!!
 
Vivian
-----Mensagem original-----
De: Cezar Alexandre R. Baldi <[EMAIL PROTECTED]>
Para: [EMAIL PROTECTED] <[EMAIL PROTECTED]>
Data: Quinta-feira, 11 de Maio de 2000 23:15
Assunto: [sqlwin] Procedure Invalida

Oi Galera,
 
    Estou com um problema e não sei se tem solução. Quando modifico uma tabela ou procedure no Oracle torna varias procedures invalidas (embora não tenha erro de compilação nas procedures). Isso me obriga a recompilar todas as procedures, pois o Centura não roda uma procedure invalida.
    Teria como fazer o centura rodar a procedure invalida do Oracle como no SQLPlus? No SQLPlus quando rodo uma procedure invalida ela fica valida automaticamente e roda.
    Não é simples recompilar todas as procedures com DBMS (pois o banco tem muitas procedures) e recompilar na mão é pior ainda (mesmo com o script criado por mim).
    Alguém tem uma dica?
 
Plataforma
Centura 1.5
Oracle 8i (UnixWare)
 
Agradeço
 
Cézar Alexandre R. Baldi

Responder a