Changes for page 3. Variables
Last modified by Outhman Moustaghfir on 2024/01/23 13:58
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 5 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. omoustaghfir1 +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 -== 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 sen der.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,13 +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**. __**iXTo**__: 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 61 - Local variableisa typeofvariablethatcanbenewlycreatedand usedforacertainneed77 +So as to create a local variable "newVar" with a value equals to "var number 1", we should write this piece of XSL code : 62 62 79 +{{code language="XML"}} 80 +<xsl:value-of select=" ixf:SetVar('newVar', 'var Number 1')"></xsl:value-of> 63 63 82 +{{/code}} 64 64 84 +The call of this new variable in the scenario is similar to previous system variables: **${newVar}.** 65 65 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 + 66 66
- 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