Extending zoom across

Problem Statement

The Zoom Across functionality allows you to zoom quickly from the current record to a related record in a different window. The default Zoom Across functionality allows you to zoom from one record to a destination record only if the destination table references the source table. For example, if you are looking at an order, you can zoom across to the associated invoice, shipping docs and payments.


As part of this blog we will provide step by step explanation of how to extend advanced zoom across functionality at Tab level in ADempiere.


ADempiere 360 or higher



Let us take example to connect the Invoice (Vendor) Window and Material Receipt Window through the Zoom Across functionality i.e. from Invoice Vendor,  user should be able to zoom to all the material receipts of corresponding invoice

  1. Login as System with Role System Administrator (or a login and role with similar priviledges).SystemLogin
  2. Open the Reference Window. (Click on Reference in the menu bar or navigate to Application Dictionary >> Reference.)
  3. In the Reference Tab, create a new Reference. This defines zoom from material receipt to invoiceReference1
    • Name: RelType M_InOut_ID->C_Invoice
    • Description: Finds C_Invoice_IDs for a given M_InOut_ID
    • Help: We are in M_InOut and want to find all Invoices
    • Validation: Table Validation
  4. Open Table Validation Tab and configure logic to to get correct Invoice for a given material receiptTableValidation1
    • Table: C_Invoice                //This is the target table we will be trying to Zoom Across too.
    • Column: C_Invoice_ID
    • Column shown: DocumentNo
    • SQL:    C_Invoice_ID IN (  select i.C_Invoice _ID  from C_Invoice i    join C_InvoiceLine ivl on i.C_Invoice_ID = ivl.C_Invoice_ID    join M_MatchInv mi on ivl.C_InvoiceLine_id = mi.C_InvoiceLine_ID    join M_InOutLine iol on mi.M_InOutLine_ID = iol.M_InOutLine_ID    join M_InOut io on iol.M_InOut_ID = io.M_InOut_ID  where io.M_InOut_ID=@M_InOut_ID@  )
    • Window: Invoice (Vendor)      // or the one on which the invoice is found
  5. Create a new Reference to define zoom from material invoice vendor  to recieptReference2
    1. Name: RelType C_Invoice_ID->M_InOut
    2. Description: Finds M_InOut_IDs for a given C_Invoice_ID
    3. Help: We are in M_Invoice and want to find all M_InOuts
    4. Validation: Table Validation
  6. Open Table Validation Tab and configure logic to to get the correct material receipt  for the given invoice

    • Table:M_InOut                  //the target
    • Column: M_InOut_ID
    • Column shown: DocumentNo
    • SQL:    //the target   M_InOut_ID IN (   select  io.M_InOut_id  from M_ InOut io  join M_InOutLine iol on io.M_InOut_id = iol.M_InOut_id  join M_MatchInv mi on iol.M_InOutLine_id = mi.M_InOutLine_id  join C_InvoiceLine ivl on mi.C_InvoiceLine_id = ivl.C_InvoiceLine_ID   join C_ Invoice i on ivl.C_Invoice_ID = i.C_Invoice_ID  where i.C_Invoice_ID=@C_Invoice_ID@  )
    • Window: Material Receipt     // or the one where the material receipt is found
  7. Login as Admin User. Open the Relation Type Window found at System Admin >> Relation Type. Create new entry:RelationType
  8. Open window Invoice (Vendor). Select an invoice you know has a Material Receipt. Press Zoom across icon or select Go→Zoom Across (where used). Among others, the corresponding Material Receipt will be shown.          InvoixeMRZoom
  9. Clicking on it, a Material Receipt window will open with the material receipt related to the invoice.



As a part of this article we learned how to extend zoom across functionality for more documents

Walking Tree promotes Adempiere and we support the users as well as the developers to ensure that the business is able to take complete advantage of Adempiere’s wonderful capability. In case you are looking for a professional assistance then do visit our website to get in touch with us.


References :

Tagged with: , , ,
Posted in ADempiere, EagleRP

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

We Have Moved Our Blog!

We have moved our blog to our company site. Check out https://walkingtree.tech/index.php/blog for all latest blogs.

Sencha Select Partner Sencha Training Partner
Xamarin Authorized Partner
Recent Publication
%d bloggers like this: