Bonjour,

J'ai un bloc pl/sql qui sélectionne plusieurs valeurs ,
je voudrais dans ce même bloc récupérer ces valeurs
pour lancer un autre SELECT :

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
 
 
set serveroutput on ;
DECLARE 
 
cursor cur is 
SELECT parentid,count(parentid) FROM cms_infoobjects6 GROUP BY parentid having count(parentid)>100 ;
res1 integer ;
par1 number(10) ;
Lc$Req varchar2(256);
 
cur1 cur%rowtype ;
 
Begin
 
for cur1 in Cur
loop
par1 := cur1.parentid ;
	exit when cur%notfound;
 
Lc$Req:= 'SELECT count(*) from cms_infoobjects6 where parentid = '||par1  ; 
execute immediate Lc$Req INTO res1 ;
dbms_output.put_line (par1 || ' - ' || res1) ;
 
  end loop ;  
end ;
/
résultat :

SQL> @C:\Oracle\scripts\plsql\Req-BO.sql
35399 - 140
2448 - 138
2386 - 149
2212 - 128
35400 - 141
35351 - 133
27 - 106
546 - 360
2461 - 193

ProcÚdure PL/SQL terminÚe avec succÞs.

SQL>
requête voulue :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
SELECT COUNT(*) FROM CMS_InfoObjects6 WHERE ParentID IN (35400,35351,27,35399,2448....) OR ScheduleStatus = 3;
je ne sais pas comment récupérer les parentid pour lancer cette derniere requête,
je ne suis pas développeur et ne connais pas trop pl/sql .

Pour ceux qui ont reconnu, ce sont des requêtes données par le support
SAP pour trouver les reports posant problème dans le CMS de BO .

cordialement