Procedures, Packages y Oracle PL/SQL

2 replies [Último envío]
Offline
Joined: 29/12/2011
Puntos: 4

Saludos

Estoy comenzando en estos de las Base de Datos de Oracle mi problematica es la siguiente:

He creado el siguiente procedimiento a travez de Enterprise Manager (Consulta):

CREATE OR REPLACE PROCEDURE ver_orden(ordenv number) 
is  
 v_output_file1 utl_file.file_type;   
 orden  Varchar2 (10); 
 cliente       Varchar2 (10);    
 Referencia Varchar2 (10);    
begin   
v_output_file1 := utl_file.fopen('TEST_DIR', 'miguel.txt', 'W'); v_output_file1 := utl_file.fopen ('test_dir', 'miguel.txt', 'W');   
  select t$orno, t$cuno ,t$refe into orden, cliente, referencia from ttdsls928100 where orden=ordenv;  
 DBMS_OUTPUT.PUT_LINE('Orden:'||orden|| 'Cliente:' ||Cliente|| 'Referencia' ||referencia);  
 EXCEPTION  
    WHEN NO_DATA_FOUND THEN  
       DBMS_OUTPUT.PUT_LINE('No hemos encontrado ordenes');   
utl_file.fclose_all; utl_file.fclose_all;    
end;  

 

Cuando lo compilo me indica que no tiene errores.

Luego en el Oracle Scheduler > Trabajos

Creo un trabajo para ejecutar llamando este procedimiento:

begin;
  execute ver_orden('25030');
end;

Cuando ejecuto el trabajo me da un error:

ORA-06550: línea 1, columna 728:  PLS-00103: Encountered the symbol ";" when expecting one of the following:  (begin case declare exit for goto if loop mod null pragma raise return select update while  with <an identifier> <a double-quoted delimited-identifier> <a bind variable>  << continue close current delete fetch lock insert open rollback savepoint set sql execute commit forall merge pipe purge 

Y no entiendo este error, por lo que espero sus comentarios para ver en que estoy fallando, si estoy haciendo algo incorrecto.

Atentamente

pro_miguel

 

 

Imagen de Antonio Rivas
Offline
Joined: 24/09/2011
Puntos: 3

 Hola Miguel,

 

Simplemente te sobra el ; después del begin cuando declaras el trabajo en el scheduler. 

 

Salud!

Offline
Joined: 29/12/2011
Puntos: 4

Antonio

Saludos

          

            Gracias por tu ayuda. es que esto es nuevo para nosotros que estamos trabajando desde hace 6 meses con oracle. y estamos realizando pruebas para definir todas nuestras tareas a traves del Oracle Scheduler y no por el crontab.

 

Enviar un comentario nuevo

El contenido de este campo se mantiene como privado y no se muestra públicamente.

Más información sobre opciones de formato

Al hacer este envío, aceptas la política de privacidad de Mollom (servicio antispam).
Si no estás registrado, recuerda que tu comentario no se publicará hasta que no lo hayamos revisado

 

Gestion del Conocimiento    |   Business Intelligence y Analítica   |    Bases de Datos   |     ERP    |     CRM     |   Cloud computing    |   Tendencias IT