<
From version < 2.12 >
edited by Outhman Moustaghfir
on 2021/04/27 17:22
To version < 14.1 >
edited by Assala Chmiti
on 2022/04/14 15:46
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.omoustaghfir
1 +XWiki.achmiti
Content
... ... @@ -1,7 +1,11 @@
1 +{{toc/}}
2 +
1 1  = Introduction =
2 2  
3 - Variable is a container that holds a value and can be called in the iXPath Scenario. The importance of variables is to make flexibility in using some values without referring to their origins.
5 + Variable is a container that holds a value and can be called in the iXPath Scenario. The importance of
4 4  
7 +variables is to make flexibility in using some values without referring to their origins.
8 +
5 5  There are 2 types of  variables: 
6 6  
7 7  * System variables
... ... @@ -9,7 +9,7 @@
9 9  
10 10  To call a variable, we should put it inside ${}. Eg: for a variable named ‘iXVar’, it can be called as ${iXVar}.
11 11  
12 -== System variables ==
16 +== System variables ==
13 13  
14 14  System variables define some default values in the system, and they can be called by users several times.
15 15  
... ... @@ -21,15 +21,15 @@
21 21  1*. env: name of the environment.
22 22  1*. inputFile: this variable collect all input files in one list.
23 23  1. For a **mail listener : **
24 -1*. iXFrom: refers to the sender of the mail.
25 -1*. iXSubject: refers to the mail subject.
28 +1*. iXFrom: refers to the sender of the mail that we are listening on.
29 +1*. iXSubject: refers to the Subject of the mail that we are listening on.
26 26  1. For an **AS2 listener **: 
27 -1*. iXFrom: return the value of the AS2 sender.
31 +1*. iXFrom: return the value of the source of the AS2 that we are listening on.
28 28  1. All connectors declare a system variable of type BpmnFile, the connector variable uses a bunch of functions to handle the list of BpmnFiles that will be detailed in the table below :
29 29  1*. (((
30 30  (% style="width:884px" %)
31 31  |(% style="width:150px" %)**Function**|(% style="width:365px" %)**Description**|(% style="width:367px" %)**Use**
32 -|(% style="width:150px" %)Get(i) |(% style="width:365px" %)Get a file with index number "i" from the BpmnFile list, the indexes begin from 0 as the first element, and so on.|(% style="width:367px" %)(((
36 +|(% style="width:150px" %)Get( x ) |(% style="width:365px" %)Get a file with index number "x" from the BpmnFile list, the indexes begin from 0 as the first element, and so on.|(% style="width:367px" %)(((
33 33  if we have an XmlToXml connector named "XmlToXml1" we can get __the second__ BpmnFile as :
34 34  
35 35  ${XmlToXml1.get(1)}
... ... @@ -54,12 +54,87 @@
54 54  ${XmlToXml1.get(1).type()}
55 55  )))
56 56  )))
61 +1. Variables used to charge the connectors properties in the xsl file without charging them in the scenario manually. Those variables helps reduce time consuming and avoid reputation in the scenario elements:
62 +1*. For the SendFTP et SendSFTP, there are 3 variables:
63 +1**. __**i​​XTo**__: used to charge the property **Destination **of the connector in the XSL file.
64 +1**. __**iXServerConfig**__: used to charge the property **Server Config** of the connector in the XSL file.
65 +1**. __**iXDirectory**__: used to charge the property **Folder** of the connector in the XSL file.
66 +1**. [[image:SendFtp.png]]
67 +1*. For the CallScenario Connector, there are 3 variables:
68 +1**. **iXScenario**: used to charge the property **Scenario **of the connector in the XSL file.
69 +1**. **iXSwitchEnv**: is a boolean variable used to charge the checkbox property **switch environnement** of the connector in the XSL file.
70 +1**. **iXEnv**: used especially when the developper wants to switch the environment and use another scenario in another environment. It is a variable that precise the name of the new environment
71 +1**. [[image:1649942613906-103.png]]
57 57  
73 +== Local variables ==
58 58  
59 -== Local variables ==
75 +Local variable is a type of variable that can be newly created and used for a certain need.
60 60  
77 +So as to create a local variable "newVar" with a value equals to "var number 1", we should write this piece of XSL code :
61 61  
79 +{{code language="XML"}}
80 +<xsl:value-of select=" ixf:SetVar('newVar', 'var Number 1')"></xsl:value-of>
62 62  
82 +{{/code}}
63 63  
84 +The call of this new variable in the scenario is similar to previous system variables:  **${newVar}.**
64 64  
86 +To get 'newVar' inside an XSL file :
87 +
88 +{{code language="XML"}}
89 +<xsl:value-of select="ixf:getVar('newVar')"></xsl:value-of>
90 +{{/code}}
91 +
92 += Examples =
93 +
94 +* (((
95 +===== __**1^^st^^ Example:**__ =====
96 +)))
97 +
98 +We set a simple example of a scenario to illustrate how to use variables.
99 +
100 +We want to receive a file by a FileListener and send it by mail that contains a message body.
101 +
102 +here is the scenario:
103 +
104 + [[image:2021-04-27_21h31_55.png||height="140" width="446"]]
105 +
106 +The configuration of the "SendMail" is :
107 +
108 + [[image:2021-04-27_21h32_07.png||height="373" width="281"]]
109 +
110 +As shown in the mail body, we called 3 variables which are :
111 +
112 +* Env: the current environment
113 +* iXSession : ID session
114 +* path : the path of BpmnFile in FileListener1.
115 +
116 +
117 +* (((
118 +===== __**2^^nd^^ Example**__ =====
119 +)))
120 +
121 +This is an example to charge the call scenario variables:
122 +
123 +
124 +[[image:1649943564529-130.png]]
125 +
126 +
127 +As shown in the mail body, we called 3 variables which are :
128 +
129 +* **iXEnv**: the Environment when the new scenario exists
130 +* **iXScenario**: ='**error_sc_out_trk_and_statut**'. It means that the current scenariowhere the **connector CallScenario** will be changed to "error_sc_out_trk_and_statut'"
131 +* **iXSwitchEnv**: ='**true**'. It means that the current env will be switched to "**Danone**"
132 +
133 += String Class =
134 +
135 +in java language, The String class represents character strings. It contains a lot of functions to handle String object.
136 +
137 +you can discover all these functions on the following URL :
138 +
139 +__[[https:~~/~~/docs.oracle.com/javase/8/docs/api/java/lang/String.html#method.summary>>https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#method.summary]] __
140 +
141 +Eg: to check if a variable "myVar" is empty or not, we refer to the isEmpty() method as ${myVar.isEmpty()}, if so then it returns true, if not it will return false.
142 +
143 +
65 65  
1649942613906-103.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.achmiti
Size
... ... @@ -1,0 +1,1 @@
1 +20.3 KB
Content
1649943564529-130.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.achmiti
Size
... ... @@ -1,0 +1,1 @@
1 +41.2 KB
Content
2021-04-27_21h31_55.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.omoustaghfir
Size
... ... @@ -1,0 +1,1 @@
1 +27.0 KB
Content
2021-04-27_21h32_07.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.omoustaghfir
Size
... ... @@ -1,0 +1,1 @@
1 +36.4 KB
Content
SendFtp.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.achmiti
Size
... ... @@ -1,0 +1,1 @@
1 +21.6 KB
Content
This wiki is hosted and managed by iXPath
Powered by XWiki 13.3 debian