Bonjour à tous,
Je suis toujours dans mon projet des prix et des natures de prix et j'ai une question concernant l'extraction d'une sous-chaine.
En effet, par un fichier de transformation xslt, je dois être amenée à effectuer l'action suivante :
Voici mon XML source :
Dans ce document, on voit que les prix sont regroupés par natures (la balise Groupe).
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59 <Detail> <Groupe GroupID="3" GroupNom="" GroupSem="PRO"> <Groupe GroupID="02" GroupNom="TRAVAUX PREPARATOIRES" GroupSem="SCH"> <Article ArticleCode="1.2151" ArticleID="4"> <prixID>2151</prixID> <quantite>1</quantite> </Article> <Article ArticleCode="1.1502" ArticleID="5"> <prixID>1502</prixID> <quantite>1</quantite> </Article> </Groupe> <Groupe GroupID="03" GroupNom="TERRASSEMENTS" GroupSem="SCH"> <Article ArticleCode="2.9219c" ArticleID="6"> <prixID>9219c</prixID> <quantite>0</quantite> </Article> <Article ArticleCode="2.9219a" ArticleID="7"> <prixID>9219a</prixID> <quantite>250</quantite> </Article> </Groupe> <Groupe GroupID="04" GroupNom="ASSAINISSEMENT - DRAINAGE" GroupSem="SCH"> <Article ArticleCode="3.5405" ArticleID="8"> <prixID>5405</prixID> <quantite>150</quantite> </Article> </Groupe> </Groupe> </Detail>
Dans mon document de sortie, j'aimerais rajouter une balise qui fait référence à un "code" du groupe, différent du GroupID, qui "représente" les prix contenus dans ce groupe en se servant d'une partie de leur identifiant.
Je vois que ça semble compliqué, donc, je prend un exemple de mon code ci-dessus :
Dans le groupe "TRAVAUX PREPARATOIRES", il y-a deux prix.Les identifiants de ces prix sont :
1.2151 et 1.1502. Ce que je veux récupérer pour mettre dans ma nouvelle balise pour Groupe et 1., car ces deux prix commencent par 1.
Je ne sais pas si j'ai été très claire dans l'explication de mon problème, n'hésitez pas à répondre si je dois reformuler ou ré expliquer mieux quelque chose.
Je vous remercie d'avance pour votre aide ou vos pistes
Partager