Informes Proc Llamada
Informes Proc Llamada
Informes Proc Llamada
PROCEDURE IMPRIMIR2 (NOMBRE VARCHAR2, PARAM1 VARCHAR2, DATO VARCHAR2, PARAM2 VARCHAR2,
DATO2 VARCHAR2) IS
repid REPORT_OBJECT;
v_rep VARCHAR2(100);
rep_status Varchar2(20);
BEGIN
repid := find_report_object(NOMBRE);
--
-- Determinamos si se visualizará la ventana de parámetros
SET_REPORT_OBJECT_PROPERTY(repid, REPORT_OTHER, PARAM1||'='||DATO||' '||PARAM2||'='||DATO2);
--SET_REPORT_OBJECT_PROPERTY(repid,REPORT_EXECUTION_MODE, BATCH);
SET_REPORT_OBJECT_PROPERTY(repid,REPORT_EXECUTION_MODE, RUNTIME);
--Fijamos el valor para el tipo de ejecución (SYNCHRONOUS, ASYNCHRONOUS)
SET_REPORT_OBJECT_PROPERTY(repid,REPORT_COMM_MODE, SYNCHRONOUS);
--Fijamos el valor para el tipo de salida(cache, printer, file, mail..)
SET_REPORT_OBJECT_PROPERTY(repid,REPORT_DESTYPE, CACHE);
--fijamos el valor para el formato de salida del reporte (html, pdf, rtf)
SET_REPORT_OBJECT_PROPERTY(repid,REPORT_DESFORMAT,'pdf');
--fijamos el valor para el servidor de reportes que ejecutará el report
SET_REPORT_OBJECT_PROPERTY(repid,REPORT_SERVER,'rep_servidor');
--
--ejecutamos el reporte
v_rep := RUN_REPORT_OBJECT(repid);
rep_status := report_object_status(v_rep);
WHILE rep_status in ('RUNNING','OPENING_REPORT','ENQUEUED') LOOP
rep_status := report_object_status(v_rep);
END LOOP;
if rep_status = 'FINISHED' then
--Visualizamos la salida del reporte
WEB.SHOW_DOCUMENT('/reports/rwservlet/getjobid'||substr(v_rep,instr(v_rep,'_',-1)+1)||'?'||'server=rep_servidor','_blank');
Else
message('error en la ejecucion');
end if;
END;
http://pc_bautista:8889/reports/rwservlet/getserverinfo?server=rep_servidor