Learn Hyperion/OBIEE by Amit Sharma. Mail to aloo_a2@yahoo.com for all Hyperion/OBIEE trainings and support




          ...
Learn Hyperion/OBIEE by Amit Sharma. Mail to aloo_a2@yahoo.com for all Hyperion/OBIEE trainings and support

   Managing M...
Learn Hyperion/OBIEE by Amit Sharma. Mail to aloo_a2@yahoo.com for all Hyperion/OBIEE trainings and support




     Once ...
Learn Hyperion/OBIEE by Amit Sharma. Mail to aloo_a2@yahoo.com for all Hyperion/OBIEE trainings and support

       •   Me...
Learn Hyperion/OBIEE by Amit Sharma. Mail to aloo_a2@yahoo.com for all Hyperion/OBIEE trainings and support




          ...
Learn Hyperion/OBIEE by Amit Sharma. Mail to aloo_a2@yahoo.com for all Hyperion/OBIEE trainings and support

   Command Bu...
Learn Hyperion/OBIEE by Amit Sharma. Mail to aloo_a2@yahoo.com for all Hyperion/OBIEE trainings and support

   Excel.Shee...
Learn Hyperion/OBIEE by Amit Sharma. Mail to aloo_a2@yahoo.com for all Hyperion/OBIEE trainings and support

             ...
Upcoming SlideShare
Loading in …5
×

Ir Meta Data Guide

1,073 views

Published on

1 Comment
2 Likes
Statistics
Notes
  • http://dbmanagement.info/Tutorials/Hyperion_Planning.htm
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
1,073
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
98
Comments
1
Likes
2
Embeds 0
No embeds

No notes for slide

