The Drill-Through function allows users to drill from a summary analysis through to data held in a relational database. This function is useful when users need to investigate data to detail greater than the lowest level of the InfoCubes.
Consider a typical Board database, the detail level of InfoCubes allows users to drill from summary reports down to the individual InfoCube cell, for example Day, Product and Customer. If sales of a particular product are exceptionally high, the user can firstly drill-down to the Customer level, then select a particular customer that you wish to analyze, then finally drill-through and retrieve the exact transactions from the accounting ledger for that particular day/product/customer.
A Drill-Through protocol takes, as an input, the entity members that the user intends to drill from (these represent the multidimensional space coordinates), and executes an SQL query (limited to those entity members) on the relational data source. As a result, several records are returned (as the drill-down returns several detailed rows that add-up to the starting value) as well as additional information from the transactions table that does not correspond to any entity or InfoCube on the Board database.
For example a Drill-Through protocol on the invoice table can return the invoice number and the corresponding order number, even though these fields don’t exist in the Board database.