Bonjour, j'ai suivi une discussion sur la même erreur que moi.
J'ai pas trouvé mon trouble même en suivant l'exemple.
Entre le message 9 et 10 dans l'appel de Reports j'ai l'erreur frm-41214 Éxécution du rapport impossible???
Je comprends vraiment pas d'où viens le problème.
En passant, j'ai dans Forms un État GAB_RAPPORT
mode exécution : Batch
Mode communication: Synchone
Type éata cible : Cache
Format état : pdf
Merci d'avance!!!
Mon bouton:
DECLARE
pl_id PARAMLIST;
pl_name VARCHAR2(10);
p1 varchar2(50);
BEGIN
pl_name := 'GDA2700L';
pl_id := get_parameter_list(pl_name);
IF NOT ID_NULL(pl_id) THEN
destroy_parameter_list(pl_id);
END IF;
pl_id := create_parameter_list(pl_name);
IF ID_NULL(pl_id) THEN
VDQ_PKL_FORM_ERRORS.PUSH(VDQ_PKL_FORM_ERRORS.MSGGETTEXT
(16, 'Echec de l''appel à la procédure ''<p1>'''), 'E', 'OFG', 16);
VDQ_PKL_FORM_ERRORS.RAISE_FAILURE;
END IF;
p1 := :proj.projnon;
vdq_prl_ajoute_parametre(pl_id, 'PAR_P_PROJ_NO', TEXT_PARAMETER, P1);
vdq_prl_ajoute_parametre(pl_id, 'PAR_P_TRI',
TEXT_PARAMETER, 'Descendant');
VDQ_PRL_APPEL_RAPPORT('GDA2700R',pl_name);
END;
Mon appel de Reports:
PROCEDURE VDQ_PRL_APPEL_RAPPORT_WEB(
P_NOM_RAPPORT IN VARCHAR2,
P_REPORT_OTHER IN VARCHAR2) IS
rep_code_environ varchar2(1);
rep_server_name varchar2(100);
rep_url varchar2(500);
rep_id REPORT_OBJECT ;
rep_nom_job varchar2(100);
rep_status varchar2(100);
BEGIN
VDQ_PRL_TRACE('PLL: VDQ_PRL_APPEL_RAPPORT_WEB',FALSE);
rep_id := FIND_REPORT_OBJECT('GAB_RAPPORT');
if id_null (rep_id) then
message('IMPOSSIBLE d''ouvrir GAB_RAPPORT!!!');
message('IMPOSSIBLE d''ouvrir GAB_RAPPORT!!!');
return;
end if;
VDQ_PRL_CHECK_VALIDATION(NAME_IN('SYSTEM.CURRENT_FORM'), '', 3);
message('0');
rep_server_name := ('rep_oradev2_middle');
message('1');
rep_url := ('http://oradev2.ville.quebec.qc.ca:7780/reports/rwservlet/
getjobid=');
message('2');
SET_REPORT_OBJECT_PROPERTY(rep_id, REPORT_FILENAME,
p_nom_rapport||'.rdf');
message('3');
SET_REPORT_OBJECT_PROPERTY(rep_id, REPORT_OTHER,
p_report_other);
message('4');
if rep_server_name <> 'null' then
SET_REPORT_OBJECT_PROPERTY(rep_id, REPORT_SERVER,
rep_server_name);
end if;
message('5');
SET_REPORT_OBJECT_PROPERTY(rep_id, REPORT_COMM_MODE,
synchronous);
message('6');
SET_REPORT_OBJECT_PROPERTY(rep_id, REPORT_EXECUTION_MODE,
batch);
message('7');
SET_REPORT_OBJECT_PROPERTY(rep_id, REPORT_DESTYPE, cache);
message('8');
SET_REPORT_OBJECT_PROPERTY(rep_id, REPORT_DESFORMAT,'PDF');
message('9');
--VDQ_PRL_JOURNAL_RAPPORTS('ATTENTE');
-- Bloc "RUN_REPORT_OBJECT"
-- Le rapport s'execute ici etant donne qu'on execute en
-- mode SYNCHRONE
BEGIN
message('10');
rep_nom_job := RUN_REPORT_OBJECT(rep_id);
message('11');
END;
message('12');
if rep_server_name <> 'null' then
message('13');
rep_url := rep_url||SUBSTR(rep_nom_job, INSTR(rep_nom_job,'_',-1)+1)||'?
server='||rep_server_name;
message('14');
else
message('15');
rep_url := rep_url||SUBSTR(rep_nom_job, INSTR(rep_nom_job,'_',-1)+1);
end if;
message('16');
-- Id = 0 donc on a un petit problème...
if SUBSTR(rep_nom_job, INSTR(rep_nom_job,'_',-1)+1) = 0 then
message('ID= 0 JOB INTROUVABLE!!!');
message('ID= 0 JOB INTROUVABLE!!!');
-- RAISE FORM_TRIGGER_FAILURE;
else
message('17');
end if;
-- Bloc "REPORT_OBJECT_STATUS"
BEGIN
message('18');
rep_status := REPORT_OBJECT_STATUS(rep_nom_job);
EXCEPTION
WHEN OTHERS THEN
V_MESSAGE_ERREUR := SQLERRM;
message('19');
-- Bloc "SHOW_DOCUMENT"
BEGIN
IF rep_status = 'FINISHED' THEN
message('20');
WEB.SHOW_DOCUMENT(rep_url);
END IF;
EXCEPTION WHEN OTHERS THEN
V_MESSAGE_ERREUR := SQLERRM;
END;
END;
Partager