<
From version < 2.7 >
edited by Outhman Moustaghfir
on 2021/04/27 15:38
To version < 16.1 >
edited by Assala Chmiti
on 2022/04/14 16:51
>
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,15 +1,17 @@
1 -= Introduction =
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.
4 4  
4 + Variable is a container that holds a value and can be called in the iXPath Scenario. The importance of
5 +
6 +variables is to make flexibility in using some values without referring to their origins.
7 +
5 5  There are 2 types of  variables: 
6 6  
7 7  * System variables
8 8  * Local variables
9 9  
10 -To call a variable, we should put it inside ${}. Eg: for a variable named ‘iXVar’, it can be called as ${iXVar}.
13 +== __System variables__ ==
11 11  
12 -== 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,27 +21,145 @@
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.
26 +1*. iXFrom: refers to the sender of the mail that we are listening on.
27 +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.
29 +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 -|(% style="width:150px" %)Function|(% style="width:404px" %)Description|(% style="width:355px" %)Use
31 -|(% style="width:150px" %)Get(i) |(% style="width:404px" %)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:355px" %)(((
32 -if we have an XmlToXml connector named "XmlToXml1" we can get second bpmn file as :
32 +(% style="width:884px" %)
33 +|(% style="width:150px" %)**Function**|(% style="width:365px" %)**Description**|(% style="width:367px" %)**Use**
34 +|(% 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" %)(((
35 +if we have an XmlToXml connector named "XmlToXml1" we can get __the second__ BpmnFile as :
33 33  
34 34  ${XmlToXml1.get(1)}
35 35  
36 -NB : we will make examples on the same connector "XmlToXml1".
39 +NB: we will make examples on the same connector "XmlToXml1".
37 37  )))
38 -|(% style="width:150px" %)getTrkValues|(% style="width:404px" %)Return the Tracking values from a BpmnFile.|(% style="width:355px" %)
41 +|(% style="width:150px" %)getTrkValues()|(% style="width:365px" %)Return the Tracking values from a BpmnFile.|(% style="width:367px" %)Eg : ${XmlToXml1.get(0).getTrkValues()} returns the tracking values of the first BpmnFile.
42 +|(% style="width:150px" %)path()|(% style="width:365px" %)Return the absolute path of the BpmnFile.|(% style="width:367px" %)Eg : ${XmlToXml.get(3).path()} returns the path of the __fourth__ BpmnFile
43 +|(% style="width:150px" %)fileName()|(% style="width:365px" %)Return the name of the BpmnFile. |(% style="width:367px" %)Eg : ${XmlToXml1.get(2).fileName()} retrieves the name of the third BpmnFile.
44 +|(% style="width:150px" %)extension()|(% style="width:365px" %)Returns the extension of the BpmnFile.|(% style="width:367px" %)(((
45 +Eg : if we want to get the extension of the first BpmnFile, we will proceed as below :
39 39  
47 + ${XmlToXml1.get(0).extension()}
48 +)))
49 +|(% style="width:150px" %)fullName()|(% style="width:365px" %)Returns the file name + its extension  |(% style="width:367px" %)Eg : ${XmlToXml1.get(0).fullName()} returns the full name of the BpmnFile.
50 +|(% style="width:150px" %)size()|(% style="width:365px" %)Returns the size of the BpmnFile in megabit.|(% style="width:367px" %)(((
51 +Eg : ${XmlToXml1.get(0).size()} returns the size of the first BpmnFile.
52 +)))
53 +|(% style="width:150px" %)type()|(% style="width:365px" %)Returns the type of the BpmnFile|(% style="width:367px" %)(((
54 +Eg : To get the type of the second BpmnFile ,
55 +
56 +${XmlToXml1.get(1).type()}
57 +)))
58 +)))
59 +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:
60 +1*. For the SendFTP et SendSFTP, there are 3 variables:
61 +1**. __**i​​XTo**__: used to charge the property **Destination **of the connector in the XSL file.
62 +1**. __**iXServerConfig**__: used to charge the property **Server Config** of the connector in the XSL file.
63 +1**. __**iXDirectory**__: used to charge the property **Folder** of the connector in the XSL file.
64 +1**. [[image:SendFtp.png]]
65 +1*. For the CallScenario Connector, there are 3 variables:
66 +1**. **iXScenario**: used to charge the property **Scenario **of the connector in the XSL file.
67 +1**. **iXSwitchEnv**: is a boolean variable used to charge the checkbox property **switch environnement** of the connector in the XSL file.
68 +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
69 +1**. [[image:1649942613906-103.png]]
70 +
71 +== ==
72 +
73 +== __Local variables__ ==
74 +
75 +
76 +Local variable is a type of variable that can be newly created and used for a certain need.
77 +
78 +So as to create a local variable "newVar" with a value equals to "var number 1", we should write this piece of XSL code :
79 +
80 +
81 +{{code language="XML"}}
82 +<xsl:value-of select=" ixf:SetVar('newVar', 'var Number 1')"></xsl:value-of>
83 +
84 +{{/code}}
85 +
86 +The call of this new variable in the scenario is similar to previous system variables:  **${newVar}.**
87 +
88 +To get 'newVar' inside an XSL file :
89 +
90 +
91 +{{code language="XML"}}
92 +<xsl:value-of select="ixf:getVar('newVar')"></xsl:value-of>
93 +{{/code}}
94 +
95 += __How to call the variables? :__ =
96 +
97 +
98 +To call a variable inside a connector, we should put it inside ${}. Eg: for a variable named ‘Var’, it can be called as ${Var}.
99 +
100 +For the condition in the connector's property, to check if the variable verify the condition, we can use " VarName== 'Value' " or " VarName!='Value' ".
101 +
102 +To call a variable in an xsl file, we should use the local variables SetVar ou GetVar.
103 +
104 += __Examples__ =
105 +
106 +
107 +
108 +* (((
109 +===== __**1^^st^^ Example:**__ =====
110 +
111 +
40 40  
41 41  )))
42 42  
115 +We set a simple example of a scenario to illustrate how to use variables.
43 43  
117 +We want to receive a file by a FileListener and send it by mail that contains a message body.
44 44  
119 +here is the scenario:
45 45  
121 + [[image:2021-04-27_21h31_55.png||height="140" width="446"]]
46 46  
123 +The configuration of the "SendMail" is :
124 +
125 + [[image:2021-04-27_21h32_07.png||height="373" width="281"]]
126 +
127 +As shown in the mail body, we called 3 variables which are :
128 +
129 +* Env: the current environment
130 +* iXSession : ID session
131 +* path : the path of BpmnFile in FileListener1.
132 +
133 +* (((
134 +===== __**2^^nd^^ Example**__ =====
135 +
136 +
47 47  
138 +)))
139 +
140 +This is an example to charge the call scenario variables:
141 +
142 +
143 +[[image:1649943564529-130.png]]
144 +
145 +
146 +As shown in the mail body, we called 3 variables which are :
147 +
148 +* **iXEnv**: the Environment when the new scenario exists
149 +* **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'"
150 +* **iXSwitchEnv**: ='**true**'. It means that the current env will be switched to "**Danone**"
151 +
152 += =
153 +
154 += __String Class__ =
155 +
156 +
157 +
158 +in java language, The String class represents character strings. It contains a lot of functions to handle String object.
159 +
160 +you can discover all these functions on the following URL :
161 +
162 +__[[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]] __
163 +
164 +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.
165 +
166 +
167 +
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