bonjour,

je n'aurai qu'une seul question... pourquoi cela se compile sans problème mais dès que je fais

Code : Sélectionner tout - Visualiser dans une fenêtre à part
select PKG_RIGHTMNGT.field_access_right('f')  from dual
j'ai l'erreur suivante...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
ERROR:
ORA-19160: XP0003 - erreur de syntaxe : nom de variable . non valide
ORA-06512: a "D47.PKG_RIGHTMNGT", ligne 6
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
create or replace
PACKAGE PKG_RIGHTMNGT AS
 
  res XMLTYPE ;  
  xmlquery_string VARCHAR2(4000) ;
 
  function field_access_right( d47profile_in IN VARCHAR2 ) return XMLTYPE ;
 
END PKG_RIGHTMNGT;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
create or replace
PACKAGE BODY PKG_RIGHTMNGT AS  
 
  function field_access_right( d47profile_in IN VARCHAR2 ) return XMLTYPE  AS  
  BEGIN    
    xmlquery_string := '<fields> {for $xmlname in doc("/home/D47/xml_templates/xml_templates_fields.xml")/FIELDS/XMLNAME return <field id="{$xmlname/@id}" type="{$xmlname/@type}">{$xmlname/'||d47profile_in||'/text()}</field></fields>' ;
    SELECT XMLQuery( 'xmlquery_string' RETURNING CONTENT) into res from dual ;
    RETURN res ;    
  END field_access_right;
 
END PKG_RIGHTMNGT;
merci d'avance.