on 03-09-2011 6:01 AM
Hi All,
Here is the detailed description of the issue I am facing in PI for dynamically handling receiver structure change.
Sender : GIS (Through Web Service)
Receiver: SAP ( ABAP Proxy )
Interface : Synch
Equipment and Functional Location will be sent from GIS through Web service. PI will pass the these two fields to SAP through proxy which in turn calls the BAPI. This BAPI returns the hierarchy of functional and sub functional locations.
Please find the XML below as an example:
<SapAssets>
<FunctionLocation id="fnloc1" name="Substation1" GISGlobalID="589534tgdf222" GisFeatureName="" SAPObjectid="">
<FunctionLocation id="fnloc2" name="Substation2" GISGlobalID = "45896211ithsdvb" GisFeatureName="" SAPObjectid="">
<Equipment id="eq1" GISGlobalID = "270DA616-4E5D-459F-AD21-3B65EBF32EE1" name="Transformer" GisFeatureName="UIXELE.SDE.T_Transformer" SAPObjectid="10000539"></Equipment>
<Equipment id="eq2" GISGlobalID = "1238923789512ED" name="Tower2" GisFeatureName="" SAPObjectid=""></Equipment>
</FunctionLocation>
<FunctionLocation id="fnloc3" name="Substation3" GISGlobalID="" GisFeatureName="" SAPObjectid="" >
<Equipment id="eq3" GISGlobalID = "270DA616-4E5D-459F-AD21-3B65EBF32EE1" name="Transformer" GisFeatureName="UIXELE.SDE.T_Transformer" SAPObjectid="10000539"></Equipment>
<FunctionLocation id="fnloc4" name="Substation3" GISGlobalID="" GisFeatureName="" SAPObjectid="" >
<Equipment id="eq4" GISGlobalID = "270DA616-4E5D-459F-AD21-3B65EBF32EE1" name="Transformer" GisFeatureName="UIXELE.SDE.T_Transformer" SAPObjectid="10000539"></Equipment>
</FunctionLocation>
</FunctionLocation>
<FunctionLocation id="fnloc5" name="Substation3" GISGlobalID="" GisFeatureName="" SAPObjectid="" > </FunctionLocation>
<Equipment id="eq5" GISGlobalID = "270DA616-4E5D-459F-AD21-3B65EBF32EE1" name="Transformer" GisFeatureName="UIXELE.SDE.T_Transformer" SAPObjectid="10000539"></Equipment>
</FunctionLocation>
</SapAssets>
-
The above updated structure, is representing below mentioned hierarchy
FnLoc1 u2026u2026u2026Parent Functional Location which GIS sends as input to SAP PI,
It has 3 FL (fnloc2, fnloc3, fnloc5) and 1equipment u2013 eq5 installed | _____ Fnloc2 u2026u2026 Fnloc2 has 2 installed equipments (eq1 and eq2) | _______ eq1 | _______ eq2 |
|______ Fnloc3 u2026u2026 Fnloc3 has 1 equipment (eq3) and 1 FL (fnloc4) installed
| |________ eq3
| |________ fnloc4u2026Fnloc4 has 1 equipments (eq4) installed
| |______ eq4
|________ Fnloc5 u2026u2026 Fnloc5 has no equipments installed
|________ eq5
But every time the hierarchy may change as in the the position of nodes and sub-nodes can change. For e.g. instead of 3 sub-functional locations there can be 2 and each can further have its own FLs.
So basically the hierarchy or the XML structure is not fixed and it may vary based on input from GIS.
As per my knowledge we need to create data types for receiver based on some structure. Can anybody please suggest how this dynamic structure change can be handled in PI?
Regards,
Aparna
Hi Aparna,
you could create a data type with optinal, repeatable fields:
SapAssets
|-FunctionLocation: 0-unbounded
...|-Equipment: 0-unbounded
...|-FunctionLocation: 0-unbounded
......|-Equipment: 0-unbounded
......|-FunctionLocation: 0-unbounded
Regards,
Udo
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
80 | |
9 | |
9 | |
7 | |
7 | |
6 | |
6 | |
6 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.