Bonjour, je rencontre un problème avec une requete Xquery sur une requete SOAP.
donc voila mon code:
lorsque je fais:
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80 let $body :=doc("ModifierRecharge_In.xml")/*:Envelope/*:Body return <soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <tuxedo:appelerTuxedo xmlns:tuxedo="*:com.bouygtel.inthd.tuxedo.ws"> <tuxedo:serviceName>TUXRECHARGE</tuxedo:serviceName> <FML32> <TFLD_IDNVTE>{$body/*:modifierRecharge/*:in/*:VenteId/text()}</TFLD_IDNVTE> <TFLD_ID>{$body/*:modifierRecharge/*:in/*:IdRecharge/text()}</TFLD_ID> <TFLD_LGNUSR>{$body/*:modifierRecharge/*:in/*:InsertUser/text()}</TFLD_LGNUSR> <TFLD_CANAL>{$body/*:ConsulterRecharge/*:in/*:Canal/text()}</TFLD_CANAL> <TFLD_MODE_PAIEMENT>{$body/*:ConsulterRecharge/*:in/*:TypePaiement/text()}</TFLD_MODE_PAIEMENT> {if($body/*:ConsulterRecharge/*:in/*:TypePaiement/text() = "RIB") then <TFLD_CODE_PARAM>{$body/*:ConsulterRecharge/*:in/*:CodeRIB/text()}</TFLD_CODE_PARAM> else ()} {if($body/*:ConsulterRecharge/*:in/*:TypePaiement/text() = "CB") then <TFLD_NUMCB>{$body/*:ConsulterRecharge/*:in/*:CardNum/text()}</TFLD_NUMCB> <TFLD_DAT_EXP>{$body/*:ConsulterRecharge/*:in/*:ExprDate/text()}</TFLD_DAT_EXP> <TFLD_CVV2>{$body/*:ConsulterRecharge/*:in/*:CryptoCVV2/text()}</TFLD_CVV2> else ()} {if($body/*:ConsulterRecharge/*:in/*:TypePaiement/text() = "DAB") then <TFLD_IDNPTN>{$body/*:ConsulterRecharge/*:in/*:IdPartenaire/text()}</TFLD_IDNPTN> <TFLD_REFPAI>{$body/*:ConsulterRecharge/*:in/*:RefAutoPaiement/text()}</TFLD_REFPAI> else ()} {if($body/*:ConsulterRecharge/*:in/*:TypePaiement/text() = "SC") then <TFLD_NUMCAR>{$body/*:ConsulterRecharge/*:in/*:ScNum/text()}</TFLD_NUMCAR> else ()} {if($body/*:ConsulterRecharge/*:in/*:TypePaiement/text() = "GRATUIT") then <TFLD_DESC_PARAM>{$body/*:ConsulterRecharge/*:in/*:ComplInfo/text()}</TFLD_DESC_PARAM> <TFLD_TYP_PARAM>{$body/*:ConsulterRecharge/*:in/*:TypeAttrib/text()}</TFLD_TYP_PARAM> if($body/*:ConsulterRecharge/*:in/*:TypeAttrib/text() = "GSTCO") then ("<TFLD_UNITE>{$body/*:ConsulterRecharge/*:in/*:NbUnit/text()}</TFLD_UNITE> <TFLD_DATDEB>{$body/*:ConsulterRecharge/*:in/*:DateDebValid/text()}</TFLD_DATDEB>") if( count($body/*:ConsulterRecharge/*:in/*:DateFinValid) ) then <TFLD_DATFIN>{$body/*:ConsulterRecharge/*:in/*:DateFinValid/text()}</TFLD_DATFIN> else <TFLD_DUREE_PERIODE>{$body/*:ConsulterRecharge/*:in/*:DureeValid/text()}</TFLD_DUREE_PERIODE> else () else ()} {if( count($body/*:ConsulterRecharge/*:in/*:TitrePayeur)) then <TFLD_CIVCLIENT>{$body/*:ConsulterRecharge/*:in/*:TitrePayeur/text()}</TFLD_CIVCLIENT> else ()} {if( count($body/*:ConsulterRecharge/*:in/*:NomPayeur) ) then <TFLD_NOMCLIENT>{$body/*:ConsulterRecharge/*:in/*:NomPayeur/text()}</TFLD_NOMCLIENT> else ()} {if( count($body/*:ConsulterRecharge/*:in/*:PrenomPayeur) ) then <TFLD_PRENOMCLIENT>{$body/*:ConsulterRecharge/*:in/*:PrenomPayeur/text()}</TFLD_PRENOMCLIENT> else ()} {if( count($body/*:ConsulterRecharge/*:in/*:NumeroRuePayeur) ) then <TFLD_NUMRUE>{$body/*:ConsulterRecharge/*:in/*:NumeroRuePayeur/text()}</TFLD_NUMRUE> else ()} {if( count($body/*:ConsulterRecharge/*:in/*:NomRuePayeur) ) then <TFLD_NOMRUE>{$body/*:ConsulterRecharge/*:in/*:NomRuePayeur/text()}</TFLD_NOMRUE> else ()} {if( count($body/*:ConsulterRecharge/*:in/*:BoitePostalPayeur) ) then <TFLD_BP>{$body/*:ConsulterRecharge/*:in/*:BoitePostalPayeur/text()}</TFLD_BP> else ()} {if( count($body/*:ConsulterRecharge/*:in/*:CodePostalPayeur) ) then <TFLD_CP>{$body/*:ConsulterRecharge/*:in/*:CodePostalPayeur/text()}</TFLD_CP> else ()} {if( count($body/*:ConsulterRecharge/*:in/*:VillePayeur) ) then <TFLD_VILLE>{$body/*:ConsulterRecharge/*:in/*:VillePayeur/text()}</TFLD_VILLE> else ()} {if( count($body/*:ConsulterRecharge/*:in/*:CmplmtAdressePayeur) ) then <TFLD_COMPLEMENT>{$body/*:ConsulterRecharge/*:in/*:CmplmtAdressePayeur/text()}</TFLD_COMPLEMENT> else ()} {if( count($body/*:ConsulterRecharge/*:in/*:TelPayeur) ) then <TFLD_TELDOM>{$body/*:ConsulterRecharge/*:in/*:TelPayeur/text()}</TFLD_TELDOM> else ()} {if( count($body/*:ConsulterRecharge/*:in/*:TelProPayeur) ) then <TFLD_TELBU>{$body/*:ConsulterRecharge/*:in/*:TelProPayeur/text()}</TFLD_TELBU> else ()} {if( count($body/*:ConsulterRecharge/*:in/*:CodePaysPayeur) ) then <TFLD_PAYS>{$body/*:ConsulterRecharge/*:in/*:CodePaysPayeur/text()}</TFLD_PAYS> else ()} {if( count($body/*:ConsulterRecharge/*:in/*:RaisonSocialPayeur) ) then <TFLD_RAISONSOC>{$body/*:ConsulterRecharge/*:in/*:RaisonSocialPayeur/text()}</TFLD_RAISONSOC> else ()} </FML32> </tuxedo:appelerTuxedo> </soapenv:Body>
j'ai une erreur du type:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 {if($body/*:ConsulterRecharge/*:in/*:TypePaiement/text() = "CB") then <TFLD_NUMCB>{$body/*:ConsulterRecharge/*:in/*:CardNum/text()}</TFLD_NUMCB> <TFLD_DAT_EXP>{$body/*:ConsulterRecharge/*:in/*:ExprDate/text()}</TFLD_DAT_EXP> <TFLD_CVV2>{$body/*:ConsulterRecharge/*:in/*:CryptoCVV2/text()}</TFLD_CVV2> else ()}
alors que si je modifie mon if en
Code : Sélectionner tout - Visualiser dans une fenêtre à part Query: <P:\xxxxx\ModifierRecharge_PStoBS.xq>, line 17, column 26: [XPST0003] syntax error, unexpected "'>'", expecting "'else'"
tout marche bien, comment dois-je ecrire ma requete pour que le then puisse renvoyer plusieurs "ligne"?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 {if($body/*:ConsulterRecharge/*:in/*:TypePaiement/text() = "CB") then <TFLD_NUMCB>{$body/*:ConsulterRecharge/*:in/*:CardNum/text()}</TFLD_NUMCB> else ()}
Merci d'avance
Partager