Sample JPO Program for connectionProgram

This sample shows a JPO that can be used to connect objects in the editable structure browser.

public static Map connectPartToDocument (Context context, 
String[] args) throws Exception
 {
      // unpack args array to get input map
MapList programMap = (HashMap) JPO.unpackArgs(args);
// get request information
MapList paramMap = (HashMap) programMap.get("paramMap");
// get parentobjectId
String parentId= (String) programMap.get("parentOID");
// get childobjectId
String childId= (String) programMap.get("objectId");
// create a  relationmap to be returned.
            Map connectionMap = new HashMap();
//Create MapList that holds all the changedRows (added/removed/
resequenced objects  i.e each add/removed/resequenced object is 
a HashMap having all details oid,rowId,relid and markup key 
values)
MapList mlchangedRows=new MapList();
// format for MapList mlchangedRows
{
{rowId=0,119754584073800, oid=42864.18383.13045.21601, 
relid=52728.49964.37568.33109, pid=52728.49964.13046.12899, 
markup=add}, 
{rowId=0,119754584073810, oid=52728.49964.13046.28148, 
relid=52728.49964.37568.34361, pid=52728.49964.13046.12899, 
markup=add}, 
{rowId=0,119754584073820, oid=57660.21992.15800.53540, 
relid=52728.49964.37568.36206,  markup=cut}
} 
// Custom logic to create the connection between parent object 
and child object goes                  //here..
//Populate the return map
             connectionMap.put("Action", "SUCCESS" );
             connectionMap.put("Message"," errormessage" );
            connectionMap.put("changedRows", mlChildrenObjects);
return connectionMap;
}