...
In this case, we create a directory named ../pages/summary/inventory and then we create a new XML file named warehouses.xml, which uses an SQL statement to retrieve the information.
Code Block | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
<summary xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../xsd/summary.xsd"> <message>Physical locations where traceable and non-traceable items are stored.</message> <title>Warehouses</title> <sql>FROM WAREHOUSE LEFT JOIN USERS CREATEDBY ON CREATEDBY.USERID = WAREHOUSE.WRHCREATEDBYUSERID LEFT JOIN USERS UPDATEDBY ON UPDATEDBY.USERID = WAREHOUSE.WRHLASTUPDBYUSERID LEFT JOIN OUUNITS CREATEDBYUNIT ON CREATEDBYUNIT.OUUID = WAREHOUSE.WRHCREATEDBYOUUID LEFT JOIN OUUNITS UPDATEDBYUNIT ON UPDATEDBYUNIT.OUUID = WAREHOUSE.WRHUPDATEDBYOUUID LEFT JOIN WAREHOUSETYPES ON WAREHOUSETYPES.WRHTYPEID = WAREHOUSE.WRHTYPEID LEFT JOIN OUGROUPS ON OUGROUPS.OUGID = WAREHOUSE.OWNEROUGID LEFT JOIN PRIVACYLEVELS ON WAREHOUSE.PRIVACYLEVELID = PRIVACYLEVELS.PRIVACYLEVELID WHERE WAREHOUSE.WRHDELETED = 0 </sql> <rowsperpage>20</rowsperpage> <primaryfield>WAREHOUSE.WRHID</primaryfield> <mainlinkfield>WAREHOUSE.WRHNAME</mainlinkfield> <orderbyfields>WAREHOUSE.WRHNAME</orderbyfields> <allownocriteria>true</allownocriteria> <multiselect>true</multiselect> <module>INVENTORY_MANAGEMENT</module> <fieldlist> <!-- external filters --> <field> <fieldname>WAREHOUSE.WRHID</fieldname> <filtertextoption>equal</filtertextoption> </field> ... <!-- fields --> <field> <fieldname>WAREHOUSE.WRHNAME</fieldname> <caption>Name</caption> <summary>true</summary> <filter>true</filter> <filtercaseinsensitive>true</filtercaseinsensitive> <link>page.do?act=itm&xml=inventory/warehouse&jndi=ejb/CRMUIWarehouse&fc=loadForm&pv0=((WAREHOUSE.WRHID))&pvc=1</link> </field> ... <!-- drilldowns --> <field> <fieldname>BALANCE</fieldname> <fieldfunction>''</fieldfunction> <caption>Balance</caption> <summary>true</summary> <available>true</available> <fieldtype>label</fieldtype> <label>Balance</label> <link>drilldown:inventory/warehouse_balance;WRHID~((WAREHOUSETRANSACTIONS.WRHID))</link> </field> ... </fieldlist> <actions> <action> <caption>New</caption> <topmenu>true</topmenu> <link>page.do?act=new&xml=inventory/warehouse&fc=createButton&pvc=0&jndi=ejb/CRMUIWarehouse</link> </action> ... </actions> </summary> |
...
A warehouse can have multiple balances, and these are displayed as a drilldown in our warehouses.xml file. We then create a new XML file named warehouse_balances.xml, which uses an EJB method to retrieve the information.
Code Block | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
<summary xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../xsd/summary.xsd"> <title>Warehouse Balances</title> <classname>ejb/CRMUIWarehouse</classname> <functionname>loadBalancesTab</functionname> <rowsperpage>20</rowsperpage> <primaryfield>ITEMID</primaryfield> <mainlinkfield>ITEMID</mainlinkfield> <autosearch>true</autosearch> <hidefindbutton>true</hidefindbutton> <module>INVENTORY_MANAGEMENT</module> <fieldlist> <!-- external filters --> <field> <fieldname>WRHID</fieldname> <filtertextoption>equal</filtertextoption> </field> <!-- fields --> <field> <fieldname>ITEMNAME</fieldname> <caption>Product Type</caption> <summary>true</summary> <available>true</available> </field> ... <!-- drilldowns --> ... </fieldlist> </summary> |
...