Wiki source code of XMLToTrk
Version 3.1 by Outhman Moustaghfir on 2021/11/03 17:59
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | = Introduction = | ||
2 | |||
3 | XMLtoTracking connector allows users to create new trackings or update old ones by inserting an XML file. | ||
4 | |||
5 | |||
6 | = Configuration = | ||
7 | |||
8 | === Tracking === | ||
9 | |||
10 | The connector requires an input XML file which must contain a parent tag <ixDoc> that includes all other tracking tags. | ||
11 | |||
12 | And here are some attributes that can be defined inside a tracking tag : | ||
13 | |||
14 | |(% style="width:215px" %)**Attribute**|(% style="width:496px" %)**Explanation**|(% style="width:278px" %)**Example** | ||
15 | |(% style="width:215px" %)//TrkStatusTypeID//|(% style="width:496px" %)setting the ID of tracking status that would be changed.|(% style="width:278px" %)TrkStatusTypeID = "12" | ||
16 | |(% style="width:215px" %)//TrkStatusTypeAlias//|(% style="width:496px" %)It's another way to declare the tracking status using directly the alias|(% style="width:278px" %)TrkStatusTypeAlias= ‘Delivred’ | ||
17 | |(% style="width:215px" %)//UpdateAllStatusFrom//|(% style="width:496px" %)The attribute allows updating the status of all trackings which have a certain status defined with __//TrkStatusTypeID//__// or __TrkStatusTypeAlias.__//|(% style="width:278px" %)((( | ||
18 | <Order TrkStatusTypeAlias = ‘Closed’ UpdateAllStatusFrom=‘Available’> | ||
19 | |||
20 | ~-~-> this will change the value of status from 'Closed' to "Available" in all "Order" trackings. | ||
21 | ))) | ||
22 | |(% style="width:215px" %)//TrkID//|(% style="width:496px" %)This will update a certain tracking with the TrkID value if it exists. If not, it will be added with this TrkID.|(% style="width:278px" %)TrkID = 245 | ||
23 | |(% style="width:215px" %)//EnvAlias//|(% style="width:496px" %)It aims to relate the tracking to the indicated environments, which should be split by ';' inside the attribute.|(% style="width:278px" %)EnvAlias = ‘Ixpath;loreal’ | ||
24 | |(% style="width:215px" %)key-value|(% style="width:496px" %)These 2 attributes retrieve a certain tracking with pairs of key-value split by ';', and update the corresponding tracking without creating a new one with the updated values.|(% style="width:278px" %)((( | ||
25 | <Order key="OrderNumber;BuyerCode" value="19222;4000"> | ||
26 | |||
27 | ~-~-> it will retrieve the first 'Order' that contains OrderNumber = 19222 and BuyerCode=4000, and update it. | ||
28 | ))) | ||
29 | |||
30 | ===== Example of the input XML file : ===== | ||
31 | |||
32 | The following example update a tracking with TrkID=162470 with embedded tags data and the status, and an other one with key-value pair (LineNumber=12 and ProdItemNb=3300). | ||
33 | |||
34 | {{code language="XML" layout="LINENUMBERS"}} | ||
35 | <CMO_OrderLine TrkID="162470" | ||
36 | TrkStatusTypeID="0" | ||
37 | TrkTypeID="86"> | ||
38 | <SAP_ProductCode>1050634</SAP_ProductCode> | ||
39 | <LabelProduct>FORLAXGO 12STICKS CZ PL</LabelProduct> | ||
40 | <OrderedQuantity>7000</OrderedQuantity> | ||
41 | <DeliveryDate>2019-02-10</DeliveryDate> | ||
42 | <ProductionEndDate/> | ||
43 | <LineNumber>10</LineNumber> | ||
44 | <ConfirmedQty>7000</ConfirmedQty> | ||
45 | <ProdItemNb>3</ProdItemNb> | ||
46 | </CMO_OrderLine> | ||
47 | <CMO_OrderLine key ="LineNumber;ProdItemNb" value="12;3300" | ||
48 | TrkStatusTypeID="0" | ||
49 | TrkTypeID="86"> | ||
50 | <SAP_ProductCode>1670634</SAP_ProductCode> | ||
51 | <LabelProduct>FORLAXGO 12STICKS MA FR</LabelProduct> | ||
52 | <OrderedQuantity>7000</OrderedQuantity> | ||
53 | <DeliveryDate>2019-08-10</DeliveryDate> | ||
54 | <ProductionEndDate/> | ||
55 | <LineNumber>10</LineNumber> | ||
56 | <ConfirmedQty>7000</ConfirmedQty> | ||
57 | <ProdItemNb>3</ProdItemNb> | ||
58 | </CMO_OrderLine> | ||
59 | {{/code}} | ||
60 | |||
61 | === Sub Tracking : === | ||
62 | |||
63 | "XMLToTrk" allows also creating or updating sub-trackings. | ||
64 | |||
65 | an XML tag is recognized as sub-tracking if : | ||
66 | |||
67 | * the tag has an attribute "Type" equal to 'Tracking. | ||
68 | |||
69 | __OR__ | ||
70 | |||
71 | * The tag name exists in the tracking type table of the database. | ||
72 | |||
73 | ===== Example of the input XML file : ===== | ||
74 | |||
75 | The folowing example include 2 sub-trackings of "CMO_ProdLine" inside the "CMO_OrderLine" tracking : first one has a TrkID = 162471 which need to be updated, and the other one is a new sub-tracking to be inserted. | ||
76 | |||
77 | {{code language="XML" layout="LINENUMBERS"}} | ||
78 | <CMO_OrderLine TrkID="162470" TrkStatusTypeID="0"> | ||
79 | <SAP_ProductCode>1050634</SAP_ProductCode> | ||
80 | <LabelProduct>FORLAXGO 12STICKS CZ PL</LabelProduct> | ||
81 | <OrderedQuantity>7000</OrderedQuantity> | ||
82 | <DeliveryDate>2019-02-10</DeliveryDate> | ||
83 | <CMO_ProdLine TrkID="162471" TrkStatusTypeID="0"> | ||
84 | <ProductionQty>2000</ProductionQty> | ||
85 | <BatchNumber>BL-112273</BatchNumber> | ||
86 | </CMO_ProdLine> | ||
87 | <CMO_ProdLine > | ||
88 | <ProductionQty>3000</ProductionQty> | ||
89 | <BatchNumber>CT-478743</BatchNumber> | ||
90 | </CMO_ProdLine> | ||
91 | </CMO_OrderLine> | ||
92 | |||
93 | {{/code}} | ||
94 | |||
95 | |||
96 | === File === | ||
97 | |||
98 | We attach session files to a given tracking by adding a tag named 'FILE' inside the tracking wanted. | ||
99 | |||
100 | There are some attributes that would be filled to satisfy some criteria: | ||
101 | |||
102 | |||
103 | |(% style="width:276px" %)**Attribute**|(% style="width:406px" %)**Explanation**|(% style="width:307px" %)**Example** | ||
104 | |(% style="width:276px" %)//FileTypeAlias//|(% style="width:406px" %)The type of files attached to Tracking.|(% style="width:307px" %)Attachment, log, Work,… (EDI as the default value) | ||
105 | |(% style="width:276px" %)//FileSensAlias//|(% style="width:406px" %)File sens |(% style="width:307px" %)'in' , 'out' ('in' is the default value) | ||
106 | |(% style="width:276px" %)//Connector//|(% style="width:406px" %)The name of the connector in the scenario, and that's will include all its files.|(% style="width:307px" %)Connector = "XMLtoXML1" | ||
107 | |(% style="width:276px" %)//UserFile//|(% style="width:406px" %)The path of the attached file to a user(absolute path).|(% style="width:307px" %) | ||
108 | |(% style="width:276px" %)//SessionFile//|(% style="width:406px" %)The path of the attached file to a session (relative path to this session).|(% style="width:307px" %) | ||
109 | |||
110 | ===== Example of the input XML file : ===== | ||
111 | |||
112 | {{code language="XML" layout="LINENUMBERS"}} | ||
113 | <?xml version="1.0" encoding="UTF-8"?> | ||
114 | <ixDOC xmlns:ixf="http://www.ixPath.com/Function"> | ||
115 | <CMO_OrderHeader TrkID="162469"> | ||
116 | <File FileSensAlias="out" | ||
117 | FileTypeAlias="Attachment" | ||
118 | SessionFile="in/7300111890.pdf"/> | ||
119 | </CMO_OrderHeader> | ||
120 | </ixDOC> | ||
121 | |||
122 | {{/code}} | ||
123 | |||
124 | This example will add a session file "in/7300111890.pdf" for the TrkID = 162469 as an 'Attachment' with sens = 'out'. | ||
125 | |||
126 |