3D – Data Drill Down Framework - PowerPoint PPT Presentation

orpah
slide1 n.
Skip this Video
Loading SlideShow in 5 Seconds..
3D – Data Drill Down Framework PowerPoint Presentation
Download Presentation
3D – Data Drill Down Framework

play fullscreen
1 / 36
Download Presentation
3D – Data Drill Down Framework
74 Views
Download Presentation

3D – Data Drill Down Framework

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. 3D – Data Drill Down Framework Nitin Kumar 11/3/2010

  2. Agenda • What is 3D – Data Drill Down? • Why do you need a drill down framework? • Demo • High Level architecture • Key features • Showcase examples from Newfield • Q&A

  3. What is 3D? • 3D or Data Drill Down is a flexible template driven web application framework that allows you to quickly build context driven drill-downs from a source data element to more detailed layers of data • It is a standalone application – can connect to multiple databases to pull information

  4. Why do you need a drill down framework? • Applications are designed more for data capture and processing, not so much for query/reporting • Data relevant for end-users spread across many screens/modules/reports – difficult to track data flow • Existing reports – generally very specific • Users spend huge amount of time to track down information – sifting through multitude of application screens, reports, SQL queries etc.

  5. Why do you need a drill down framework? • A single report/query screen will not provide all the answers an user is looking for • Interactive drill down reporting is essential to navigate from summary data and drill down to details both vertically and horizontally to get relevant information • To satisfy business needs and end-users, customers build and maintain a repository of custom reports • Skilled technical resources required to build and maintain custom reports

  6. Why do you need a drill down framework? • Reporting tools could be expensive, require additional hardware resources and you may be paying a premium for features you never use • Over a period of time the repository of custom reports become large, unmanageable and very expensive to maintain

  7. Why do you need a drill down framework? • 3D framework was specifically designed to address this need for interactive drill-down reporting • Completely metadata driven, no coding necessary • Easy to install, learn and be productive in a very short amount of time • Very lightweight footprint ~11mb, minimal computing resources

  8. Demo Demo

  9. High Level Architecture Source Configuration Presentation Enterprise Upstream Layout Config. Excalibur url?p1=&p2=&p3= E-Business Suite Object Mapping LOS Other JDBC URL/Connector 3D Framework External Data Sources DB1 DB 3 DB 2

  10. Configuration • XML based configuration • XML Schema provided for validation • Use any XML editor or text editor • Configuration divided into 2 files • Layout Mapping • Object Mapping

  11. Configuration – Layout Mapping • The layout mapping defines one or more reports and its layouts • A report layout is divided into 2 sections: • Header section – containing common information • Detail section – relevant data grouped into one or more tabs • No limit to the number of detail tabs • Data can be displayed in tabular grid format or as a chart • Only tabs containing data will be displayed

  12. Configuration – Layout Mapping • Each layout section – header and detail tabs are mapped to a logical object • A logical object is a user defined name for the data source that provides data for the report • The logical object is described in the Object Mapping configuration

  13. Configuration – Layout Mapping

  14. Configuration – Layout Mapping

  15. Configuration – Layout Mapping

  16. Configuration – Layout Mapping

  17. Configuration – Layout Mapping

  18. Configuration – Layout Mapping

  19. Configuration – Layout Mapping example <drillLayout> <report id="GL-GROSS"name="LOS GL Gross"> <object tabSeq="0" tabName="Report Center Details">rc_dtls</object> <object tabSeq="1"tabName="Payables">ap_gross_dtl</object> <object tabSeq="2"tabName="Receivables">ar_gross_dtl</object> <object tabSeq="3"tabName="General ledger">gl_gross_dtl</object> <object tabSeq="4"tabName="JIB">jib_gross_dtl</object> </report> <report id="ACT-GROSS"name="LOS Activity Gross"> <object tabSeq="0" tabName="Report Center Details">rc_dtls</object> <object tabSeq="1"tabName="Payables">ap_gross_dtl</object> <object tabSeq="2"tabName="Receivables">ar_gross_dtl</object> <object tabSeq="3"tabName="General ledger">gl_gross_dtl</object> <object tabSeq="4"tabName="JIB">jib_gross_dtl</object> </report> </drillLayout>

  20. Configuration – Object Mapping • Object mapping is used to map the logical objects defined in the layout mapping to physical database objects – Tables, Logical Views, Materialized Views • Object mapping mimics how you would write a SQL statement

  21. Configuration – Object Mapping SELECT column1, column2,… FROM table WHERE column3 = "criteria" ORDER by column1

  22. Configuration – Object Mapping SELECT column1, column2,… FROM table WHERE column3 = "criteria" ORDER by column1 Physical Object – Table, Logical View, Materialized View etc.

  23. Configuration – Object Mapping SELECT column1, column2,… FROM table WHERE column3 = "criteria" ORDER by column1 Select columns from physical object

  24. Configuration – Object Mapping SELECT column1, column2,… FROM table WHERE column3 = "criteria" ORDER by column1 Filter records based on query criteria

  25. Configuration – Object Mapping SELECT column1, column2,… FROM table WHERE column3 = "criteria" ORDER by column1 Specify sort order

  26. Configuration – Object Mapping <drillObjects> <drillObject objectName="logical_name"dbObject="db_object_name"> <orderBy>col1,col2</orderBy> <filters> <filterColumn name="column_name"value=""/> </filters> <columns> <column> <columnName>column_name1</columnName> <displaySequence>10</displaySequence> <displayName>Display Name</displayName> </column> <column> <columnName>column_name1</columnName> <displaySequence>20</displaySequence> <displayName>Display Name</displayName> </column> </columns> </drillObject> </drillObjects>

  27. Configuration – Object Mapping <drillObjects> <drillObject objectName="logical_name"dbObject="db_object_name"> <orderBy>col1,col2</orderBy> <filters> <filterColumn name="column_name"value=""/> </filters> <columns> <column> <columnName>column_name1</columnName> <displaySequence>10</displaySequence> <displayName>Display Name</displayName> </column> <column> <columnName>column_name1</columnName> <displaySequence>20</displaySequence> <displayName>Display Name</displayName> </column> </columns> </drillObject> </drillObjects> Logical object name specified in layout mapping

  28. Configuration – Object Mapping <drillObjects> <drillObject objectName="logical_name"dbObject="db_object_name"> <orderBy>col1,col2</orderBy> <filters> <filterColumn name="column_name"value=""/> </filters> <columns> <column> <columnName>column_name1</columnName> <displaySequence>10</displaySequence> <displayName>Display Name</displayName> </column> <column> <columnName>column_name1</columnName> <displaySequence>20</displaySequence> <displayName>Display Name</displayName> </column> </columns> </drillObject> </drillObjects> Physical database object name – Table, Logical View, Materialized View

  29. Configuration – Object Mapping <drillObjects> <drillObject objectName="logical_name"dbObject="db_object_name"> <orderBy>col1,col2</orderBy> <filters> <filterColumn name="column_name"value=""/> </filters> <columns> <column> <columnName>column_name1</columnName> <displaySequence>10</displaySequence> <displayName>Display Name</displayName> </column> <column> <columnName>column_name1</columnName> <displaySequence>20</displaySequence> <displayName>Display Name</displayName> </column> </columns> </drillObject> </drillObjects> Sort order

  30. Configuration – Object Mapping <drillObjects> <drillObject objectName="logical_name"dbObject="db_object_name"> <orderBy>col1,col2</orderBy> <filters> <filterColumn name="column_name"value=""/> </filters> <columns> <column> <columnName>column_name1</columnName> <displaySequence>10</displaySequence> <displayName>Display Name</displayName> </column> <column> <columnName>column_name1</columnName> <displaySequence>20</displaySequence> <displayName>Display Name</displayName> </column> </columns> </drillObject> </drillObjects> Filter criteria

  31. Configuration – Object Mapping <drillObjects> <drillObject objectName="logical_name"dbObject="db_object_name"> <orderBy>col1,col2</orderBy> <filters> <filterColumn name="column_name"value=""/> </filters> <columns> <column> <columnName>column_name1</columnName> <displaySequence>10</displaySequence> <displayName>Display Name</displayName> </column> <column> <columnName>column_name2</columnName> <displaySequence>20</displaySequence> <displayName>Display Name</displayName> </column> </columns> </drillObject> </drillObjects> Select columns from physical object

  32. Configuration – Object Mapping • Additional features of Object Mapping • Option to specify custom SQL directly • Connect each object to a different database • Add multiple drill-downs from each column to other objects in the template passing parameters from source object to destination object • Additional means of retrieving data: • Pipelined Table Functions (Oracle database) • External URL

  33. Lookups • One of the most powerful features of the drilldown framework is to take any of the columns displayed and use that as a context for additional drill-downs • This can be chained to form multi-level drill downs very easily

  34. Key Features • A lightweight highly configurable framework • Total flexibility in configuring data objects and data elements to be displayed • Connect to multiple databases to retrieve data in the same report – each tab can connect to, retrieve and display data from a different database • Auto-generate SQL based on columns, filters and sort information defined in configuration • Specify custom SQL to retrieve data • Configure custom URLs as a data source for non-database related external data

  35. Key Features • Automatic layout and presentation of retrieved data in tabs • Ability to render retrieved data as charts • Ability to export any data retrieved to excel without additional configuration • Ability to make any data element displayed as hot-links to provide additional multi-level drill-downs • Ability to configure hot-links and pass parameters to external URL's such as imaging system or custom reports

  36. Data Drill Down Framework Newfield – Demo