如何在 Maximo 入站集成中通过用户出口 class 添加子数据?

How to add a children data through user exit class in Maximo inbound integration?

我有一个包含 3 个对象的对象结构。位置> lochierarchy > customtable。 在原始来源 xml -erdata 上,我只获得位置对象的详细信息。我已经导出了 lochierarchy 和 customtable 的信息。

如果我至少有一个用于 lochierarchy 和 customtable 的列值,我可以使用以下代码并填充派生值。 xml

<LOCATIONS>
 <location>1000</location>
 <siteid>xyg</siteid>
 <LOCHIERARCHY>
  <SYSTEMID>abdc</SYSTEMID>
  <PARENT></PARENT>
   <CUSTOMTABLE>
    <DEPT>MECHANICAL</DEPT>
    <OWNER></OWNER>
   </CUSTOMTABLE>
  </LOCHIERARCHY>

 List locHierarchyList =irData.getChildrenData("LOCHIERARCHY");
           int locHrSize=locHierarchyList.size();
           for (int i=0;i<locHrSize;i++)
            {
                irData.setAsCurrent(locHierarchyList,i);
                irData.setCurrentData("PARENT","xyyyyg");

          List customTablerList =irData.getChildrenData("CUSTOMTABLE");
           int custSize=customTablerList .size();
           for (int i=0;i<custSize;i++)
            {
              //set values
            }  

但我得到的源 xml 只有下面的位置数据,我正在尝试构建子数据。我在这里遗漏了一些东西。

传入XML

    <LOCATIONS>
     <location>1000</location>
     <siteid>xyg</siteid>
</LOCATIONS>

我的代码

irData.createChildrenData("LOCHIERARCHY");
   irData.setAsCurrent();

    irData.setCurrentData("SYSTEMID", SYSTEM);
    irData.setCurrentData("PARENT", parentLoc);


    irData.createChildrenData("CUSTOMTABLE");
    irData.setAsCurrent();  

但这不起作用。谁能帮帮我?

知道了,只好用另一种createChildrenData方法了。

  irData.createChildrenData("LOCHIERARCHY",true);

这个成功了。它创建子集并使其成为当前集。