VouchDrills is an object to define the hierarchy of attributes to consolidate data per module/report/program and present the result in a browser where clicking on one entry drills down to its subsequent attribute(d) data by rows.
For example, if you want to view Sales records, first by City attribute, then by Agents then by Customer and finally by Invoice number, you will define the object in same order as you would expect it to be viewed. When executed such definition, data will be collected as defined and first view of browser will contain records consolidated per City attribute. Clicking on a City will drill down records consolidated per Agent in that City. Clicking on an Agent record will drill down to Customer attribute, and finally clicking on a Customer will drill down to Invoices of that Customer.
At the last point, we can also define that what to do with an Invoice if user clicks on one. For example, we can open the Sales module showing up that Invoice or we can define some other action ( per VouchAPI ) to be carried.
The numer of drill-downs is limited by your imagination. Number of definitions per module/report/program also depend on your imagination. for example, we can define yet another object for Sales module with this hierarchy: City -> Monthly -> Customer -> Agent -> TypeOfSale -> Invoice. How it will look is shown in following image.
A view of VouchDrill in action on <Sales> module with drill attributes in following order:
City -> Monthly -> Customer -> Agent -> TypeOfSale -> Invoice