<%@page language="java"%>
<%@taglib uri="http://www.ptc.com/infoengine/taglib/core" prefix="ie"%>

<!-- query for the product structure -->
<ie:webject name="Query-Tree" type="OBJ">
    <ie:param name="INSTANCE" data="windchill"/>
    <ie:param name="DEPTH" data="${@FORM[]depth[0]}"/>
    <ie:param name="DIRECTION" data="uses"/>
    <ie:param name="AUTHORIZATION" data="${@server[]authorization[0]}"/>
    <ie:param name="OBJECT_REF" data="${@FORM[]oid[0]}"/>
    <ie:param name="SELECTBY" data="LATEST"/>
    <ie:param name="SELECTBY_LIFECYCLE_STATE" data="RELEASED"/>
    <ie:param name="MODE" data="FLAT"/>
    <ie:param name="SELECTBY_INCLUDE_WORKING" data="FALSE"/>
    <ie:param name="OUTPUT_TYPE" data="full"/>
    <ie:param name="TYPE" data="wt.part.WTPartUsageLink"/>
    <ie:param name="WHERE" data="${@FORM[]where[0]}" default="()"/>
    <ie:param name="ATTRIBUTE" data="obid,state.state,wt.part.WTPartUsageLink.quantity.amount" delim=","/>
    <ie:param name="GROUP_OUT" data="tree1"/>
</ie:webject>

<!-- MB: The query-tree webject does not return the desired IBAs, so an additional query is necessary -->
<ie:webject name="Query-Objects" type="OBJ">
    <ie:param name="INSTANCE" data="windchill"/>
    <ie:param name="AUTHORIZATION" data="${@server[]authorization[0]}"/>
    <ie:param name="OBJECT_REF" data="${tree1[*]obid[0]}" valueSeparator=";" delim=";"/>
    <ie:param name="ATTRIBUTE" data="obid,name,number,DIMENSION,ARTNO,ITEMGROUP" delim=","/>
    <ie:param name="GROUP_OUT" data="tree2"/>
</ie:webject>

<!-- MB: Join the two groups, so that the link attribute "quantity" can be displayed -->
<ie:webject name="Join-Groups" type="GRP">
<ie:param name="GROUP_IN" data="tree1"/>
<ie:param name="GROUP_IN" data="tree2"/>
<ie:param name="JOINBY" data="obid"/>
<ie:param name="GROUP_OUT" data="tree3"/>
</ie:webject>

<!-- Sort resulting group on number -->
<ie:webject name="Sort-Group" type="GRP">
<ie:param name="GROUP_IN" data="tree3"/>
<ie:param name="SORTBY" data="number"/>
<ie:param name="SORTED" data="DESC"/>
<ie:param name="COMPARISON" data="ALPHANUMERIC"/>
<ie:param name="CASE_IGNORE" data="TRUE"/>
<ie:param name="CLASS" data="wt.part.WTPart"/>
<ie:param name="GROUP_OUT" data="tree"/>
</ie:webject>
