Sie sind auf Seite 1von 19

Framework Manager Introduction Workshop One

Create a Simple Model

1 Workshop Goals
We are going to create a Framework Manager model in which we use data source query subjects to represent a physical layer in the model and model query subjects to represent the presentation layer of the model. We will use the model as the basic for many further workshops, so please follow the directions carefully. This workshop is a script that reads from top to bottom. Each step depends on you having followed the instructions for the previous steps correctly. This first workshop is VERY LONG. Time is LIMITED. Focus on getting the workshop COMPLETED in the time available. This workshop requires you to have the GO Sales and GO Retailers databases installed on your computer. If you do not, please go to Appendix A now and restore the databases.

2 Create a New Project


Open Framework Manager. Select Create a new project. Specify a project name of GO_ApplicationGO Sales FM WKSHP. Select English USA as your language: you must/should do this follow-on workshops depend on this. Apologies in advance to those who prefer to work in other languages. Notes: When I say must/should, I mean tested versus not-tested.
If you want to add a project to a repository, you must set up the repository connection. <LINK: documentation reference>

When you work in Framework Manager, you work in the context of a project. The Framework Manager project contains objects that you organize for reporting authors according to the business model and business rules of your organization. You view these objects in the project page.

A Framework Manager project appears as a folder that contains a project file (.cpf) and the specific .xml files that define the project. The files in a project folder are unique to each project. Tip: The project and the projects associated files are contained in a project folder. We recommend that you do not add any other files to this project folder.
Project Folder
These are the contents of a project folder. Files that are used by all projects of the same type are stored in the templates folder. The templates folder also contains initial templates of the project and user preferences. File name <project name>.cpf Description The Framework Manager project file, which references the .xsd and .xml files used to define a project The actual model data created by Framework Manager users The preferences for Framework Manager projects The stored diagram information. For example, the diagram layout, notation, font, color, etc. The logged version history for each project or segment that has been added to a repository

model.xml Preferences.xml customdata.xml repository.xml

Files that are used by all projects of the same type are stored in the templates folder. The templates folder also contains initial templates of the project and user preferences.

Templates Folder
These are the contents of the templates folder. File name BMTModelSpecification.xsd CR1 Behaviors.xml Description The schema definition for Framework Manager projects. The user interface behavior of Framework Manager projects. This file also contains the mapping between actions and plug ins, XML tags and CR1 objects. A Framework Manager model template. The preferences template for Framework Manager Text to be translated for localization Text to be translated for localization, including icons and graphics

model.xml Preferences.xml projects. stringtable.xml resources.xml

We will not select an import method right now. Select Cancel to the Import process.

3 Create GO Sales Data Source Query Subjects


Select import metadata. Select Database as your import source.

3.1 Create a Data Source


If you have a connection to the samples database GO Sales, use it. Otherwise, create a new data source called GO Sales . The New database connection wizard starts. Type: Microsoft SQL Server. Isolation level: Use default object gateway Note: Isolation Levels The isolation level specifies how transactions that modify the database are handled. By default, the default object gateway is used. You can select from the following isolation levels. Not all types of database support each isolation level. Some database vendors use different names for the isolation levels. <Next> Server name: <Servername> Database name: GO Sales ML Application name: <blank> Collation sequence: <blank> Userid: Yes (checked) Password: Yes (checked, even if you have a blank password) Create a signon that the Everyone group can use: Yes (checked) Userid: sa <gsml> Password: sa <gsml> Note: This assumes you have not changed the sa login information. Note: Customer Workshop should point to <gsml> <Finish> Note: If you have a problem with the data source connection, you cannot edit it from Framework Manager. You must go touse Cognos Connection administration and edit it there.

3.2 Use Import to Data Source Query Subjects


The Import Wizard Select objects dialog open. Select all tables, and nothing else. <Next> Select the following check boxes Use primary and foreign keys

Between the imported query subjects Convert to inner join ( 1..n ) This is important so your results mesh with later steps in this workshop. <Import> <Finish> Open the GO Sales folder and you will see that Framework Manager has created one data source query subject per table you selected.

4 Examine the Imported Data Source Query Subjects


