Bonjour tout le monde,
J'ai crée la procédure stockée suivante :
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
32
33
34
35
36
37
38
39
40
CREATE OR REPLACE FUNCTION "mabase"."get_the_results" (varchar) RETURNS "pg_catalog"."refcursor" AS
$body$
DECLARE
  CodeId ALIAS FOR $1;
  curRet REFCURSOR;
  SQL_QUERY varchar;
BEGIN
      SQL_QUERY := 'SELECT sp_code_sq_pk    ,      
             sp_gsp_code_fk   ,     
             A.CDF_NOM        AS STATUT_LABO ,          
             B.CDF_NOM        AS SP_LISTE    ,         
             sp_catc_code_fk  ,    
             sp_ceph_code_fk  ,   
             sp_cge_code_fk   ,     
             sp_pr_code_fk    ,      
             sp_type_spe      ,        
             sp_gref_fk       ,         
             sp_nom           ,           
             sp_nomcomp       ,         
             sp_ph            ,           
             sp_cipucd        ,         
             sp_datecr        ,        
             sp_datemj        ,          
             sp_nl            ,             
             sp_aphp          ,            
             sp_origine_gene  ,    
             sp_nomlong		  ,
             SP_CIPUCD13	  ,
		     SP_MONO_VIRTUELLE AS MONO_VIR      
      FROM   theriaque.SP_SPECIALITE,
             theriaque.CDF_CODIF A, 
             theriaque.CDF_CODIF B
      WHERE  SP_CDF_SLAB_CODE_FK = A.CDF_CODE_PK 
      AND    SP_CDF_LI_CODE_FK   = B.CDF_CODE_PK
      AND    A.CDF_NUMERO_PK     = ''15'' 
      AND    B.CDF_NUMERO_PK     = ''08''
      AND    SP_CODE_SQ_PK = CAST('||CodeId||' AS NUMERIC)';
open curRet for execute SQL_QUERY;
return curRet;
end;
J'ai voulu afficher les résultats renvoyée par cette procédure depuis une petite application C++.
J'ai utilisé la librairie libpq, mais je n'arrive pas à afficher les résultats vu que lorsque je récupère les enregistrements renvoyés dans un CURSOR et puis j'essai de faire le parcours de ce curseur j'ai toujours le nom de la procédure qui est affiché avec comme valeur "unnamed portal".
Est ce que quelqu'un a une idée où se trouve mon problème et qu'est ce que je dois faire pour corriger ce problème ?
Merci d'avance pour votre aide.
Cordialement.