Bonjour,

pour faire suite à mon problème, je voudrais passer mon fichier .xml en paramètre et ne plus avoir son contenu en dur dans la requête.

J'ai essayé avec spool comme dans un sqlloader mais apparemment ça ne marche pas.

Voici mon code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
select X.MATRIC, Y.PHTYPE,Y.NATURE,to_number(RELIQUAT),to_number(Montant)
from
xmltable('/DocPaye/Agent' passing xmlparse (content spool DocPaye.xml) 
columns MATRIC char(6) path './Matricule/@V',PRECOMPTE xmltype path './PrecompteObligatoire') X
,xmltable('/PrecompteObligatoire' passing X.PRECOMPTE 
columns PHTYPE char(3) path './Type/@V',
nature char(3) path 'Nature/@V',
valini char(10) path 'ValIni/@V',
reliquat  char(18) path 'Reliquat/@V',
montant char(18) path 'Montant/@V') (+) Y;
 
exit;
Le fichier DocPaye.xml est pour l'instant au même endroit que mon .sql

Merci de votre aide.