Open a query subject (click the + sign). You will see that each column in the table has a matching query item. Click on any query item and examine the properties in the bottom centerd frame. Rename a query item in the property sheet. Undo <Save> and save often. Right click on any query subject and select edit definition. You will see that all of these query subjects are simple select * from <table> queries. Notice the format of the table specification syntax in the query, especially the qualification. For example, the Country table is qualified by the data source connection name: [GO Sales IB 47].COUNTRY. In this dialog, you can modify the SQL query either by dragging and dropping database items into the query or had editing the query. We will do all this and more later in this workshop. Look at the <Preview> tab. This shows you Framework Managers interpretation of the SQL youve specified. Good for debugging. Press the <Test> button. This runs the query. You may wish to resize the dialog. In the top right hand corner of this dialog, you will see several buttons. Hold your mouse pointer over each one in turn and read the tool tip text. Using these buttons <Test Sample> the query. Determine the <Total Rows> in the result. Use the <Options> to change the number of rows of data returned in the test result to 100. <Test Sample> this. We will look at many more <Options> and the remaining buttons later. <Cancel> out of this dialog so you do not make anysave your changes.

5 Fun with Diagrams


In the center frame, click to open the model.:

You will see a list of objects in the model. This is a convenient view of the model for managing relationships and large numbers of objects. Using the Framework Manager toolbar buttons, switch to the <Object Diagram> view.

5.1 Zoom, zoom, zoomWorking with Diagrams


Use these buttons to hide or show the project view, properties, Diagram, Dimension map and Explorer windows:

Use these buttons to zoom and re-draw your diagram:

Using the toolbar buttons, select <Fit all> as your zoom level. Using the toolbar buttons, select <100%> as your zoom level.

Look at the bottom right corner of the diagram (where the scroll bars intersect) for the icon. Click on this and figure out what it does. Using the toolbar buttons, switch to <Large Icons>. Select a query subject in the model and Uusing the toolbar buttons, select <Auto LayoutSet Focal Point> then <Fit all>. It that more readable?to redraw the diagram.

Select the query subject called RETURN_REASON and press <Auto layout>. Note that the auto layout feature used the table you selected as it starting point for the layout. Using the toolbar buttons, select <Fit all> as your zoom level.

5.2 Back to the Details


Using the toolbar buttons, switch to <Details>. In the Diagram View, right click on PRODUCT_LINE and click <set Focal Point>.select Locate in Diagram and click <Auto layout>.

6 Clean Up the Joins


Framework Manager makes its best guess ondetermines cardinality based on the database structure. But, it is not perfect, as the databases do not provide sufficient information for Framework Manager to be 100% correct. You must examine the joins and ensure they are correct. You can work in either the Large Icons or Details view as you wish.Keep working in the Object diagram, details view. Select a relationship between two tables. <Right-click> and select <Edit Definition>. The Relationship Editor allows you to set properties of this relationship. For example, you can set the cardinality. Ensure the correct relationships as listed below. The other generated relationships should be ok as is. Hint: If you zoom in on the model, you can see the relationships and will not have to examine the properties of them all.

COUNTRY 1..1 COUNTRY 1..1 SALES_STAFF 1..1

0..n EURO_CONVERSION 0..n CONVERSION_RATE 0..n SALES_TARGET

7 Enhance the Query Subjects


7.1 Order Details
Over the next few workshops, we will enhance the default query subjects in several ways. The first thing we will do is to add some calculations to ORDER_DETAILS. In the <Object diagram> <Rright click> on ORDER_DETAILS and select <Edit Definition>. Select <Options> and the <SQL Settings> tab. Note that this query uses Cognos SQL. <Cancel> from options and look at the SQL query. There are several calculations we wish to add to this query subject. Before we can do so, we must convert this from a select * query to one that selects individual columns. In the left pane of the Edit definition dialog, open up the ORDER_DETAILS table. Select all of the columns in this table and drop them onto the * in the query. Delete the *, from the query. You should now have something like this:
Select ORDER_DETAILS.ORDER_DETAIL_CODE, ORDER_DETAILS.ORDER_NUMBER, ORDER_DETAILS.PRODUCT_NUMBER, ORDER_DETAILS.QUANTITY, ORDER_DETAILS.UNIT_COST, ORDER_DETAILS.UNIT_PRICE, ORDER_DETAILS.UNIT_SALE_PRICE from [GO Sales ML].ORDER_DETAILS

Add the following calculations to the query:


