Bonjour,

Lors d'une migration 6i vers 11G, j'ai recompilé des reports qui étaient lancés directement du menu.
Après avoir fait toutes les modifications nécessaires dans le menu, j'ai testé mes reports.

Ils se lancent sans souci, mais en 6i, le Runtime Parameter Form s'affichait, et l'utilisateur devait rentrer certains paramètres (code article par exemple).
En 11G, aucune demande, le lancement se fait, et forcément mon report ne ressort aucune information.

Est-ce une modification à faire au niveau de mes reports ou au niveau de mon appel au reports à travers forms ?

Voici le code que j'utilise actuellement pour appeler mes reports. J'ai essayé de le bidouiller le maximum possible pour trouver la bonne configuration, mais soit je ne cherche pas au bon endroit, soit j'ai tout essayé sauf la bonne méthode.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
v_report_id:= FIND_REPORT_OBJECT('RP2RRO');
 
  SET_REPORT_OBJECT_PROPERTY(v_report_id, REPORT_EXECUTION_MODE,RUNTIME);
  SET_REPORT_OBJECT_PROPERTY(v_report_id,REPORT_COMM_MODE,ASYNCHRONOUS);
  SET_REPORT_OBJECT_PROPERTY(v_report_id,REPORT_DESTYPE, CACHE);
  SET_REPORT_OBJECT_PROPERTY(v_report_id,REPORT_DESFORMAT,'PDF');
  SET_REPORT_OBJECT_PROPERTY(v_report_id,REPORT_SERVER, 'RptSvr');
  SET_REPORT_OBJECT_PROPERTY(v_report_id, REPORT_OTHER, 'ENVID="' || 'mon_env' || '"');  
  SET_REPORT_OBJECT_PROPERTY(v_report_id,REPORT_FILENAME, rep);
 
  vc_report_job_id := RUN_REPORT_OBJECT(v_report_id);
  vc_rep_status:= REPORT_OBJECT_STATUS(vc_report_job_id);
 
	WHILE vc_rep_status IN ('RUNNING','OPENING_REPORT','ENQUEUED')LOOP
		vc_rep_status:= REPORT_OBJECT_STATUS(vc_report_job_id);
	END LOOP /* Wait for Report to be finished */;
 
 
 IF vc_rep_status='FINISHED' THEN
    :system.message_level := 5;
    commit_form;
 		:system.message_level := 0;
 
   web.show_document('/reports/rwservlet/getjobid'||
   substr(vc_report_job_id,instr(vc_report_job_id,'_',-1)+1)||
        '?server=rptsvr');
 
  ELSIF vc_rep_status NOT IN ('RUNNING','OPENING_REPORT','ENQUEUED') THEN
  	message (vc_rep_status||' Report output aborted');
  END IF;
Et voici le code en 6i, code qui fonctionne.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
Run_Product(REPORTS, rep, ASYNChRONOUS, RUNTIME, FILESYSTEM, TO_CHAR(NULL));
Merci d'avance pour vos réponses.