Bonjour,
Je sais le titre est pas très clair mais c'est dure à résumé en quelques mots.![]()
Bon voila, j'ai 1 Package a l'intérieur duquel j'ai 3 Procédure stockées :
Voici mon code actuel :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Proc A appele Proc B et Proc C Proc B renvoi un curseur Proc C renvoi un curseur Et Proc A devrait renvoyer un curseur qui devrait plus ou moins etre une concaténation des deux curseurs.
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 create or replace package PA_COURRIER is -- Public type declarations type CourrierCurType is REF CURSOR; PROCEDURE PR_ADRESSE_CLIENT (cur_courrier OUT CourrierCurType , pClient NUMBER , pEtab NUMBER , pAffaires NUMBER , pBenef VARCHAR2 , pActivite VARCHAR2 , pAssocie NUMBER , pTypeRequete NUMBER); end PA_COURRIER;Mon probleme principale est que je ne vois pas comment réutilisé mon curseur dans la proc A?
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 create or replace package body PA_COURRIER is PROCEDURE PR_ADRESSE_CLIENT (cur_courrier OUT CourrierCurType , pClient NUMBER , pEtab NUMBER , pAffaires NUMBER , pBenef VARCHAR2 , pActivite VARCHAR2 , pAssocie NUMBER , pTypeRequete NUMBER) As Begin Open cur_courrier for select civ.lib_civ, civ.lib_civ2, cli.lib_prenomcli, cli.lib_nom , cli.lib_numvoi, typvoi.lib_typvoi, cli.lib_voi , cli.lib_adr2, cli.lib_adr3 , cli.cod_pst, cli.lib_vilcli, pay.lib_pay from op.t_clients cli , op.tr_type_voie typvoi , op.tr_pays pay , op.tr_civilite civ where num_cli = pClient and cli.cod_typvoi = typvoi.cod_typvoi (+) and cli.cod_pay = pay.cod_pay (+) and civ.cod_civ (+) = cli.cod_civ ; End PR_ADRESSE_CLIENT; end PA_COURRIER;
N'hésitez pas à poser des questions si je suis pas clair, ah oui encore une info Oracle8i, VB6.
Merci[/code]
Partager