ORDER_DETAILS.QUANTITY * (ORDER_DETAILS.UNIT_SALE_PRICE ORDER_DETAILS.UNIT_COST) AS GROSS_PROFIT, ORDER_DETAILS.QUANTITY * ORDER_DETAILS.UNIT_SALE_PRICE AS ACTUAL_REVENUE, ORDER_DETAILS.QUANTITY * ORDER_DETAILS.UNIT_PRICE AS PLANNED_REVENUE, ORDER_DETAILS.QUANTITY * ORDER_DETAILS.UNIT_COST AS PRODUCT_COST, ((ORDER_DETAILS.QUANTITY * ORDER_DETAILS.UNIT_SALE_PRICE) (ORDER_DETAILS.QUANTITY * ORDER_DETAILS.UNIT_COST)) / (ORDER_DETAILS.QUANTITY * ORDER_DETAILS.UNIT_SALE_PRICE) AS MARGIN

You should now have something like this:


Select ORDER_DETAILS.ORDER_DETAIL_CODE, ORDER_DETAILS.ORDER_NUMBER, ORDER_DETAILS.PRODUCT_NUMBER, ORDER_DETAILS.QUANTITY, ORDER_DETAILS.UNIT_COST, ORDER_DETAILS.UNIT_PRICE, ORDER_DETAILS.UNIT_SALE_PRICE, ORDER_DETAILS.QUANTITY * (ORDER_DETAILS.UNIT_SALE_PRICE ORDER_DETAILS.UNIT_COST) AS GROSS_PROFIT, ORDER_DETAILS.QUANTITY * ORDER_DETAILS.UNIT_SALE_PRICE AS ACTUAL_REVENUE, ORDER_DETAILS.QUANTITY * ORDER_DETAILS.UNIT_PRICE AS PLANNED_REVENUE, ORDER_DETAILS.QUANTITY * ORDER_DETAILS.UNIT_COST AS PRODUCT_COST, ((ORDER_DETAILS.QUANTITY * ORDER_DETAILS.UNIT_SALE_PRICE) (ORDER_DETAILS.QUANTITY * ORDER_DETAILS.UNIT_COST)) / (ORDER_DETAILS.QUANTITY * ORDER_DETAILS.UNIT_SALE_PRICE) AS MARGIN from [GO Sales ML].ORDER_DETAILS

<Test> your query. Fix any errors that arise. Did you remember all the commas and ( )? <OK> In the left-pane tree of Framework Manager, open the ORDER_DETAILS query subject and you will see the columns you just added. <Save>

7.2 Organize the Query Subjects


The next steps are to organize you model. Currently, your model should looks like the image bellow. If you would compare this model to a disc drive, you would be installing everything in C:\ Before After

You will create some folders and namespaces to organization the model. This will keep the model organized, and prepare the model for publishing. Use the to, close all of your query subjects.

Rename the root namespace GO Sales to Model. The top-level namespace will not appear in Query Studio or Report Studio. In the left-pane tree of Framework Manager, select all of the query subjects. <Right click> and select <New Parent Namespace>. Rename the Namespace to GO Sales. This namespace will be used to identify the database and table you are using Create a Folder under Model. Name the folder Database View. Include GO Sales in the folder. This folder is used to organize the database and tables. It will not be use to identify the Query subjects.

7.3 Product and Product Multilingual


The two underlying tables, or query subjects, have a 1.1 to 1:n relationship. Lets combine these two query subjects into one. Select the Product and Product Multilingual query subjects. <Right click> and select <Merge into New Query Subject>. Framework Manager will generate a new data source query subject for you called PRODUCT_PRODUCT_MULTILINGUAL Delete the original Product and Product Multilingual query subjects. You will get a warning that you are removing a table that has relationships with other tables. Press OK. Rename the new query subject to PRODUCTS <Right click> on Product and select <Locate in Object Diagram>. Note that Framework Manager has generated the correct relationships for you. <Right click> on Product and select <Edit Definition>. Product number appears twice. The second reference is not required. Select the and delete the line:
PRODUCT_MULTILINGUAL.PRODUCT_NUMBER as PRODUCT_NUMBER1,,

Change LANGUAGE1 to LANGUAGE. Because LANGUAGE is a reserved word in the database, it should be surrounded with double quotes. Remember to test you query you close the window.

8 Publish a Package
You will now create a package and publish your model to Cognos ReportNet.

In the left-pane tree of Framework Manager, <right click> on Packages and select <Create Package>. Name the package GO_ApplicationGO Sales ML Framework Manager WKSHP. <Next> <Finish> We are taking all the package defaults for now. Click <Yes> when asked to open the publishing wizard. Ensure that Cognos ReportNet Server is selected as the destination. <Publish> <Finish>

9 Test Drive
9.1 Cognos Connection
Open your browser and log into Cognos Connection. Go to Public folders. You will see the package you just created. In Framework Manager, the package is just the metadata. In Cognos Connection (Content Manager), you have created a package that is both the metadata and reports, folders and what-notwhatnot associated with in. Click on the GO_ApplicationGO Sales ML Framework Manager WKSHP package to open it. Notice there are no reports in the package yet.

