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.

 

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