Report ignore les parametres envoyés par form
Bonjour.
1-Tout d'abord l'environnement:
base de données: Release 9.2.0.8.0
version:
-forms :10.1.2.0.2
-report: 10.1.2.0.2
2- J'ai remarqué qu'en enregistrant le report au format RDF forms ne le voit pas. Dès que le fichier est mis au format par défaut JSP forms le voit.
En ajoutant des paramètres le report s'exécute sans erreur et affiche une page ne contenant que les entêtes de colonne. Ci-dessous le bout de code qui lance le report à partir de forms:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
|
DECLARE
report_id REPORT_OBJECT;
report_job_id VARCHAR2(200);
rep_status VARCHAR2(200);
JOB_NUMBER number;
server_name VARCHAR2(200);
resultat VARCHAR2(10);
pl_id ParamList;
BEGIN
server_name := 'serv';
pl_id := Get_Parameter_List('test');
IF NOT Id_Null(pl_id) THEN
Destroy_Parameter_List( pl_id );
END IF;
pl_id := Create_Parameter_List('test');
Add_Parameter(pl_id,'debut',TEXT_PARAMETER,:block3.txt);
add_parameter(pl_id, 'fin', TEXT_PARAMETER,:block3.text2);
IF get_application_property(user_interface) = 'WEB' THEN
report_id:= FIND_REPORT_OBJECT('REPORT5');
SET_REPORT_OBJECT_PROPERTY(report_id,REPORT_SERVER , server_name);
SET_REPORT_OBJECT_PROPERTY(report_id,REPORT_DESTYPE,CACHE);
SET_REPORT_OBJECT_PROPERTY(report_id,REPORT_DESFORMAT,'PDF');
report_job_id := RUN_REPORT_OBJECT(report_id);
rep_status:=REPORT_OBJECT_STATUS(report_job_id);
WHILE rep_status IN ('RUNNING','OPENING_REPORT','ENQUEUED')
LOOP
rep_status := report_object_status(report_job_id);
END LOOP;
IF rep_status='FINISHED' THEN
message('---- Etat executée avec succée ----');
resultat := 'OK';
JOB_NUMBER := length(server_name) + 2;
WEB.SHOW_DOCUMENT ('/reports/rwservlet/getjobid'||substr(report_job_id,JOB_NUMBER)||'?server=' || server_name ,'_BLANK');
ELSE
message('Erreur d execution: '||rep_status);
resultat := 'NO';
END IF;
ELSE
report_id:= FIND_REPORT_OBJECT('REPORT5');
SET_REPORT_OBJECT_PROPERTY(report_id,REPORT_SERVER ,'');
SET_REPORT_OBJECT_PROPERTY(report_id,REPORT_DESTYPE,SCREEN);
report_job_id := RUN_REPORT_OBJECT(report_id);
resultat := 'OK';
END IF;
END; |