9.2 Query Studio


Start Query Studio. If asked, select the GO ApplicationGO Sales ML Framework Manager WKSHP package you just published. Open the ORDER_DETAILS folder and select all items in it. <Insert> them into your report. Congratulations. You have a working Framework Manager model. <Save> this report into the GO ApplicationGO Sales ML Framework Manager WKSHP package. <Return> to close Query Studio. Return to Framework Manager.

10 Framework Manager
Now, we want to add the presentation layer to the model.

10.1 Create a Folder


We will organize our Framework Manager project. In the next few tasks, you will create a folder structure for the End User. Create a namespace, at the same level as the Database View Folder called GO_Application. <Right click> on GO_Application and <Create Folder>. Call this folder Order Information. <Next> Do not add anything to this folder. <Finish>

Here is a snapshot of what I am looking for

Notes: The GORetailers namespace will be created in workshop 2b. The Product Information folder will be created later in this workshop. The Sales Rep folder will be created later in this workshop.

11 Orders Query Subject


<Right click> on the Order Information folder and <Create Query Subject>.

Name this query subject Orders and select <Model (Query Subjects and Query Items)> query subject. <Finish> You may wish to resize the dialog to make the next steps easier. Drag and drop query items from the Available Model Objects pane to the Query Items and Calculations pane as shown below:
ORDER_HEADER.ORDER_NUMBER ORDER_HEADER.RETAILER_NAME ORDER_HEADER.ORDER_DATE ORDER_METHOD.ORDER_METHOD_EN ORDER_DETAILS.PRODUCT_NUMBER PRODUCT_MULTILINGUAL.PRODUCT_NAME ORDER_DETAILS.QUANTITY ORDER_DETAILS.UNIT_COST ORDER_DETAILS.UNIT_PRICE ORDER_DETAILS.UNIT_SALE_PRICE ORDER_DETAILS.GROSS_PROFIT ORDER_DETAILS.ACTUAL_REVENUE ORDER_DETAILS.PLANNED_REVENUE ORDER_DETAILS.PRODUCT_COST ORDER_DETAILS.MARGIN

Test your query subject. Note: You might notice some duplicate rows. Do you know why this is? <OK> <Save>

12 Returns Query Subject


Create a model query subject called Returns in the Order Information folder with the following query items:
RETURNED_ITEM.RETURN_DATE RETURN_REASON.REASON_DESCRIPTION_EN RETURNED_ITEM.RETURN_QUANTITY

Test your query subject. <OK> <Save>

13 Product Information Folder


Create a folder named Product Information under the GO_Application namespace. Do not add anything to this folder. <Finish>

14 Products Query Subject


Create a model query subject called Products in the Product Information folder with the following query items:
PRODUCT.PRODUCT_NUMBER PRODUCT_MULTILINGUAL.PRODUCT_NAME PRODUCT_LINE.PRODUCT_LINE_EN PRODUCT_TYPE.PRODUCT_TYPE_EN PRODUCT_MULTILINGUAL.DESCRIPTION PRODUCT.PRODUCTION_COST PRODUCT.MARGIN

Test your query subject. Note: You might notice some duplicate rows. Do you know why this is? <OK> <Save>

15 Forecasts Query Subject


Create a model query subject called Forecasts in the Product Information folder with the following query items:
PRODUCT_FORECAST.YEAR PRODUCT_FORECAST.MONTH PRODUCT_FORECAST.EXPECTED_VOLUME

Test your query subject. <OK> <Save>

16 Additional Query Subject


Create a model query subject called Additional Info in the Product Information folder with the following query items.
PRODUCT.INTRODUCTION_DATE PRODUCT.PRODUCT_IMAGE

Test your query subject. <OK> <Save>

17 Sales Rep Information Folder


Create a folder named Sales Rep Information under the GO_Application namespace. Do not add anything to this folder. <Finish>

18 Sales Rep Query Subject


Create a model query subject called Sales Reps in the Sales Rep Information folder with the following query items:
SALES_STAFF.FIRST_NAME SALES_STAFF.LAST_NAME SALES_STAFF.POSITION_EN SALES_BRANCH.CITY

Test your query subject. <OK> <Save>

19 Contact Information Query Subject


Create a model query subject called Sales Rep Additional Information in the Sales Rep Information folder with the following query items:
SALES_STAFF.WORK_PHONE SALES_STAFF.EXTENSION SALES_STAFF.FAX SALES_STAFF.EMAIL