Ir Meta Data Guide

  1. 1. Learn Hyperion/OBIEE by Amit Sharma. Mail to aloo_a2@yahoo.com for all Hyperion/OBIEE trainings and support Learn Hyperion/OBIEE By Amit Sharma Download Hyperion/OBIEE tutorials from learnhyperion.wordpress.com
  2. 2. Learn Hyperion/OBIEE by Amit Sharma. Mail to aloo_a2@yahoo.com for all Hyperion/OBIEE trainings and support Managing Metadata In Hyperion Interactive Report(Brio):- A data model, a focused visual representation of the actual database tables. A Data Model displays database tables as topics in the Contents frame. Topics are visually joined together like database tables and contain related items used to build a query. If the same Data Model wants to use for future queries, you can promote it to a master data model and lock its basic property design. This feature enables you to generate future queries without having to recreate the Data Model. An Interactive Reporting document file can contain any number of master data models from which any numbers of queries can be generated. The below example is created based on Sample Database available with IR. To create a Data Model like given above, just select the table(s) and drag and drop on content pane. And join them based on the information availble in Data Model Documents in HLD. Metatopics and metadata enable advanced users to mask the more confusing technical aspects of databases for non-technical users. While data models are already simplified views of the database, they sometimes still present a challenge to novice users. This is especially true when confusing database names and complicated strategies are visible in the data model. Download Hyperion/OBIEE tutorials from learnhyperion.wordpress.com
  3. 3. Learn Hyperion/OBIEE by Amit Sharma. Mail to aloo_a2@yahoo.com for all Hyperion/OBIEE trainings and support Once the Data Model is ready to use and you want the same data model should be used for further queries so promote the data model to Master Data Model. Download Hyperion/OBIEE tutorials from learnhyperion.wordpress.com
  4. 4. Learn Hyperion/OBIEE by Amit Sharma. Mail to aloo_a2@yahoo.com for all Hyperion/OBIEE trainings and support • Metatopics—Topics created from items in other topics. Metatopics are higher level topics, or “virtual topics” that simplify the data model structure and make joins transparent. A metatopic looks and behaves like any other topic and can accept modifications and metadata. • Metadata—Data about data. Typically stored in database tables, and often associated with data warehousing, metadata describes the history, content, and function of database tables, columns, and joins in understandable business terms. It’s become quite challenging to manage mapping between MetaTopic and actual table when we have large number of tables and the model become so complex. To eliminate the complexity and ease the work I have written a custom script, which will export all joining info and MetaTopic and actual Table mapping in excel sheet. Below the script given Download Hyperion/OBIEE tutorials from learnhyperion.wordpress.com
  5. 5. Learn Hyperion/OBIEE by Amit Sharma. Mail to aloo_a2@yahoo.com for all Hyperion/OBIEE trainings and support Download Hyperion/OBIEE tutorials from learnhyperion.wordpress.com
  6. 6. Learn Hyperion/OBIEE by Amit Sharma. Mail to aloo_a2@yahoo.com for all Hyperion/OBIEE trainings and support Command Button for Generating the Metadata Mapping Excel = new JOOLEObject("Excel.Application"); Excel.Visible = true; Excel.Workbooks.Add; Topic = ActiveDocument.Sections["MasterDataModel"].DataModel.Topics["Product Sales"] var NumElements = Topic.TopicItems.Count var k = 1 for (I = 1; I <= NumElements;I++) { a=Topic.TopicItems[I].DisplayName b = Topic.TopicItems[I].PhysicalName table = b.substring(0,b.indexOf(".")) column = b.substring(b.indexOf(".")+1) Excel.Sheets.Item(1).Cells.Item(1).Item(k).Value = a; //Excel.Sheets.Item(1).Cells.Item(2).Item(k).Value = table ; //Excel.Sheets.Item(1).Cells.Item(3).Item(k).Value = column ; Excel.Sheets.Item(1).Cells.Item(3).Item(k).Value = b ; k = k+1 } Command Button for Generating the Joining Info Excel = new JOOLEObject("Excel.Application"); Excel.Visible = true; Excel.Workbooks.Add; var k =1 var operator_string = "" join_count = ActiveDocument.Sections["MasterDataModel"].DataModel.Joins.Count Console.Writeln("Step 1") for(i = 1; i<= join_count; i++) { cnt=1; Console.Writeln("Step 2 "+i) phy_left = ActiveDocument.Sections["MasterDataModel"].DataModel.Joins[i].Topic1Name phy_left = ActiveDocument.Sections["MasterDataModel"].DataModel.Topics[phy_left ].PhysicalName.split("."); db_left = phy_left[0]; table_left = phy_left[1]; Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value = db_left Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value = table_left Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value = ActiveDocument.Sections["MasterDataModel"].DataModel.Joins[i].Topic1Name Console.Writeln("Step 3 "+i) phy_right= ActiveDocument.Sections["MasterDataModel"].DataModel.Joins[i].Topic2Name phy_right = ActiveDocument.Sections["MasterDataModel"].DataModel.Topics[phy_right ].PhysicalName.split("."); db_right = phy_right[0]; table_right = phy_right[1]; Console.Writeln("Step 4 "+i) Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value = db_right Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value = table_right Console.Writeln("Step 5.1 "+i) Download Hyperion/OBIEE tutorials from learnhyperion.wordpress.com
  7. 7. Learn Hyperion/OBIEE by Amit Sharma. Mail to aloo_a2@yahoo.com for all Hyperion/OBIEE trainings and support Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value = ActiveDocument.Sections["MasterDataModel"].DataModel.Joins[i].Topic2Name //ActiveDocument.Sections["MasterDataModel"].DataModel.Joins[i].Topic2Name Console.Writeln("Step 5.2 "+i) var oper if(i!= 1) { if(operator_string == ActiveDocument.Sections["MasterDataModel"].DataModel.Joins[i].Topic1Name + ActiveDocument.Sections["MasterDataModel"].DataModel.Joins[i].Topic2Name) oper = "AND" else oper = "ON" } else oper = "ON" ; Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value=oper operator_string = ActiveDocument.Sections["MasterDataModel"].DataModel.Joins[i].Topic1Name + ActiveDocument.Sections["MasterDataModel"].DataModel.Joins[i].Topic2Name Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value = ActiveDocument.Sections["MasterDataModel"].DataModel.Joins[i].TopicItem1.DisplayName; Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value = ActiveDocument.Sections["MasterDataModel"].DataModel.Joins[i].TopicItem2.DisplayName; var temp= ActiveDocument.Sections["MasterDataModel"].DataModel.Joins[i].Type ; if(temp==7) { Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="EQ" Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="LOJ" } else if(temp==8) { Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="EQ" Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="ROJ" } else if(temp==1) { Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="EQ" Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="EQ" } else if(temp==5) { Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="GT" Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="EQ" } else if(temp==6) { Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="GE" Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="EQ" } else if(temp==3) { Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="LT" Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="EQ" Download Hyperion/OBIEE tutorials from learnhyperion.wordpress.com
  8. 8. Learn Hyperion/OBIEE by Amit Sharma. Mail to aloo_a2@yahoo.com for all Hyperion/OBIEE trainings and support } else if(temp==4) { Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="LE" Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="EQ" } else if(temp==2) { Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="NE" Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="EQ" } else { Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="UNK" Excel.Sheets.Item(1).Cells.Item(cnt++).Item(k).Value="UNK" } k = k+1 } And finally the Excel generated output is. Business Physical Join Join Name Name Business Name Physical Name Join ON Join ON Type Type Sales Product Product sales_fact Fact products Products ON Key Key EQ EQ Periods periods_days Days sales_fact Sales Fact ON Day Key Day Key EQ EQ stores Stores sales_fact Sales Fact ON Store Key Store Key EQ EQ Region Region regions Regions stores Stores ON Key Key EQ EQ Plan Vs Actual stores Stores plan_vs_actual_fact Fact ON Store Key Store Key EQ EQ Download Hyperion/OBIEE tutorials from learnhyperion.wordpress.com

×