Bonjour,
Ayant tout d'abord voulu faire une requête recursive (disponible a priori selon le roadmap que dans la version 3), j'ai voulu faire une procedure récusive toute bête mais je ne réussi pas a renvoyer mes données...
Si quelqu'un peux me donner un conseil.
problématique :
j'ai une table user avec les données suivantes :
- USER_ID // ID de l'utilisateur
- USER_SUBSTITUTE_ENABLED // champ pour savoir si la suppléance est activé
- SUBBTITUTE_ID // id du suppléant
je ne récupère rien, pourquoi donc ? (dans la base, il y a bien des suppléant actifs et je met 5 en profondeur)
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
31 SET TERM ^ ; CREATE PROCEDURE GET_USER_MSG ( ASUBSTITUTE_ID INTEGER, ADEPTH INTEGER) RETURNS ( AUSER_ID INTEGER) AS DECLARE VARIABLE TMP_USER_ID INTEGER; begin FOR SELECT USER_ID FROM USER WHERE SUBSTITUTE_ID =:ASUBSTITUTE_ID AND USER_SUBSTITUTE_ENABLED = 1 INTO TMP_USER_ID DO BEGIN IF (DEPTH > -1) then BEGIN EXECUTE PROCEDURE GET_USER_MSG (TMP_USER_ID, :DEPTH-1) RETURNING_VALUES :AUSER_ID; suspend; END END end^ SET TERM ; ^
Merci
Partager