Thursday, 13 April 2017

SOA Client : Open BOM with packed lines

Problem Statement : Get the packed BOMLines for Particular Item Revision ?

Here is the answer:-)...By setting property on bomwindow

Steps to follow...

 i) Open BOM for ItemRevision
    Please refer the link to openBOMWindow
    This will provide you the ArrayList containing the bomwindow and     top bomline.
    BOMWindow bomWindow  =  ArrayList.get(0);
    BOMLine parentLine =  ArrayList.get(1);

 ii) Set property on BOMWindow
VecStruct vecStructPackedBom = new VecStruct();

vecStructPackedBom = new VecStruct();
vecStructPackedBom.stringVec = new String[]{ "true" };
mapOfAttributes.put( "is_packed_by_default",vecStructPackedBom );

ServiceData setProperties = DM_Service.setProperties( new ModelObject[]{bomWindow}, mapOfAttributes );


 iii) Get bomLines
 ModelObject[] arrChildLines  = null;
 DataManagementService datamantService =    DataManagementService.getService(m_tcConn);
 datamantService .getProperties( new ModelObject[] { parentLine }, new String[] { "bl_child_lines" } );

 arrChildLines = parentLine.get_bl_child_lines();