Test your query subject. <OK> <Save>

20 Branch Details Query Subject


Create a model query subject called Branch Details in the Sales Rep Information folder with the following query items:
SALES_BRANCH.ADDRESS1 SALES_BRANCH.ADDRESS2 SALES_BRANCH.CITY SALES_BRANCH.REGION SALES_BRANCH.POSTAL_ZONE COUNTRY_MULTILINGUAL.COUNTRY

Test your query subject. <OK> <Save>

21 Sales Rep Query Subject


Model shortcuts have a run-time failure in IB 47.10. There are times when you want the same information to appear in multiple locations in your model. Rather than creating duplicate query subjects, you can create shortcuts to existing query subjects. Lets create a shortcut to display the Sales Rep information in the Orders Information folder. Locate the Sales Reps query subject you created a moment ago.

Right click on the query subject and select Create shortcut. This will create a shortcut in the same location. Right click on the shortcut and select Cut. Right click on the Order Information folder and select Paste. Note: You could have also dragged and dropped. We want the Sales Reps shortcut to be the last entry in this folder. Select Orders and drag it up to be the first item in this folder. Select Returns and drag it up to be the second item in this folder. <Save> Re-Publish the Package

This is what the final model should look like at the end of this workshop.

22 Test Drive
22.1 Cognos Connection
Open your browser and log into Cognos Connection. Go to Public folders. You will see the package you just updated. Click on the GO_Application package to open it.

22.2 Query Studio


Start Query Studio. If asked, select the GO_Application GO Sales ML FMW1 package you just published. Create another report. <Save> this report into the GO_ApplicationGO Sales ML FMW1 package. <Close> Query Studio.

23 Other Clean-Up Items


In a model destined for production use, you would normally carefully order the folders, query subjects and query items. While we will not do this in a formal way for our model,

you might wish to give this a try. You simply click on an item in the Framework Manager metadata tree and drag and drop it up or down the tree as required. Another clean-up item for a production model, which we will skip in this model, it to ensure all of our query items have meaningful names. Often the names from the database are not user friendly. You can select any folder, query subject or query item and simply rename it in the model.

24 End
This ends Framework Manager workshop 1. Please be sure you saved your model. We will use this model for the next workshop. We will make many enhancements to this basic model to show you how to truly add value to your customerscustomers database. Note: We may want to remove access to the Database View Folder from our end-users. You may do this now.

25 Appendix A Restore the GO Sales Databases.


The ReportNet install guide tells you what databases to restore but not how to restore them. Here are the instructions for SQL Server. Please restore all sample databases now. Start SQL Server Enterprise Manager. Open the left tree until you see databases. Right click on databases, select All Tasks -> Restore database to open the Restore database dialog. Important: You must type in the database name you want. Otherwise, SQL Server will overwrite an existing database. In the Restore as database field, type in the database name. For example GO Sales. Select the Restore option From device to see new options. Click Select Devices to open the Choose Restore Devices. Click Add to open the Choose restore destination dialog. Ensure that Filename is the selected option and click ... to open the Backup Device Location dialog. Browse to select the database backup file you wish to restore. For example c:\Program Files\Cognos\crn\webcontent\samples\db\sqlserver\gosales Click OK to return to the Choose restore destination dialog. Click OK to return to the Choose Restore Devices dialog. Click OK to return to the Restore database dialog. DO NOT CLICK OK YET. Select the Options tab. In the center of the dialog you will see the Restore database files as table with two filenames. For example, you might see D:\MSSQL7\DATA\qssqd_log.ldf and d:\MSSQL7\DATA\qssqd.mdf.

These files names in the right hand column will have the incorrect path D:\MSSQL7\DATA. This path was correct for the original database files but not for your system. You need to correct the path to point to the data location of your SQL Server install WITHOUT CHANGING THE ACTUAL FILENAME (qssqd_log.ldf and qssqd.mdf). You need to locate your SQL Server data directory. It might be C:\Program Files\Microsoft SQL Server\MSSQL\Data. Yours is probably something similar. Edit the filenames mentioned above to correct the path. In this example, C:\Program Files\Microsoft SQL Server\MSSQL\Data\qssqd_log.ldf and C:\Program Files\Microsoft SQL Server\MSSQL\Data\qssqd.mdf. Click on to begin the restore process. Assuming no errors, you are complete Repeat this for the GO Retailers database.

Das könnte Ihnen auch gefallen