Professional Documents
Culture Documents
7)
Activity Guide June 2005 Part # 10PO2-ASAX-07710
Copyright 2005, 2006, Oracle. All rights reserved. Disclaimer This document contains proprietary information and is protected by copyright and other intellectual property laws. You may copy and print this document solely for your own use in an Oracle training course. The document may not be modified or altered in any way. Except where your use constitutes "fair use" under copyright law, you may not use, share, download, upload, copy, print, display, perform, reproduce, publish, license, post, transmit, or distribute this document in whole or in part without the express authorization of Oracle. The information contained in this document is subject to change without notice. If you find any problems in the document, please report them in writing to: Oracle University, 500 Oracle Parkway, Redwood Shores, California 94065 USA. This document is not warranted to be error-free. Restricted Rights Notice If this documentation is delivered to the United States Government or anyone using the documentation on behalf of the United States Government, the following notice is applicable: U.S. GOVERNMENT RIGHTS The U.S. Governments rights to use, modify, reproduce, release, perform, display, or disclose these training materials are restricted by the terms of the applicable Oracle license agreement and/or the applicable U.S. Government contract. Trademark Notice Oracle, JD Edwards, PeopleSoft, and Siebel are registered trademarks of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.
Table of Contents
Lab 1-1: ABC Background .................................................................................. 1 Lab 1-2: Gather Information to Start Building an Initial Business Model ............. 7 Lab 1-3: Verifying and Testing a Data Source .................................................. 10 Lab 1-4: Importing a Data Source ..................................................................... 14 Lab 1-5: Defining Keys and Joins ..................................................................... 21 Lab 2-1: Defining the Repository Logical Structure........................................... 27 Lab 2-2: Building Simple Fact Measures .......................................................... 33 Lab 3-1: Customizing the Presentation Catalog................................................ 39 Lab 4-1: Testing the Repository ........................................................................ 45 Lab 4-2: (Optional Lab) Checking Consistency................................................. 55 Lab 5-1: Importing Additional Product Tables ................................................... 61 Lab 5-2: Creating Multiple Sources for a Logical Table Source (Manual) ......... 64 Lab 5-3: Creating Multiple Sources for a Logical Table Source (Automated) ... 66 Lab 5-4: Specifying the Most Economical Source............................................. 71 Lab 6-1: Creating Calculation Measures Using Logical Columns ..................... 77 Lab 6-2: Creating Calculation Measures Using Physical Columns ................... 81 Lab 6-3: Creating Calculation Measures Using the Calculation Wizard ............ 85 Lab 7-1: Creating Dimensional Hierarchies ...................................................... 93 Lab 7-2: Creating Level-Based Measures....................................................... 102 Lab 7-3: Defining Share and Rank Measures ................................................. 108 Lab 8-1: Using Aggregate Tables ................................................................... 113 Lab 9-1: Modeling a Value-Based Partition..................................................... 127 Lab 10-1: Using Dynamic Repository Variable ................................................. 139 Lab 11-1: Creating Comparison Measures ....................................................... 147
Lab 11-2: Testing the Comparison Measures and Calculations........................ 152 Lab 12-1: Modeling the Physical Layer for the Slowly Changing Dimension .... 157 Lab 12-2: Modeling the Logical Layer for the Slowly Changing Dimension ...... 164 Lab 12-3: Modeling the Presentation Layer for the Slowly Changing Dimension......................................................................................... 167 Lab 13-1: Modeling a Dimension Extension Table............................................ 171 Lab 13-2: Modeling a Fact Extension Table...................................................... 177 Lab 14-1: Creating Users and Groups .............................................................. 185 Lab 14-2: Assigning Permissions to Users ....................................................... 190 Lab 14-3: Authenticating Using an External Database...................................... 195 Lab 14-4: Setting Query Limits and Timing Restrictions ................................... 202 Lab 15-1: Inspecting Cache Files...................................................................... 207 Lab 15-2: Modifying Cache Parameters............................................................ 212
ii
Time
Instructions:
Read the following ABC document:
ABC
Business Scenario
ABC sells food and non-food items to restaurant chain customers throughout the United States. ABC is looking for a way to enable its current employees (especially experienced sales staff and operations managers) to ask their most pertinent business questions themselves. ABC believes that up-to-date sales performance monitoring, especially if it can be made exception-driven, will enable the company to better focus its management and customer service efforts. ABC also has the vision of making this data directly available to customers so they can better analyze their purchase history and compare it to what is being purchased nationally. ABCs management feels that this added value will set them apart from their competitors and result in additional sales. You are a consultant, hired by ABC to implement its business analysis. From your initial interviews with managers, you obtain the following information about ABC:
Managers want use their own information to answer about the sales history of their products, the buying history of their customers, the order fulfillment performance of their operations group, and the selling performance of the sales force. The company has little experience in data analysis and they do not expect to hire any data analysts in the future. They want to be able to ask the relevant questions themselves without being required to learn more about computers. The database has about 350,000 invoice-level records (the grain of the database).
To make this kind of information widely available within the enterprise, it must have a structure consistent with the way employees think about the business. From further interviews and examination of existing sample reports presenting invoice-based data, you determine the following:
ABC employees think about their business in terms of sales, products and product hierarchies, time periods, and customer-sales force relationships. There are five levels of products. From the bottom (most detailed) level to the top, they are: o Specific Product o Generic Product o Sub-Type o Type o Total Many existing reports contain data presented at these levels. An example would be: (Product) Type = Cheese, (Product) Sub-Type = American Cheese, and Product = American Cheese Slices.
There are five levels in the customer-sales organization. These levels mirror organizational management responsibilities. From the bottom, they are: o Customer o Sales Representative o District o Region o Total The time reporting periods are: o Day o Month o Year o Total time
In addition to these hierarchies, ABC would like to group customers using geographical attributes like Zip Code, City, and State. Likewise, they would like to analyze products by characteristics such as Diet Type and Suppliers. The commonly reported measures are dollar sales, units ordered, units shipped, and net weight shipped. Another important measure for order fulfillment is cuts, the difference between the units ordered and units shipped (units ordered units shipped). Operations management tracks this since cuts equals lost sales, and operations management is responsible for minimizing cuts. ABC would like to look at all these measures at all levels of the hierarchy; by the important product and customer attributes, by the various time periods; and compare these with previous years.
Source Data
From interviewing the data administrators and examining documents they provide, you learn that the source data resides in the invoice system on a Microsoft SQL server. The data is at the invoice level. In addition to the invoice information, there are various tables that provide information on customers, the product lines, the time periods, and the relationship between customers and the companys sales organization. It appears as though relevant data comes from the following tables, which exist in the invoice schema:
D1_product_type
D1_product_subtype
D1_customer2
D1_Orders2
Outcome Time
Instructions:
Use the information in the ABC document to help you determine the following information, which you will need to implement the business model. 1. What measures (facts) does ABC wish to report on?
3. Against which attributes (dimensions) does ABC want to analyze their facts?
6. Complete the following diagram with your identified facts and dimensions:
(Dimension)
(Dimension)
(Facts)
(Dimension)
Product
Sales
Customer
Scenario
Outcome Time
Instructions:
1. As the server architect, verify your connectivity to the supplier2 database in MS SQL Server. a. Select Start > Programs > Administrative Tools > Data Sources (ODBC). b. Select the System DSN tab. c. Select the ABC data source. d. Click Configure. e. Observe that the name of the data source is ABC, and the SQL Server you want to connect to is on your local machine (localhost). f. Click Next. g. Verify authentication. i. Verify that the With SQL Server authentication radio button is selected. ii. Verify that the Connect to SQL Server to obtain default settingscheck box is selected. iii. Verify that sa is in the Login ID field and the Password field is blank. iv. Click Next. h. Verify the default data source. i. The Change the default database to is set to supplier2. ii. Click Next. i. Click Finish. A list of the configuration options you selected displays. j. Test that the data source connection is valid. i. Click Test Data Source and verify that you get the message TESTS COMPLETED SUCCESSFULLY! ii. Click OK.
10 Analytics: Server Architect (Siebel 7.7)
iii. iv.
2. Test the connection to the ABC ODBC data source using the Siebel Analytics ODBC Client tool. Note: Siebel Analytics ODBC Client Tool is an administrator tool that provides an environment for testing connectivity to physical data sources. However, this can be accomplished using any ODBC-compliant tool. a. b. c. d. Select Start > Programs > Siebel Analytics > Siebel Analytics ODBC Client. Select File > Open Database. In the DSN field, use the drop-down list to select ABC. In the UID (user ID) field, type sa (no password).
e. Click OK. 3. Now that you have connected successfully to the ABC data source, view the schema for supplier2. a. Select Utility > View Schema. b. In the Database Tables field, select the D1_Calendar2 table. What happens?
c. In the Columns in the Current Table field, scroll down to select the Month_in_Year column. What happens?
d. Review the attributes of the Month_in_Year column. i. What is the column Type?
ii.
11
e. Close the Database Schema window. 4. Use the schema information just gathered to issue a query directly to the supplier2 database. a. Select Utility > Enter SQL Query. b. Create a query to request the number of distinct months in a year. In the SQL Statement Editor, type the SQL statement SELECT distinct month_in_year FROM d1_calendar2.
Note: Executing the SQL and generating the results above proves that you have connected to the supplier2 database schema successfully through your ABC ODBC data source. 5. Select File > Exit to exit the Siebel Analytics ODBC Client.
12
3.d.i. 3.d.ii.
13
Scenario
Outcome
Time
Instructions:
Before you import the table schema into the Physical layer of the repository, examine the tables and keys defined in the supplier2 MS SQL database, using MS SQL Server Administration utilities. 1. Select Start > Programs > Microsoft SQL Server > Enterprise Manager. 2. Examine the supplier2 database table object. a. Expand Microsoft SQL Servers. b. Expand SQL Server Group. c. Expand (local) (Windows NT). d. Expand Databases.
14
e. Expand supplier2.
3. Examine the properties of the D1_Calendar2 table in the supplier2 database. a. Click the Tables icon. b. In the right pane, double-click the D1_Calendar2 table. The Table Properties dialog box appears:
15
e. Scroll down and examine the table columns. f. Click Cancel to close the Table Properties window. 4. Examine the properties of D1_customer2 table in the supplier2 database. a. In the right pane, double-click the D1_customer2 table. The Table Properties dialog box appears:
d. Scroll down and examine the table columns. e. Click Cancel to close the Table Properties window.
16
5. Repeat this process for the following tables, answering the questions below for each table you examine:
Table Name D1_Orders2 D1_products
c. Click Cancel to close the Table Properties window. d. Select Console > Exit to close Enterprise Manager. 6. Create a new repository file for ABC. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Administration. b. Select File > New. c. To name the repository, enter ABC in the File name field and click Save. 7. Import ABCs table schemas from the supplier2 database. a. Select File > Import > from Database. b. Scroll down to select ABC:
c. d. e. f.
In the User Name field, verify that sa is the value and leave the Password field blank. Click OK. The Import dialog box opens. Expand the supplier2 folder. Expand the dbo folder.
17
g. Select the following tables to import the table schemas into the Physical layer to build ABCs initial business model: Note: Click the first table (to deselect any parent objects), and then use CTRL + click to select the remaining tables.
Physical Table Name D1_Calendar2 D1_customer2 D1_Orders2 D1_products
h. i. j. k. l. m.
Note: At import, you can specify the type of metadata to import. The default is to import tables, primary keys, and foreign keys. Only import objects needed for query generation. Verify that the check boxes for Tables, Keys, and Foreign Keys are selected. Verify that ABC, supplier2, and dbo objects are not selected, before you click the Import button. Click Import. The metadata is imported into the Physical layer of the Administration Tool and the data source appears in the Physical layer. When the import is completed, click Close. To display the tables, expand the ABC data source, expand the supplier2 catalog icon, and expand the dbo schema icon. Verify that four tables imported successfully in the dbo folder.
8. Verify the connection pool for ABCs data source. a. Double-click the Connection Pool object. b. Modify the connection pool using the following values:
Name Data source name User name Password SUPPLIER CP ABC sa
c. Click OK. d. Click OK to confirm the blank password. e. Why would you create more than one Connection Pool for a single data source?
9. Perform a visual check to verify that the only key imported automatically into the schema was defined on the D1_Calendar2 table. Expand the folder for each table in the schema looking for icon next to the columns; this icon indicates that this column is a key column. the a. Click + (plus) to expand D1_Calendar2 table. b. Observe the YYYYMMDD column.
18 Analytics: Server Architect (Siebel 7.7)
c. Collapse D1_Calendar2. d. Expand the D1_customer2 table. e. Was a key automatically imported for D1_customer2?
f. Collapse D1_customer2. g. Expand the D1_Orders2 table. h. Was a key automatically imported for D1_Orders2?
i. Collapse D1_Orders2. j. Expand the D1_products table. k. Was a key automatically imported for D1_products?
l. Collapse D1_products. 10. Save the repository. a. Select File > Save. b. Click No to check Global Consistency. Note: Check Global Consistency checks for errors in the entire repository. Some of the more common checks are done in the Business Model and Mapping and Presentation layers. Since these layers are not defined yet, bypass this check until the other layers in the repository are built. 11. Remain logged in to the Siebel Analytics Administration Tool for the next lab.
19
20
Scenario
Outcome Time
Instructions:
You should still be logged in to the Siebel Analytics Administration Tool. 1. Before you begin defining the keys and joins manually, examine the key defined on D1_Calendar2. Double-click the D1_Calendar2 table. a. Select the Keys tab. b. Double-click PK_D1_Calendar2 key. The Physical Key dialog box opens. c. What is the physical key column for this table?
e. Click Cancel. f. Select the Foreign Keys tab. g. Is there a physical foreign key column for this table?
h. Click Cancel.
21
Note: In the next steps, you will define keys and joins using two techniques. The first technique allows you to create primary keys on tables using the Physical Table properties dialog box. The second technique allows you to create both joins and foreign keys on the table using the Physical Diagram view. 2. In the following steps, you will use the first techniqueusing the Physical Tables propertiesto configure the primary key on the D1_Orders2 table. The primary key for D1_Orders2 is made up of multiple columns, called a compound key (ProdKey, PeriodKey, and CustKey) used to uniquely identify a row in a table. a. In the Physical layer, double-click the D1_Orders2 table. b. Select the Keys tab. c. Click New. The Physical Key dialog box opens. d. Select the check boxes for the following columns:
Column Name ProdKey PeriodKey CustKey
e. Click OK to close the Physical Key dialog box. Note: Even though you have selected three columns, only one will appear in this dialog box. f. Click OK to close the Physical Table window. 3. Verify that the three columns (CustKey, PeriodKey, and ProdKey) display the Primary Key icon in the Physical layer. Note: You may have noticed that the Primary Key icons appear only in the Physical layer. They did not appear in the Physical table dialog box in a prior step.
a. Collapse the D1_Orders2 table. 4. Using the second technique in the following steps, you will define joins and foreign keys using the Physical Diagram view. a. Right-click the ABC data source and select Physical Diagram > [any option] to open the Physical Diagram view. b. Drag the table objects so they are all visible. c. The first join you will create will define the relationship between D1_Calendar2 and D1_Orders2. The join you create will represent the following relationship between these tables: D1_Calendar2 has a one-to-many relationship with D1_Orders2.
22 Analytics: Server Architect (Siebel 7.7)
i.
ii.
iii.
Click the D1_Calendar2 table, and then click the D1_Orders2 table. Note: It matters which table you click first. The join is creating a one-to-many (1:N) relationship that joins the primary key column in the first table to a column that is a foreign key in the second table. Select the columns that join the tables. Select the D1_Calendar2.YYYYMMDD column, and then select the D1_Orders2.PeriodKey. Verify that the Expression edit box (bottom) contains the following expression:
iv. v.
Click OK. Observe the 1:N relationship between D1_Calendar2 and D1_Orders2 represented in the Physical Diagram view:
6. Repeat the process you just completed and create joins and foreign keys for the other tables. Note: As you create the joins, a message will appear, asking you to create a column as a key column on the first table, which is necessary to create the relationship to the foreign key column in the second table. When you see this message, click Yes.
a. Create the joins based on the expressions listed below. The join is creating a one-to-many (1:N) relationship that joins the key column in the first table to a column that is a foreign key in the second table. Note: Verify that each Expression edit box contains the following expression: D1_customer2.NewKey = D1_Orders2.CustKey D1_products.ProductKey = D1_Orders2.ProdKey
Analytics: Server Architect (Siebel 7.7) 23
c. Close the Physical Diagram window. 7. Observe some additional options for viewing the physical table diagram. Right-click D1_Calendar2 table and select Physical Diagram > Object(s) and Direct Joins. a. Observe the Physical Diagram:
b. Close the Physical Diagram window. c. Repeat this process for D1_Orders2 table, by selecting Physical Diagram > Object(s) and Direct Joins for D1_Orders2 table. Why are ALL of the tables visible in the diagram with D1_Orders2?
d. Close the Physical Diagram window. 8. Select File > Exit to exit the Siebel Analytics Administration Tool. 9. Click Yes to save changes.
24
1.g. 7.c.
25
26
Outcome
Time
Instructions:
The subject area that the team has defined is based on Sales, Products, Customers, and Period data. These data elements will be used to model the initial application. The physical model you are working with now looks like this:
1. Using the Siebel Analytics Administration Tool, you will define the repository logical structure for ABCs business model. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Administration. b. Select File > Open > Offline. c. Double-click ABC.rpd to open the repository file. d. Enter the following parameters:
User Password Administrator <blank>
Analytics: Server Architect (Siebel 7.7) 27
e. Click OK. 2. ABCs initial model will be built to support the Supplier Sales initial business model. Use your understanding of ABCs business requirements to identify the physical tables that will be used to support the business model (refer to the prior methodology lab if necessary): Customer, rep, district, and region data maps to source table. Main product information data maps to source table. source table. Invoice sales data maps to Month codes and names data maps to source table. 3. Create a business model folder in the Business Model and Mapping layer that contains the logical-to-physical table mappings for ABCs Supplier Sales business model. a. Right-click the white space of the Business Model and Mapping layer and select New Business Model. b. In the Name field, type SupplierSales. c. Click OK. The new Business Model and Mapping folder appears in the Business Model and Mapping layer:
Note: The red symbol on the business model folder indicates it is not enabled for querying. You will update this indicator once the Presentation layer is defined. 4. Create ABCs business model using the four tables you identified in the prior step to support the Suppliers Sales business model. a. Expand the ABC data source, expand the supplier2 catalog icon, and expand the dbo schema icon. b. Use CTRL+click to select the tables D1_Calendar2, D1_customer2, D1_Orders2, and D1_products. c. Drag the selected tables onto the SupplierSales folder. Note: When tables with keys and joins are defined in the Physical layer and dragged onto the business model folder at the same time, the keys and joins will automatically be created in the Business Model and Mapping layer. If tables are added to a business model later, the keys and joins must be created manually. Note: The table icon for D1_Orders2 is yellow, which means it is a logical fact table. The color changes when logical joins to the fact are created. 5. Rename the tables in the Business Model and Mapping layer to make them more meaningful. a. Double-click the D1_Calendar2 table. The Logical Table dialog box opens. b. Verify that the General tab is selected. c. In the Name field, type Periods. d. Click OK.
28
6. Delete columns that are not needed for analysis. a. Expand the SalesFacts table and then click on the first column below. Then use CTRL+click to select the remaining columns to be deleted.
Columns InvNbr DWACostExtnd RepCostExtnd CMDolrs
i. ii. iii.
Verify that the SalesFacts table is not selected, before you press the DELETE key. Press the DELETE key. Click Yes to delete the objects.
29
b. Expand the Periods table and then click on the first column below. Then use CTRL+click to select the remaining columns to be deleted.
Columns True_Julian_Day_NM Day_in_Month Day_Name Day_in_Year Day_Since_Jan_11990 Week_Num_in_Year WeekSince_Jan11990 Chinese_Year through DAGO (including DAGO)
i. Verify that the Periods table is not selected, before you press the DELETE key. ii. Press the DELETE key. iii. Click Yes to delete the objects. c. Expand the Products table and select the PGCode column. i. Verify that the Products table is not selected, before you press the DELETE key. ii. Press the DELETE key. iii. Click Yes to delete the object. d. Expand the Customers table and use CTRL+click to select the RepNo and Factor columns. i. Verify that the Customers table is not selected, before you press the DELETE key. ii. Press the DELETE key. iii. Click Yes to delete the objects. 7. Rename logical columns for better understanding by end users. a. Double-click the logical column YYYYMMDD, in the Periods table. The Logical Column dialog box opens.
b. Verify that the General tab is selected. c. In the Name field, type Day. d. Click OK. 8. Rename the following logical columns, repeating the process in the previous step:
Periods Table Full_Gregorian_Dte Month_in_Year SalesFacts Table
30
ActlExtnd UnitShpd UnitOrdd NetWghtShpd Customers Table NewKey Name SalesRep Products Table GenericDescription SpecificDescriptin Package_weight
Dollars Units Shipped Units Ordered Net Weight Shipped Rename to: Customer Key Customer Sales Rep Rename to: Generic Specific Package Weight
9. Select File > Save to save the repository. 10. Click No to check Global Consistency. 11. Remain logged in to the Siebel Analytics Administration Tool for the next lab.
31
32
Scenario
Outcome Time
Instructions:
You should still be logged in to the Siebel Analytics Administration Tool. 1. Review the dimensional model for ABCs Supplier Sales business model by opening the Business Model Diagram. Right-click the SupplierSales subject area and select Business Model Diagram >Whole Diagram. Rearrange the table objects to look similar to this:
Note: The dimensional model for the Supplier Sales business model is an example of a star schema, a single fact table that has foreign key relationships with several dimension tables.
Analytics: Server Architect (Siebel 7.7) 33
a. Based on the definition of a star schema in the Business Model Diagram above, identify the fact table, dimensional tables, and cardinality between tables for the SupplierSales business model. i. Which logical table is the fact table?
ii.
iii.
iv.
v.
b. Double-click the connector between the tables Products and SalesFacts. Observe the information in the Logical Foreign Key dialog box. i. Which columns are linked?
ii. Click Cancel. c. Double-click the connector between the tables Customers and SalesFacts. Observe the information in the Logical Foreign Key dialog box. i. Which columns are linked?
ii. Click Cancel. d. Double-click the connector between the logical tables Periods and SalesFacts. Observe the information in the Logical Foreign Key dialog box. i. Which columns are linked? Note: Notice that the logical column named Day has been renamed from YYYYMMDD. ii. Click Cancel. e. Close the SupplierSales Logical Table Diagram window. 2. Examine the logical table sources.
34
Note: Each logical table has a Sources folder that contains one or more logical table sources. The logical table sources provide the mapping to columns in the Physical layer.
a. Expand the Sources folder of the SalesFacts logical table. What is the name of the logical table source for the SalesFacts table?
b. Double-click the SalesFacts logical table source, D1_Orders2. The Logical Table Source dialog box opens. Select the Column Mapping tab. c. Scroll to the right to see the Physical Table column and adjust the column widths to make all three columns visible:
i.
ii.
d. Click Cancel to close the dialog box. 3. You will create ABCs simple fact measurements by defining default aggregation rules on logical columns defined in the SalesFacts table. Note: Measures are often data that is additive, such as total dollars or total quantities. The SalesFacts logical table serves as the measures in our business model, and some of its logical columns will be aggregated by summing. a. Double-click the Dollars logical column. The Logical Column dialog box opens. Select the Aggregation tab. b. In the default aggregation rule field, select the drop-down arrow to display the choices.
Analytics: Server Architect (Siebel 7.7) 35
i.
c. ABC wants to analyze the total dollars as a business measurement. Specify the default aggregation rule for Dollars to Sum. i. In the default aggregation rule field, use the drop-down menu to select Sum. ii. Click OK. 4. Specify the default aggregation rule on the remaining logical columns in SalesFacts. a. Select Units Shipped, then use CTRL+click to select Units Ordered and Net Weight Shipped. b. Right-click and select Set Aggregation. c. Select Sum as the default aggregation rule.
d. Click OK. Note: This is another way of setting aggregation on logical columns. e. What happens to the logical column icons after you change the default aggregation rule to Sum?
36
5. Select File > Exit to exit the Siebel Analytics Administration Tool. 6. Click Yes to save the changes to ABC.rpd.
37
4.e.
38
Scenario
Outcome Time
Instructions:
1. Using the Siebel Analytics Administration Tool, you will define the presentation layer for ABCs business model. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Administration. b. Select File > Open > Offline. c. Double-click ABC.rpd to open the repository file. d. Enter the following parameters:
User Password Administrator <blank>
e. Click OK. 2. Create a new presentation catalog in the Presentation layer. a. Verify that the Presentation layer is visible. If it is not visible, select View > Presentation. b. Drag the SupplierSales business model folder into the Presentation layer. A presentation catalog folder appears with the name SupplierSales. Note: All objects within a presentation catalog must derive from a single business model. 3. Reorder the columns in the SupplierSales presentation catalog.
39
b. Double-click the Customers presentation table. The Presentation Table dialog box opens. c. Select the Columns tab. d. Change the order of the columns, using the Up and Down buttons or by dragging, into the following order:
Columns Region District Sales Rep Customer Address Phone City State RouteCode Customer Key
e. Click OK to close the window. 4. Change the name of a column. Note: By default, a presentation column uses the same name as its logical column in the Business Model and Mapping layer. a. Expand the Customers presentation table. b. Observe the columns are now in the order you specified above. c. Double-click the District column. The Presentation Column dialog box opens. d. Verify that the General tab is selected. e. Deselect the Use Logical Column Name check to rename the column. f. Change the column name by typing Sales District in the Name field. g. Select the Aliases tab. What is the logical column name (or alias) for this presentation column?
40
h. Click OK to close the window. 5. To make the content more understandable to users, simplify it by deleting unnecessary columns. a. In the Customers table, select the Customer Key column and press the DELETE key. b. Click Yes to delete the object. The Customer Key column is deleted from the Customers table. c. Delete the following columns in the Presentation layer:
Products Table ProductKey SalesFacts Table ProdKey PeriodKey CustKey
d. Why should you delete key columns from the presentation tables?
e. What would be a reason not to delete key columns from the presentation tables?
f. Collapse the SupplierSales catalog folder. 6. Create a new presentation catalog in the Presentation layer based on the SupplierSales catalog folder for ABCs District Managers (DM). District Managers will analyze information required to manage their sales district, such as sales dollars and sales reps; they will not analyze any information related to ABCs products. a. Copy an existing presentation catalog. i. Select the SupplierSales catalog folder. ii. Select Edit > Duplicate. A presentation catalog folder appears with the name SupplierSales#1. Note: All objects within the SupplierSales catalog folder are also in the SupplierSales#1 catalog folder. b. Rename the SupplierSales#1 catalog folder to SupplierSalesDM. i. Double-click SupplierSales#1. ii. Verify that the General tab is selected. iii. Change the catalog folder name by typing SupplierSalesDM in the Name field. iv. Click OK. 7. The District Managers will not analyze the SupplierSales product information in their view of the data.
Analytics: Server Architect (Siebel 7.7) 41
a. Expand the SupplierSalesDM presentation catalog. b. Which presentation table in the SupplierSalesDM catalog folder stores Supplier Sales product data?
c. Select the Products presentation table and press the DELETE key. d. Click Yes to delete objects. The Products table is deleted from the SupplierSalesDM catalog. 8. Save the changes to ABC.rpd. 9. Leave the Siebel Analytics Administration Tool open for the next lab.
42
5.d.
5.e. 7.b.
43
44
Scenario
Outcome Time
Instructions:
1. Using the Siebel Analytics Administration Tool, you will run a consistency check looking for errors in the repository. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Administration. b. Select File > Open > Offline. c. Double-click ABC.rpd to open the repository file. d. Enter the following parameters:
User Password Administrator <blank>
e. Click OK. 2. Perform a consistency test to check the Business Model and Mapping layer for inconsistencies, such as logical tables that do not have logical sources configured, or business models that do not have Presentation catalogs defined. a. In the Business Model and Mapping layer, right-click the SupplierSales subject area and select Check Consistency. A prompt appears, verifying that the business model is consistent, and asking if it should be made available for queries.
45
c. Click OK. The business model folder changes from unavailable for querying to available for querying . Notice that the red circle disappears from the business model folder once the business model is available for queries. 3. Enable query logging for the Administrator user by setting the Query Logging Level to see the SQL generated and the various data sources, tables, and columns that are accessed during testing. a. Select Manage > Security. b. In the left pane, select Users. The Administrator user appears in the right pane. c. In the right pane, double-click Administrator. The User dialog box opens. d. Verify that the User tab is selected. e. In the Logging level field, set the value to 2. f. Click OK. g. Close the Security Manager window. Note: More Security-related topics will be addressed later in the course. 4. Select File > Exit to exit the Siebel Analytics Administration Tool. a. Click Yes to save changes to ABC.rpd. 5. Update the Repository section in the analytics initialization file, NQSConfig.INI. Note: An entry in the Repository section of the initialization file instructs the Siebel Analytics Server to load a specific repository into memory upon startup. If it detects a syntax error while loading the repository, it logs the error to the server log file (NQServer.log). a. Double-click C:\SiebelAnalytics\Config\NQSConfig.INI. b. Locate the REPOSITORY section and modify as follows:
c. Save the changes and close the file. d. Close the Windows Explorer. 6. Restart the Siebel Analytics Server service to read in the new ABC repository, and verify that the Siebel Analytics Web service is started. a. Select Start > Programs > Administrative Tools > Services. b. If the Siebel Analytics Server service is already started, right-click Siebel Analytics Server and select Restart. If Siebel Analytics Server is not started, right-click and select Start. c. If Siebel Analytics Web service is already started, right-click Siebel Analytics Web and select Restart. If Siebel Analytics Web is not started, right-click and select Start.
46 Analytics: Server Architect (Siebel 7.7)
d. Verify that the Siebel Analytics Server and Siebel Analytics Web services are started by selecting Action > Refresh until the Status column displays the value Started.
e. Close Services. 7. Examine the NQServer.log file to verify that startup is successful. a. Double-click C:\SiebelAnalytics\Log\NQServer.log. b. Scroll down to the bottom of the file and locate the message Loading repository C:\SiebelAnalytics\Repository\ABC.rpd: i. Verify that the Subject Area that was loaded, and note the Siebel Analytics Server started message.
Note: The log file can contain messages indicating why the server startup failed. For example, if there were a syntax error in the NQSConfig.INI file, the NQServer.log file would contain messages about the syntax error. After examining the log messages, correct the problem and start the server again. c. Close the NQServer.log file. d. Close the Windows Explorer. 8. Use the Analytics ODBC Client to verify the schema. a. Select Start > Programs > Siebel Analytics > Siebel Analytics ODBC Client. b. Select File > Open Database. c. In the DSN field, use the drop-down menu to select Analytics Web. Note: The Analytics Web DSN is an ODBC data source created to connect to Siebel Analytics Server. d. Type Administrator in the UID field and leave the Password field blank.
47
e. Click OK. 9. Test and verify the SupplierSales business model using the Analytics ODBC Client tool. Select Utility > View Schema. a. List the business model tables.
c. Close the Database Schema dialog box. 10. Test the Supplier Sales business model by executing queries to verify the results. a. Select Utility > Enter SQL Query. Note: The queries you issue in this lab are not case-sensitive. The query syntax begins with the word SELECT, followed by a list of columns (logical columns defined in the Presentation or Business Model and Mapping layer), then followed by a FROM clause. The FROM clause is followed by table names, or just the catalog folder name. The results appear in a table with columns matching the list of columns following the SELECT statement. b. Execute a query for a list of regions by typing select region from suppliersales. Verify that three rows were returned:
48
c. Execute a query for a list of districts and total dollars (sorted in ascending order) in the East region for 1999 by typing select district, dollars from suppliersales where region=East and year=1999 order by dollars asc. Examine the results returned:
d. Observe the rows of information returned coming from the presentation tables in the SupplierSales catalog (Customers and SalesFacts). Which Sales District has the highest revenue (dollars)? Note: You will execute this query again in a later step using Siebel Answers to compare results. 11. Select File > Exit to close the Siebel Analytics ODBC Client tool. 12. Verify that the PopChart service is started. This is the engine that renders results in chart and graph views in Siebel Answers and Intelligence Dashboards. a. Select Start > Programs > Administrative Tools > Services. b. In the Services window, scroll to locate the PopChart 5.1 service. c. Double-click the PopChart 5.1 service. d. Verify that Startup type is set to Automatic. If not, change it. e. Verify that Service status is set to Started. If not, start the service. f. Click OK. g. In the Services window, verify that the PopChart 5.1 service is started and Startup type is set to Automatic. h. Minimize the Services window. 13. Start Siebel Answers. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Web. b. Enter the following parameters:
User Password Administrator <blank>
14. Execute queries to test the SupplierSales subject area. Create a request showing the dollars for each sales rep in the MidAtlantic district in the year 1999. a. Select the SupplierSales subject area. b. Expand the Customers table and click the Sales Rep and Sales District columns. c. Expand the SalesFacts table and click the Dollars column. i. On the Dollars column, click the Order by icon once to select Order Ascending icon. d. Expand the Periods table and click the Year column. e. Create filters on the Year and Sales District columns. In the Year column, click the Add Filter icon. In the Value field, enter 1999 and click OK. ii. In the Sales District column, click the Add Filter icon. In the Value field, enter MidAtlantic and click OK. f. Verify the filters: i.
g. Remove columns that do not need to be displayed in the request results. i. In the Year column, click the Remove Column icon. ii. In the Sales District column, click the Remove Column icon. h. Click the Results tab to view the results. Which Sales Rep produced the highest revenue (dollars)?
15. Create a request showing the dollars for each sales district in the East region for the year 1999. a. b. c. d. Click the Create a new request icon and select the SupplierSales subject area. Select Customers > Sales District to add the column as criteria. Select Customers > Region to add the column as criteria. Select SalesFacts > Dollars to add the column as criteria. i. On the Dollars column, click the Order by icon once, to select Order Ascending icon. e. Click Periods.Year to add the column as criteria. f. Create the filters. In the Value field, enter 1999 and In the Year column, click the Add filter icon. click OK. ii. In the Region column, click the Add filter icon. In the Value field, enter East and click OK. g. Verify the filters: i.
50
h. Delete the Year and Region columns from the request results by clicking the Remove Column icon in each column. i. Click the Results tab to view the results. Which Sales District has the highest revenue (dollars)?
j. Compare these results with the results generated for the East region using the Siebel Analytics ODBC Client in the prior step. 16. Select File > Close to exit Siebel Answers. 17. Examine the Analytics query log file. a. Double-click C:\SiebelAnalytics\Log\NQQuery.log. Scroll down to the bottom of the file to locate the last query you executed. (See the following illustration.)
b. Locate the SQL Request section. i. Which presentation table is Sales District information coming from?
ii.
iii.
c. Locate the General Query Info section, just below the SQL Request section. i. Which repository (logical name) was accessed for this query?
51
ii.
iii.
d. Locate the Sending query to database named ABC section, just below the General Query Info section. i. Which physical tables are accessed for this query?
ii.
iii.
52
14.h. 15.
Which Sales Rep produced the highest revenue (dollars)? Paula Madison Create a request showing the dollars for each sales district in the East region for the year 1999.
53
15.i. 17.b.i.
Which Sales District has the highest revenue (dollars)? Yankee Which presentation table is Sales District information coming from? Customers
17.b.ii. Which presentation table is Dollars information coming from? SalesFacts 17.b.iii. The FROM clause identifies which catalog name? SupplierSales 17.c.i. Which repository (logical name) was accessed for this query? Star
17.c.ii. Which Subject Area was accessed for this query? SupplierSales 17.c.iii. Which presentation catalog was accessed for this query? SupplierSales 17.d.i. Which physical tables are accessed for this query? D1_customer2, D1_Calendar2, and D1_Orders2
17.d.ii. Did this query complete successfully? Yes 17.d.iii. How many rows were retrieved from the database? 4
54
Outcome Time
Instructions:
1. Before modifying the Analytics repository, stop the Siebel Analytics Server service. a. Select Start > Programs > Administrative Tools > Services. b. Right-click Siebel Analytics Server and select Stop. c. Verify that the Siebel Analytics Server stopped by checking that the Status column displays no value. d. Minimize the Services window. 2. Make a copy of ABC.rpd file. a. Navigate to C:\SiebelAnalytics\Repository. b. Right-click ABC.rpd and select Copy. c. Right-click anywhere in the right pane and select Paste. d. Rename the copied file ABC_LAB4.rpd. e. Close Windows Explorer. 3. Use the Siebel Analytics Administration Tool to check consistency on ABCs business model. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Administration. b. Select File > Open > Offline. c. Double-click ABC_LAB4.rpd to open the repository file. d. Enter the following parameters:
User Password Administrator <blank>
e. Click OK. f. In the Siebel Analytics Administration Tool title bar, verify that you have opened ABC_LAB4.rpd.
Analytics: Server Architect (Siebel 7.7) 55
4. Examine the business model based on the requirements for defining a consistent business model. a. Check the business model for logical join conditions. i. In the Business Model and Mapping layer, right-click SupplierSales and select Business Model Diagram > Whole Diagram. The logical table business model diagram appears. ii. Observe the join connections between SalesFacts (fact table) and the dimensional tables. Note: Other check consistency requirements are finding logical columns that are not mapped to physical sources, and determining if physical tables referenced in a business model are not joined to tables referenced in the business model. Checking consistency does not guarantee that the business model is constructed correctly, but it does check for some of the more common errors in the business model. 5. Modify the business model to generate an inconsistent business model. Create a condition in the business model where an undefined join condition exists. a. Select the join connection between the Periods and SalesFacts logical tables. b. Right-click and select Delete. c. Click Yes to delete objects. The join relationship between Periods and SalesFacts is deleted. d. Close the Logical Table Diagram window. 6. From the Business Model and Mapping layer, perform a consistency check. a. In the Business Model and Mapping layer, right-click SupplierSales and select Check Consistency. A prompt appears, verifying that the business model is not consistent, and asking if it should be marked as unavailable for queries.
56
c. Click OK. The business model folder changes from available for querying to unavailable for querying . Notice the red circle appears on the business model folder, once the business model is unavailable for queries. 7. Invoke the consistency check on the entire repository. a. Select File > Check Global Consistency. b. Observe the following message for SupplierSales:
c. Why do you think the same message appeared when you invoked Check Global Consistency?
d. Click OK. 8. Generate another error in ABC_LAB4.rpd. a. In the Presentation layer, expand the SupplierSalesDM folder and then expand the Customers presentation table. b. Double-click the Sales District column. The Presentation Column dialog box opens. c. Verify that the General tab is selected. d. Change the column name by typing a <space> in front of Sales District in the Name field. e. Click OK. 9. Perform another consistency check, using the Check Global Consistency option and evaluate the errors that impact the Presentation layer. a. Select File > Check Global Consistency.
57
b. Scroll down toward the bottom of the message window and observe the following message for the SupplierSalesDM catalog folder:
c. Click OK. 10. Perform the consistency check from the Business Model and Mapping layer. a. In the Business Model and Mapping layer, right-click SupplierSales and select Check Consistency. b. Observe the business model compile message:
c. Why dont you see the error message relating to SupplierSalesDM having leading or trailing spaces in it?
d. Click OK.
58 Analytics: Server Architect (Siebel 7.7)
11. Select File > Exit to exit Siebel Analytics Administration Tool and DO NOT save the changes to ABC_LAB4.rpd.
59
10.c.
60
Scenario
Outcome
Time
Instructions
1. Verify that the Siebel Analytics Server is stopped. a. Select Start > Programs > Administrative Tools > Services. b. Locate Siebel Analytics Server and verify that the status field has no value. c. Minimize Services. 2. Start the Siebel Analytics Administration Tool and open the ABC.rpd repository offline. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Administration. b. Select File > Open > Offline. c. Double-click ABC.rpd. d. Verify that User is Administrator and Password field is blank. e. Click OK. 3. Import the product tables that store product code, pricing, and supplier (vendor) information. a. Select File > Import > from Database. b. Verify that the connection type is ODBC 3.5. c. Scroll down and select the ABC data source. d. In the User Name field, verify that sa is the value and leave the Password field blank. e. Click OK. f. Expand the supplier2 folder. g. Expand the dbo folder. h. Select the following tables (use CTRL+click) to import:
Table Name d1_pricelist
Analytics: Server Architect (Siebel 7.7) 61
i. Verify that the Tables, Keys, and Foreign Keys check boxes are selected. j. Click Import. k. Click Close. 4. Define joins and foreign keys using the Physical Diagram view. Note: The tables you imported provide more detail information about ABCs products, such as product type (example: Cheese or Beef), subtype (example: American cheese or Beef patties), and diet codes (example: Diet or Regular). These tables represent a one-to-many relationship to the D1_products table. a. In the Physical layer, right-click the ABC database and select Physical Diagram > Object(s) and All Joins to open the Physical Diagram view. b. Drag the new table objects so they are all visible. c. Use the New Foreign Key button on the Tool bar to create the following relationships: Note: Reply Yes to the message asking if you want to create a matching table key.
62
63
Lab 5-2 Creating Multiple Sources for a Logical Table Source (Manual)
Goals Scenario To add the information from the price list table to the Product dimension. You have imported the product tables that store detail information about ABCs products into the Physical layer of the repository and configured keys and foreign key joins for the tables. Thus far, the Product dimension in the Business Model and Mapping layer includes only information from the root product table: D1_products. You are ready to add the information from the price list table to the Product dimension, and while doing that, simplify the data structure (in effect, creating a denormalized logical table). In the Business Model and Mapping layer, the d1_pricelist physical table is added to the existing logical table source for the Product dimension. In the Business Model and Mapping layer, the Price logical column is added to the Product dimension and mapped to the appropriate physical table. Time 5 minutes
Outcome
Instructions:
1. Add the information from the price list table to the existing logical table source for the Product dimension. Note: There are two methods to model multiple sources for an existing logical table source. In this lab you will use the Properties window of an existing logical table source, which is a manual process and requires several steps. In a subsequent lab, you will use a more automated process. a. In the Business Model and Mapping layer, expand the Sources folder of the Products table and double-click the D1_products logical table source to view the properties. b. Click the General tab and click Add. c. In the Browse window, select the d1_pricelist table and click the Select button. d. Click OK. 2. Now that the physical table that stores the pricing information has been added to the Product logical table source, create a new logical column and map it to the appropriate physical table. a. In the Business Model and Mapping layer, right-click the Products table and select New Object > Logical Column. b. Enter Price in the Name field and click OK. c. Open the Properties window of the D1_products logical table source. d. Click the Column Mapping tab. e. Select the Show unmapped columns check box.
64 Analytics: Server Architect (Siebel 7.7)
f. In the Logical Column section, click the Price ellipsis () button to open the Expression Builder. g. In the lower-left pane of the Expression Builder, click the Physical Tables folder. h. In the center pane, click d1_pricelist. i. In the right pane, click Price. j. Select Insert and examine the expression. k. Click OK to close the Expression Builder. l. Verify that Show Mapped Columns is selected, and that d1_pricelist appears in the Physical Table column. m. Click OK.
65
Lab 5-3 Creating Multiple Sources for a Logical Table Source (Automated)
Goals To add the information from the additional product tables to the Product dimension. So far, you have added the information from the price list table to the Product dimension. You are ready to add information from the other product tables to the Product dimension using an alternative method. You will create multiple sources for the Product logical table source that simultaneously adds the columns to the Product dimension. In the Business Model and Mapping layer, the D1_prod_diet_types, D1_product_subtype D1_product_type, and d1_suppliers physical tables are added to the existing logical table source for the Products logical table. In the Business Model and Mapping layer, the Diet_type, ItemSubtype, ItemType, and ItemSupplier logical columns are added to the Products logical table and mapped to the appropriate physical tables. Time 5 10 minutes
Scenario
Outcome
Instructions:
1. Add additional information to the Product dimension and simultaneously add a new source to the existing D1_products logical table source. a. In the Physical layer, expand the D1_prod_diet_types table and locate the Diet_type column. b. In the Physical layer, drag the Diet_type column onto the D1_products logical table source in the Products dimension in the Business Model and Mapping layer. c. Verify your results. i. Was the Diet_type column added to the Product dimension?
ii. iii.
View the properties of the D1_products logical table source. Click the Column Mapping tab. Is the Diet_type column mapped to the D1_prod_diet_types physical table?
iv.
Click Cancel.
66
2. Repeat the above steps to add the following product information to the Products dimension, simultaneously adding new sources to the existing D1_products logical table source:
Physical Table D1_product_subtype D1_product_type d1_suppliers Physical Column ItemSubtype ItemType ItemSupplier
a. Verify your results. i. Open the D1_products logical source Properties window and click the Column Mapping tab to verify your results. ii. What new table sources were added to the D1_products logical table source? It may be necessary to scroll to the right.
b. Click OK. 3. Rename the new logical columns in the Product dimension so they are meaningful to users. a. In the Business Model and Mapping layer, double-click the Diet_type logical column to open the Properties window. b. To rename the column, enter Diet Type in the name field. c. Click OK. d. Rename the other new columns to the following:
From ItemSubtype ItemType ItemSupplier To Subtype Type Supplier
4. Add the new product information to the SupplierSales presentation catalog. a. Drag the five new columns onto the Products table in the SupplierSales presentation catalog and reorder the columns as follows:
Column Name Price Type Subtype Diet Type Supplier
5. Select File > Check Global Consistency to validate your work. 6. Select File > Save to save your work.
Analytics: Server Architect (Siebel 7.7) 67
7. Select File > Exit to close the Administration Tool. 8. Restart the Siebel Analytics Server and Siebel Analytics Web services. a. Select Start > Programs > Administrative Tools > Services. b. Restart the Siebel Analytics Server and Siebel Analytics Web services. c. Minimize the Services window. 9. Start Siebel Answers. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Web. b. Enter the following parameters:
User Password Administrator <blank>
c. Click Log In. d. Click the Answers link. 10. Create a request. a. Select the SupplierSales subject area. b. Create the following request:
c. Click the Results tab to view the results. 11. Examine the query log to determine which table or tables have been accessed for this simple query. a. Double-click C:\SiebelAnalytics\Log\NQQuery.log. b. Scroll down and verify that three tables: D1_products, D1_product_subtype, and D1_product type, have all been accessed, despite the fact that the D1_product_type table alone contains all the data requested. c. Select File > Exit to close the query log. Note: In the next lab, you will specify a more economical way for the Analytics Server to access this data. 12. Select File > Close to close Siebel Answers.
68
Solutions 5-3 Creating Multiple Sources for a Logical Table Source (Automated)
Answers
1.c.i. 1.c.iii. Was the Diet_type column added to the Product dimension? Yes Click the Column Mapping tab. Is the Diet_type column mapped to the D1_prod_diet_types physical table? Yes What new table sources were added to the D1_products logical table source? D1_prod_diet_types, D1_product_subtype, D1_product_type, and d1_suppliers Click the Results tab to view the results.
2.a.ii. 10.c.
11.b.
Scroll down and verify that three tables: D1_products, D1_product_subtype, and D1_product type, have all been accessed, despite the fact that the D1_product_type table
Analytics: Server Architect (Siebel 7.7) 69
70
Time
Instructions:
1. Open the Siebel Analytics repository file. a. Shut down the Siebel Analytics Server service. b. Double-click C:\SiebelAnalytics\Repository\abc.rpd. c. Log in as Administrator with no password. 2. Examine the existing column mappings for the two columns, Type and TypeCode, to determine the economical method for the Siebel Analytics Server to find information. a. In the Business Model and Mapping layer, expand the Sources folder of the Products table and double-click D1_products. b. Click the Column Mapping tab. c. To what physical table and physical column is TypeCode mapped?
e. Click Cancel to close the Properties window. 3. Determine which physical table stores information for both TypeCode and Type. a. In the Physical layer, expand the D1_product_type physical table. b. Verify that this table stores the information for TypeCode and ItemType.
Analytics: Server Architect (Siebel 7.7) 71
4. Model a new mapping for the TypeCode logical column by creating a second logical table source for the Products dimension. a. In the Business Model and Mapping layer, right-click the Sources folder for the Products table and select New Logical Table Source. b. Verify that the General tab is selected. c. In the Name field, enter Type to name the new logical table source. d. Click Add. e. In the Browse dialog window, select the D1_product_type physical table and click Select. f. Click OK. g. Verify that the TypeCode column now maps to D1_product_type. i. Double-click the Type logical table source you just configured to view the properties. ii. Click the Column Mapping tab. iii. Verify that TypeCode is mapped to the D1_product_type physical table. Note: The TypeCode logical column was mapped automatically because the logical and physical names are identical. If they were not, you would need to select the physical table manually to map the column. h. Map the Type column to the D1_product_type physical table. i. For the Type logical column, click the Expression field and select ABC.supplier2.dbo.D1_product_type.ItemType from the drop-down list. ii. Click OK. i. Verify the mappings. i. Double-click the Type logical table source. ii. Click the Column Mapping tab. iii. Deselect the Show unmapped columns check box. iv. Verify that TypeCode and Type are mapped to the d1_product_type physical table. j. Leave the Properties window of the Type logical table source open for the next step. 5. There are now two logical table sources for the Products dimension and the TypeCode logical column maps to both. You need to let the Siebel Analytics Server know which source to use by specifying content for TypeCode and Type. a. Click the Content tab on the Type logical table source (the properties should be open from the previous step). b. Click in the Table column, and select Products from the menu. c. Click in the Column column, and select TypeCode from the menu. d. In the next blank row, click in the Table column, and select Products from the menu. e. Click in the Column column, and select Type from the menu.
72
g. Click OK. 6. Select File > Check Global Consistency to validate your work. 7. Select File > Save to save your work. 8. Select File > Exit to close the Administration Tool. 9. Return to Services to start services. a. Start the Siebel Analytics Server. b. Stop and start the Siebel Analytics Web service. c. Close Services. 10. Start Siebel Answers. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Web. b. Enter the following parameters:
User Password Administrator <blank>
c. Click Log In. d. Click the Answers link. 11. Create a request. a. Select the SupplierSales subject area. b. Create the following request:
c. Click the Results tab to view the results. 12. Examine the query log to determine which table is accessed. a. Double-click C:\SiebelAnalytics\Log\NQQuery.log. b. Scroll down and verify that now only the d1_product_type table is accessed in this query.
Analytics: Server Architect (Siebel 7.7) 73
c. Select File > Exit to close the query log. 13. Return to Siebel Answers and select File > Close to close the application.
74
2.d.
75
76
Outcome
Instructions:
1. Stop the Siebel Analytics Server service. a. Select Start > Programs > Administrative Tools > Services. b. Right-click Siebel Analytics Server and select Stop. c. Leave Services open. 2. Start the Siebel Analytics Administration Tool and open the ABC repository offline. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Administration. b. Select File > Open > Offline. c. Double-click ABC.rpd to open it. d. Verify that the login parameters are the following:
User ID Password Administrator <blank>
e. Click OK. 3. Define a new logical measure called Cuts (the difference between what was ordered and what was shipped) in the SalesFacts logical table that uses existing logical columns as its source. a. In the Business Model and Mapping layer, right-click the SalesFacts logical table and select New Object > Logical Column. b. Verify that the General tab is selected. c. Enter Cuts in the Name field to name the column.
Analytics: Server Architect (Siebel 7.7) 77
d. Select the Use existing logical columns as the source check box. e. To open the Expression Builder, click the Ellipsis button (to the right of the text edit box). f. In the left pane of the Expression Builder, select the Logical Tables folder. g. In the middle pane, select the SalesFacts logical column. h. In the right pane, select the Units Ordered logical column. i. Click Insert. j. Click the - minus sign on the toolbar. k. In the right pane, select the Units Shipped logical column. l. Click Insert. Check your results:
m. Click OK to close the Expression Builder. n. Examine the data type of the new Cuts column. i. Select the Data Type tab. Note that the formula is expressed in terms of the physical column data types even though the formula is based on logical columns. ii. What is the Data Type of the Cuts column?
o. Click OK. 4. Add the new Cuts column to the SupplierSales presentation catalog. a. In the Presentation layer, verify that the SupplierSales presentation catalog is expanded. b. Select Cuts from the SalesFacts logical table and drag it onto the SalesFacts presentation table. 5. Select File > Check Global Consistency to validate your work. 6. Select File > Save to save your work. 7. Select File > Exit to close the Administration Tool. 8. Start the Siebel Analytics Server service and restart the Siebel Analytics Web service. 9. Start Siebel Answers. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Web. b. Enter the following parameters:
User Password Administrator <blank>
c. Click Log In. d. Click the Answers link. 10. Click the SupplierSales subject area.
78 Analytics: Server Architect (Siebel 7.7)
a. Click the Results tab to view the results. i. Verify that the Cuts calculation is accurate for the Frozen food type by manually subtracting Units Shipped from Units Ordered. ii. Is the value in the Cuts column for the Frozen food type accurate? iii. Verify that the Cuts calculation is accurate for the Lamb food type by manually subtracting Units Shipped from Units Ordered. iv. Is the value in the Cuts column for the Lamb food type accurate? 12. Leave Siebel Answers open. 13. Examine the query log to see what query was sent to the database. a. Double-click C:\SiebelAnalytics\Log\NQQuery.log. b. Note that cuts is a column listed in the query and the two columns summed in the list of columns appear as sum(T56.UnitShpd) and sum(T56.UnitOrdd). Also note that there is a subquery. c. Select File > Exit to close the query log.
79
11.a.ii. Is the value in the Cuts column for the Frozen food type accurate? Yes, 0 is the correct value. 11.a.iv. Is the value in the Cuts column for the Lamb food type accurate? Yes, 39 is the correct value.
80
Scenario
Outcome
Instructions:
1. Since you will be opening the ABC repository in Online mode, verify that the Siebel Analytics Server service is started. a. Return to Services and verify that the Siebel Analytics Server status is Started. b. Leave Services open. 2. Start the Siebel Analytics Administration Tool and open the ABC repository in Online mode. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Administration. b. Select File > Open > Online. c. In the Open Online Analytics Web dialog box, verify the following parameters:
User ID Password Administrator <blank>
d. Click Open. 3. Verify that a user preference is set to check out objects automatically. a. On the menu bar, select Tools > Options. b. Select the General tab. c. Make sure that the Check out objects automatically check box is selected. d. Click OK. 4. Configure a new column in the SalesFacts table that will use physical columns as its source.
Analytics: Server Architect (Siebel 7.7) 81
a. In the Business Model layer, right-click the SalesFacts table and select New Object > Logical Column. b. Type CutsP in the Name field to name the column. c. Set the aggregation rule to Sum. i. Select the Aggregation tab. ii. In the Default aggregation rule field, click the drop-down arrow and select Sum. iii. Click OK. Notice that the icon for CutsP is blue. This indicates that the logical column has not yet been checked in to the server. 5. Map the new CutsP column to a physical source. a. In the Business Model and Mapping layer, expand the Sources folder for the SalesFacts table and double-click D1_Orders2. b. Select the Column Mapping tab. c. Select the Show unmapped columns check box. d. To open the Expression Builder, click the CutsP ellipsis () button. e. Display the physical table and column names. i. In the left pane of the Expression Builder, select the Physical Tables folder. ii. In the middle pane, select the table, D1_Orders2. f. Following the process used in the previous exercise, create a formula that subtracts units shipped from units ordered using physical columns. Check your results:
g. Click OK to close the Expression Builder. h. Click OK to close the properties window. 6. Add the new column to the SupplierSales presentation catalog. a. Select CutsP from the SalesFacts logical table and drag it onto the SalesFacts presentation table in the Presentation layer. 7. Check in the changes made to the repository: a. Select File > Check In Changes. b. Reply Yes to the Check consistency? message. c. Click OK. 8. Select File > Save to save the repository changes. 9. Select File > Exit to close the Administration Tool. 10. Reload the server metadata in Siebel Answers. a. Return to Siebel Answers. b. Click the Reload Server Metadata link to update the repository.
82
a. Click the Results tab to view the results. b. Verify that the CutsP calculation is accurate for the Frozen food type by manually subtracting Units Shipped from Units Ordered. Is the value in the CutsP column accurate?
c. Verify that the CutsP calculation is accurate for the Lamb food type by manually subtracting Units Shipped from Units Ordered. Is the value in the CutsP column accurate?
12. Select File > Close to close Siebel Answers. 13. Examine the query log to see what query was sent to the database: a. Double-click C:\SiebelAnalytics\Log\NQQuery.log. i. Note that CutsP is a column listed in the query, and that the two columns summed in the list of columns appear as sum(T56.UnitOrdd - T56UnitShpd). Also note that there is no subquery. b. Select File > Exit to close the query log.
83
11.b.
Verify that the CutsP calculation is accurate for the Frozen food type by manually subtracting Units Shipped from Units Ordered. Is the value in the CutsP column accurate? Yes, 0 is the correct value. Verify that the CutsP calculation is accurate for the Lamb food type by manually subtracting Units Shipped from Units Ordered. Is the value in the CutsP column accurate? Yes, 39 is the correct value.
11.c.
84
Scenario
Outcome
Instructions:
1. Stop the Siebel Analytics Server. a. Return to Services. b. Right-click Siebel Analytics Server and select Stop. c. Leave Services open. 2. Start the Siebel Analytics Administration Tool and open the ABC repository offline. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Administration. b. Select File > Open > Offline. c. Double-click ABC.rpd to open it. d. Verify that the login parameters are the following:
User ID Password Administrator <blank>
e. Click OK. 3. To model two calculation measures using the Calculation Wizard, start the Calculation Wizard from the Analytics Administration Tool. a. In the Business Model and Mapping layer, expand the SalesFacts table and right-click the Units Ordered column and select Calculation Wizard.
Analytics: Server Architect (Siebel 7.7) 85
b. In the Calculation Wizard Introduction dialog box, click Next. c. In the Compare Units Ordered with section, select the Units Shipped check box. d. In the Generate Calculations section, verify that the Change and Percent Change check boxes are both checked. e. In the Generate Calculations section, verify that Change is highlighted.
f. Specify what result you want if the Change value is not available or zero using the following parameters:
h. Specify what result you want if a value is not available or is zero using the following parameters:
i. Click Next. 4. Review the two calculations measures that are modeled by the Wizard and click Finish. a. In the Business Model and Mapping layer, locate the two columns created by the Calculation Wizard in the SalesFacts table. What are the new column names?
86
5. Add the new columns to the SupplierSales presentation catalog. a. Drag the new Chg Units Shipped and % Chg Units Shipped columns from the SalesFacts logical table onto the SalesFacts presentation table in the Presentation layer. b. Rename the columns to the following: (Hint: You will have to deselect the Use Logical Column Name check box in the properties window to rename the presentation columns.)
From Chg Units Shipped % Chg Units Shipped CutsW Percent Not Shipped To
6. Select File > Check Global Consistency to validate your work. 7. Select File > Save to save your work. 8. Select File > Exit to close the Administration Tool. 9. Start the Siebel Analytics Server service and restart the Siebel Analytics Web service. 10. Start Siebel Answers. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Web. b. Enter the following parameters:
User Password Administrator <blank>
c. Click Log In. d. Click the Answers link. 11. Click the SupplierSales subject area. 12. Create the following request:
a. Click the Results tab to view the results. Note that Percent Not Shipped is displayed in dollars. You will change this to percentage in a later step in this lab. i. Verify that the CutsW calculation is accurate for the Frozen food type by manually subtracting Units Shipped from Units Ordered. Is the value in the CutsW column accurate?
ii.
Verify that the CutsW calculation is accurate for the Lamb food type by manually subtracting Units Shipped from Units Ordered. Is the value in the CutsW column accurate?
87
iii.
To verify that the Percent Not Shipped value is accurate, you would divide CutsW by Units Shipped. For example, for the Lamb food type, you would divide 39 by 961 to get 4.06. This tells you that 4.06% of the units ordered have not shipped.
13. Format the Percent Not Shipped column to display percentages instead of dollars. icon for the table. a. Click the Edit View b. In the Percent Not Shipped column, click the Format Column icon. c. Select the Value Format tab. d. Select the Override Default Data Format check box. e. In the Treat Numbers As drop-down list, select Percentage. f. In the Digits drop-down list, select 2. g. Verify your changes:
h. Click OK. i. Notice that the format of the Percent Not Shipped column is now changed from dollars to percentages. 14. Select File > Close to close Siebel Answers. 15. Examine the query log to see what query was sent to the database. a. Double-click C:\SiebelAnalytics\Log\NQQuery.log. b. Note that CutsW is a column listed in the query. Also note the percentage calculation.
88 Analytics: Server Architect (Siebel 7.7)
89
12.a.
12.a.i.
Verify that the CutsW calculation is accurate for the Frozen food type by manually subtracting Units Shipped from Units Ordered. Is the value in the CutsW column accurate? Yes, 0 is the correct value. Verify that the CutsW calculation is accurate for the Lamb food type by manually subtracting Units Shipped from Units Ordered. Is the value in the CutsW column accurate? Yes, 39 is the correct value.
Analytics: Server Architect (Siebel 7.7)
12.a.ii.
90
13.i.
Notice that the format of the Percent Not Shipped column is now changed from dollars to percentages.
91
92
Scenario
Outcome
In the Business Model and Mapping layer, ProductDim, CustomerDim, PeriodDim dimension objects. 20 25 minutes
Time
Instructions:
1. Open the Siebel Analytics repository file. a. Shut down the Siebel Analytics Server service. b. Double-click C:\SiebelAnalytics\Repository\abc.rpd. c. Log in as Administrator with no password. 2. In order to create the dimension, you need to know the levels in the hierarchy, the columns that uniquely define each level, and the distinct values for each level. a. The business will determine the levels, and you will be given that. In the case of the product hierarchy for ABC, the levels are (top to bottom): Type, Subtype, Generic, and Specific.
93
b. The database administrator (DBA) will generally be able to provide you the columns that define each level. In ABCs case, the keys are:
Level Type Subtype Generic Specific Column on D1_products table that identifies the level TypeCode SubtypeCode GenericDescription SpecificDescriptin (this spelling is correct)
You can determine the values to use for the Number of elements at this level by determining the distinct values for each key. The DBA can provide them, or you can use Update Row Count or run SQL to determine them. c. To use Update Row Count, do the following in the Analytics Administration Tool: i. Select Tools > Update All Row Counts. The update will take a few moments to complete. ii. In the Physical layer, hover the cursor over D1_products.Type Code. Notice that there are 21 rows for the Type Code column. This is a simple way to determine the number of rows when defining the number of elements at a hierarchical level. d. To run SQL to determine, you may also do the following: i. Select Start > Programs > Microsoft SQL Server > Query Analyzer to start the database query tool. ii. Log in as sa with no password. iii. Type the following SQL (case is important): select distinct TypeCode from supplier2..D1_products iv. Select Query > Execute to run the command. v. In the bottom right of the window, observe the number of rows returned. This will be the value you would use when specifying the level in the hierarchy. Note: The remaining values will be provided for you in later steps.
vi. Select File > Exit to close Query Analyzer and click No to save changes. 3. Now that you have what you need, you will begin by creating a dimension object to represent the hierarchy of products. a. In the Business Model and Mapping layer, right-click SupplierSales and select New Object > Dimension. The Dimension dialog box opens. b. In the Name field, type ProductDim. c. Click OK. The new dimension appears in the Business Model and Mapping layer. Notice the arrow-like icon. 4. Now that you have the dimension created, you will add the parent level of the hierarchy.
94 Analytics: Server Architect (Siebel 7.7)
a. Right-click the ProductDim dimension and select New Object > Logical Level. b. In the Name field, type TotalProduct. c. Since this level represents the grand total for products, click the Grand total level check box. Notice that when you do this, the field Supports rollup to parent elements is grayed out and protected. d. Notice that the field, Number of elements at this level has the value of 1. Note: The TotalProduct level has only one element (the grand total); therefore, 1 is the appropriate value for this level and cannot be changed. e. Click OK. The new level appears as a child of the ProductDim dimension. 5. Add the child levels. a. Right-click the TotalProduct level and select New Object > Child Level. b. In the Name field, type Type. c. In the Number of elements at this level field, type 21. Recall that this is the value you determined above. Note: The Siebel Analytics Server uses the number of elements to determine the best table to use when a query involves aggregating data to a specific level. The number of elements refers to the row count. The value does not have to be precisely correct. d. Verify that Supports rollup to parent elements is checked. Note: This field is checked because if data is stored at the Type level, it can be aggregated to produce the total for its parent level without double counting or leaving anything out. There are some hierarchies where certain levels might not include all the elements of the dimension. e. Click OK. The new level appears as a child of the TotalProduct level. f. Repeat the above steps to add further child levels:
Name Subtype Generic Specific Number of elements at this level 158 185 191
6. Specify which columns from the logical dimension table are associated with which levels in the dimensional hierarchy, starting from top to bottom. a. In the Business Model and Mapping layer, expand the Products table, select the Type column, and drag it up onto the Type level.
95
b. Drag the logical column TypeCode onto the Type level. Check your results:
c. Continue dragging logical columns from the table to the dimensional hierarchy levels:
Logical Column Subtype SubtypeCode Generic Specific ProductKey Dimensional Level Subtype Subtype Generic Specific Specific
7. Specify the keys for each child level in the hierarchy, starting from top to bottom. a. Specify two keys for the Type level and designate one for drilldown. i. In ProductDim, double-click the Type level. The Level properties dialog box opens. ii. Select the Keys tab. iii. Click the New button. The Level Key dialog box opens. iv. Select the check box for Type. v. Verify that the check box Use for drilldown is selected. vi. Click OK. The attribute displays a key icon. vii. Click the New button again. viii. Select the check box for TypeCode. ix. Deselect the check box Use for drilldown. x. Click OK. xi. Click OK.
96 Analytics: Server Architect (Siebel 7.7)
xii.
b. Specify two keys for the Subtype level, and designate one for drilldown. i. In the ProductDim, double-click the Subtype level. ii. Select the Keys tab. iii. Click the New button. iv. Select the check box for Subtype. v. Verify that the check box Use for drilldown is selected. vi. Click OK. vii. Click the New button again. viii. Select the check box for SubtypeCode. ix. Deselect the check box Use for drilldown. x. Click OK. xi. Notice the difference in the key color. When users drill down from the Type level to the Subtype level, Subtype will appear instead of SubtypeCode. xii. Click OK. c. Continue specifying the following level keys:
Dimensional Level Generic Specific Specific Key Generic Specific ProductKey Use for drilldown Yes Yes No
e. Check consistency on the business model before creating more dimensions. i. Right-click SupplierSales and select Check Consistency. ii. Verify that the business model is consistent before continuing on to the next step. 8. Repeat the above process to create the customer dimensional hierarchy.
Analytics: Server Architect (Siebel 7.7) 97
a. Create a dimension object called CustomerDim. b. Create the levels within CustomerDim:
Name Number of elements at this level 1 3 12 34 136 Grand Total Level Yes No No No No Supports rollup to parent elements Protected Yes Yes Yes Yes
c. Add columns to the hierarchy by dragging logical columns from the Customers table to the CustomerDim hierarchy levels:
Logical Column Region District Sales Rep Customer Customer Key Level Region District SalesRep Customer Customer Level Region District SalesRep Customer Customer Key Region District Sales Rep Customer Customer Key Use for drilldown Yes Yes Yes Yes No
98
f. Check consistency on the business model before creating more dimensions. i. Right-click SupplierSales and select Check Consistency. ii. Verify that the business model is consistent before continuing on to the next step. 9. Repeat the above process to create the period dimensional hierarchy. a. Create a dimension object called PeriodDim. b. Create the levels within the PeriodDim:
Name Number of elements at this level 1 2 16 474 Grand Total Level Yes No No No Supports rollup to parent elements Protected Yes Yes Yes
c. Add columns to the hierarchy by dragging logical columns from the Periods table to the PeriodDim hierarchy levels:
Logical Column Year Month MonthCode Day Date Level Year Month Month Day Day
99
10. Select File > Check Global Consistency to validate your work. 11. Select File > Save to save your work. 12. Can you validate your work in Siebel Answers? Yes or no?
13. Leave the Siebel Analytics Administration Tool open for the next lab.
100
101
Outcome
Instructions:
1. Return to the Siebel Analytics Administration Tool or, if necessary, open the ABC.rpd for editing. 2. Create new logical fact columns to represent the product level totals based on existing fact columns. a. In the Business Model and Mapping layer, select the SalesFacts fact table. b. Right-click the SalesFacts table and select New Object > Logical Column. c. In the Name field, type ProductTotalDollars. d. Select the Use existing logical columns as the source check box. e. Click the ellipsis to open the Expression Builder. f. In the Expression Builder, select Logical Tables, SalesFacts, and Dollars and click Insert to create this measure based on the existing Dollars fact column. The Dollars column has a default aggregation rule of SUM. g. Click OK. h. Select the Levels tab. i. For the ProductDim, select TotalProduct from the Level drop-down list to specify that this measure should be calculated at the grand total level in the product hierarchy. j. Click OK. Notice that setting the level causes the measure automatically to appear in the dimensional hierarchy. k. Repeat to create a second level-based measure:
Name ProductTypeDollars
102
Dimension ProductDim
Level Type
3. Expose the new columns to the users by dragging the new columns to the Sales Fact table in the SupplierSales catalog in the Presentation layer. 4. Rename the columns and rearrange them so that Product Type Dollars comes before Product Total Dollars:
103
6. Repeat the above to create new logical fact columns to represent the customer level and period level totals. You can right-click and select Duplicate to copy and then change the properties:
Name CustomerTotalDollars RegionTotalDollars PeriodTotalDollars YearTotalDollars MonthTotalDollars DayTotalDollars Dimension CustomerDim CustomerDim PeriodDim PeriodDim PeriodDim PeriodDim Level TotalCustomer Region TotalPeriod Year Month Day
104
8. Expose the new columns to the users by dragging the new columns to the SalesFact table in the Presentation layer. Rename and reorder them as appropriate.
105
9. Select File > Check Global Consistency to validate your work. 10. Select File > Save to save your work. 11. Select File > Exit to close the Siebel Analytics Administration Tool. 12. Test your results. a. Restart the Siebel Analytics Server and Siebel Analytics Web services. b. Start Siebel Analytics Web and log in as Administrator with no password. c. Click the Answers link. d. Click the SupplierSales subject area. e. Query for Products.TypeCode, SalesFacts.Product Type Dollars, SalesFacts.Product Total Dollars, and click the Results tab:
i. Drill down on TypeCode to see more information. f. Query for Customers.Region, SalesFacts.Region Total Dollars, SalesFacts.Customer Total Dollars, and click the Results tab:
106
g. Query for Periods.MonthCode, SalesFacts.Month Total Dollars, SalesFacts.Period Total Dollars and click the Results tab:
i. Drill down on MonthCode to see more information. 13. Inspect the log file. a. Double-click C:\SiebelAnalytics\Log\NQQuery.log. b. Scroll to the bottom of the file and then back up to locate the SQL statement generated by the results of the previous step. c. Notice the sum and group by clauses:
d. Select File > Exit to close the file. 14. Select File > Close to exit the Answers application.
Analytics: Server Architect (Siebel 7.7) 107
Outcome
Instructions:
1. Open the repository for editing. a. Shut down the Siebel Analytics Server service. b. Double-click C:\SiebelAnalytics\Repository\abc.rpd. c. Log in as Administrator, no password. 2. Create a new share measure referencing existing logical columns. a. In the Business Model and Mapping layer, select the SalesFacts fact table. b. Right-click SalesFacts and select New Object > Logical Column. c. In the Name field, type ProductShare. d. Select the Use existing logical columns as the source check box. e. Open the Expression Builder by clicking the ellipsis. f. In the left pane, select the Functions folder. g. In the middle pane, select Mathematic Functions. h. In the right pane, select Round. i. Click Insert. The function appears in the edit box. j. Click between the first set of brackets (numExpr):
k. Type 100* followed by a [space]. l. Use the Logical Tables folder (left pane) to select the column, Dollars. m. Click Insert. n. Using the toolbar, click the Division
108
o. Click between the new brackets. p. Use the Logical Tables folder (left pane) to select the column, ProductTotalDollars. This is the total measure for the hierarchy. q. Click Insert. r. Click between the last set of brackets (integer), and type 1. s. Check your results:
Note: When you create measures that involve a ratio, as you do with a share measure, you must be careful about data types and the potential for division by zero. t. Click OK to close the Expression Builder. u. Click OK to close the Properties window. 3. Repeat the above to create two additional share measures: Hint: You can use duplicate.
Name CustomerShare PeriodShare Reference in the Expression builder CustomerTotalDollars PeriodTotalDollars
4. Create a new rank measure referencing existing logical columns. a. In the Business Model and Mapping layer, select the SalesFacts fact table. b. Right-click the SalesFacts table and select New Object > Logical Column. c. In the Name field, type ProductRank. d. Select the Use existing logical columns as the source check box. e. Open the Expression Builder by clicking the ellipsis. f. In the left pane, select Functions. g. In the middle pane, select Display Functions. h. In the right pane, select Rank. i. Click Insert. j. Double-click numExpr. k. Select Logical Tables, SalesFacts, Dollars. l. Click Insert. m. Click OK.
109
o. Click OK. 5. Repeat the process to create two additional rank measures:
Name CustomerRank PeriodRank
6. Check consistency on the SupplierSales business model. If there are any consistency errors, correct them before continuing on to the next step.
110
7. Add the new measures to the Presentation layer by dragging them to the SalesFacts table in the SupplierSales catalog. Rename and order them so they are below the total dollar measures:
8. Select File > Check Global Consistency to validate your work. 9. Select File > Save to save your work. 10. Select File > Exit to close the Siebel Analytics Administration Tool. 11. Test your results. a. Restart the Siebel Analytics Server and Siebel Analytics Web services. b. Start Siebel Analytics Web and log in as Administrator with no password. c. Click the Answers link. d. Click the SupplierSales subject area. e. Query for Customers.Region, SalesFacts.Region Total Dollars, Customer Rank, Customer Share and click the Results tab:
111
f. Modify your query to view results for Products.Type, SalesFacts.Product Type Dollars, Product Rank and Product Share:
g. Modify your query to view results for Periods.Year, SalesFacts.Year Total Dollars, Period Rank and Period Share:
112
Outcome
In the Physical layer, new physical sources for the aggregate tables listed above. In the Logical layer, new sources for Customers, Periods, and SalesFacts.
Time
30 35 minutes
Instructions:
1. Open the repository. a. Shut down the Siebel Analytics Server service. b. Double-click C:\SiebelAnalytics\Repository\abc.rpd to open the repository. Log in as Administrator with no password. 2. Import the following physical aggregate tables from the ABC database into the Physical layer of the repository:
Physical table d1_salesreps
Analytics: Server Architect (Siebel 7.7) 113
b. Create physical joins between the aggregate tables. i. In the Physical layer, select dbo and click the Physical Diagram icon in the toolbar. ii. Select the New foreign key icon and click the tables (one side first, then the many side) to create the following relationships. The joins use the following keys:
Dimension aggregate (one side) d1_salesreps.SalesRep d1_district.District months.MonthCode months.MonthCode d1_product_type.TypeCode d1_Products.ProductKey Fact aggregate (many side) d1_order_agg1.repkey d1_order_agg2.distkey d1_order_agg1.perkey d1_order_agg2.perkey d1_order_agg1.typekey d1_order_agg2.prodkey
d. Close the Joins Manager. 3. Create new sources within the current logical fact that point to the aggregate tables. a. In the Physical layer, expand the d1_order_agg1 table. b. In the Business Model and Mapping layer, expand SupplierSales and SalesFacts.
114 Analytics: Server Architect (Siebel 7.7)
c. Drag the following subset of columns (ActlExtnd, UnitShpd, UnitOrdd, and NetWghtShpd) from the physical aggregate table individually onto the corresponding SalesFacts logical columns. This will create the new d1_order_agg1 source and corresponding column mappings. Your result should look like this:
d. Repeat the process for the d1_order_agg2 table. Your result should look like this:
4. Specify the aggregation content for the new table sources for the SalesFacts table so that the Siebel Analytics Server knows what level of data is stored in the aggregate tables. a. Double-click d1_order_agg1 (in the Sources folder of the SalesFacts table). b. Select the Content tab. c. In the Aggregation content, group by field, verify that the value is Logical Level.
115
d. Use the drop-down menus in the Level field to specify the aggregation content as follows:
e. Click OK. f. Specify the content for the new table source, d1_order_agg2, in SalesFacts. i. Double-click the table source d1_order_agg2 and select the Content tab. ii. Specify the aggregation content as follows:
iii. Click OK. g. It is a leading practice to set the levels for the detail source to the lowest levels in the hierarchies. i. Double-click D1_Orders2 and select the Content tab. ii. Specify the aggregation content as follows:
iii.
Click OK.
5. Create a new source within the Periods logical table (dimension source) that points to the month aggregate table. a. In the Physical layer, expand the months table. b. In the Business Model and Mapping layer, expand SupplierSales and Periods.
116 Analytics: Server Architect (Siebel 7.7)
c. Drag the columns from the months aggregate table onto the corresponding Periods logical columns to create the mappings and the new source. d. Check your results:
6. Specify the aggregation content for the new table source for the Periods table so that the Siebel Analytics Server knows what level of data is stored in the aggregate table. Recall that the months table contains data at the Month level within the period hierarchy. a. Select the Content tab in the months logical table source. b. In the Aggregation content, group by field, verify that the value is Logical Level. c. Use the drop-down menu in the Logical Level field to specify the aggregation content as follows:
d. Click OK. e. It is a leading practice to set the level for the detail source to the lowest level in the hierarchy. i. Double-click D1_Calendar2 and select the Content tab. ii. Specify the aggregation content as follows:
f. Apply a similar process as above to create new sources within the Customers logical table (dimension source) that point to the d1_salesreps aggregate table and the d1_district table.
Analytics: Server Architect (Siebel 7.7) 117
7. Apply a similar process as above to specify the aggregation content for the new table sources for the Customers table so that the Siebel Analytics Server knows what level of data is stored in each aggregate table. Recall that the d1_salesreps table contains data at the SalesRep level within the Customer hierarchy, and the d1_district table contains data at the District level within the Customer hierarchy. Your results should look like this:
118
8. Inspect the Products source. a. In the Business Model and Mapping layer, expand the Sources folder within the Products logical table and double-click Type. b. Select the Content tab and notice that the aggregation content is already specified at the column level:
Since you now have a hierarchy defined for Products, you could change this to be levelbased. However, this method will also work. c. It is a leading practice to set the level for the detail source to the lowest level in the hierarchy. i. Double-click D1_products and select the Content tab.
119
ii.
9. Select File > Check Global Consistency to validate your work. 10. Select File > Save to save your work. 11. Select File > Exit to close the Administration Tool. 12. Why dont you need to change the Presentation layer?
13. Test your results. a. Start the Siebel Analytics Server service and restart the Siebel Analytics Web service. b. Start Siebel Analytics Web and log in as Administrator with no password. c. Click the Answers link. d. Click the SupplierSales subject area.
120
e. Query for Periods.MonthCode, Customers.Sales Rep, and SalesFacts.Dollars and click the Results tab:
14. Inspect the log file: a. Double-click C:\SiebelAnalytics\Log\NQQuery.log. b. Scroll to the bottom of the file and then back up to locate the last SQL statement. c. Verify that the query uses d1_order_agg1 and its related tables:
121
d. Select File > Exit to close the file. 15. Experiment with using Year in the query. a. Return to Answers and change your query to request Year instead of MonthCode. b. Run the query. c. Open the log file again and inspect the query. d. Notice that the query still uses the same aggregate tables. Why?
e. Close the log file. 16. Experiment with using Day in the query. a. Return to Answers and change your query to request Day instead of Year. b. Run the query. c. Open the log file and inspect the query. d. Notice that the detailed tables are accessed instead of the aggregate tables. Why?
e. Close the log file. 17. Experiment with queries against the d1_order_agg2 table. a. Return to Answers and change your query to request Products.Generic and SalesFacts.Dollars. b. Run the query. c. Open the log file and inspect the query. d. Verify that the query uses the d1_order_agg2 and its related tables:
e. Close the log file. f. Return to Answers and change your query to request Customers.Sales District, Periods.MonthCode, and SalesFacts.Dollars.
122 Analytics: Server Architect (Siebel 7.7)
g. Run the query. h. Open the log file again and inspect the query. i. Notice that d1_order_agg1 is used instead of d1_order_agg2:
This is because the server determined it was cheaper to access d1_order_agg1 instead of d1_order_agg2 based on the levels specified in the dimension hierarchies. For example, to access d1_order_agg2, it estimates (12 districts * 12 months * 191 specific products) = 27504 potential rows versus (d1_order_agg1 at 34 sales reps * 16 months * 21 product types) = 11424 potential rows. j. Close the log file. 18. You can force d1_order_agg2 to be used by changing the elements in the product dimension. a. Open the repository in Online mode. b. In the Business Model and Mapping layer, expand the ProductDim hierarchy and doubleclick Type. c. Change the number of elements at this level from 21 to 2000:
g. h. i. j. k. l. m.
Click OK. Select File > Check in Changes and click Yes to check consistency. Click OK. Return to Siebel Answers. Click Reload Server Metadata. Click the Criteria tab and add SalesFacts.Units Ordered to your request and run it. Look at the log and notice that this time, d1_order_agg2 is accessed:
n. Close the log file. 19. Repeat the prior step to reset the values back to their original values of 21 and 191, respectively. 20. Select File > Exit to close the Administration Tool. a. Click Yes to check in changes and save. 21. Select File > Close to exit Answers.
124 Analytics: Server Architect (Siebel 7.7)
15.d. 16.d.
125
126
Outcome
Instructions:
1. Examine the current results with all customer data in one source. a. If necessary, start the Siebel Analytics Server service. b. Start Siebel Analytics Web and log in as Administrator with no password. c. Click the Answers link. d. Click the SupplierSales subject area. e. Select Customers.Customer, SalesFacts.Dollars, and SalesFacts.Units Shipped and click the Results tab. f. Record the name of the first customer in the list: to move to the end of the list. g. Click the last record button h. Record the total number of customers in the list: i. Select File > Close to exit Siebel Answers. 2. Assume the role of the data base administrator (DBA) and create the new partitioned customer tables using Microsoft Query Analyzer. a. Select Start > Programs > Microsoft SQL Server > Query Analyzer. b. Log in as sa with no password.
127
c. Select supplier2 from the drop-down list to enter the supplier2 database:
d. Create the partitions using SQL. Type the following SQL in the window and click the green arrow icon to run it: Note: Case is important.
Select * into supplier2..D1_custAtoM from supplier2..D1_customer2 where Name < N Select * into supplier2..D1_custNtoZ from supplier2..D1_customer2 where Name >= N
e. Select File > Exit and click No to close the application. 3. Open the repository file. a. Shut down the Siebel Analytics Server service. b. Double-click C:\SiebelAnalytics\Repository\abc.rpd to open the repository. Log in as Administrator with no password. 4. Create the Physical layer in the repository to reference the new partitioned tables. a. Import the sources D1_custAtoM and D1_custNtoZ into the Physical layer:
128
b. Click the Physical Diagram and New foreign key icons to create the physical joins from the new customer tables to the D1_Orders2 table. The customer tables are on the one side of the one-to-many relationships. The joins use NewKey to CustKey. c. Check your work:
5. Change the business model to use the new partitions instead of the original source. a. In the Physical layer, drag D1_custAtoM to Customers in the Business Model and Mapping layer. b. Delete the following logical columns since they are duplicates and not needed: NewKey, Name, and SalesRep. c. Double-click D1_custAtoM in the Sources folder and select the Content tab. d. Click the ellipsis button to open the Fragmentation Content expression builder. e. Select Logical Tables, Customers, and double-click Customer.
129
g. Click OK. h. Check This source should be combined with others at this level.
130
i. Select the Column Mapping tab and modify the mappings as follows:
j. Click OK. k. In the Physical layer, drag D1_custNtoZ to Customers in the Business Model and Mapping layer. l. Delete the following logical columns since they are duplicates and not needed: NewKey, Name, and SalesRep. m. Double-click D1_custNtoZ in the Sources folder and select the Content tab. n. Click the ellipsis button to open the Fragmentation Content expression builder. o. Select Logical Tables, Customers, and double-click Customer. p. Click >= and type N. q. Click OK. r. Check This source should be combined with others at this level.
131
s. Select the Column Mapping tab and modify the mappings as follows:
t. Click OK. u. Deactivate the original source by double-clicking D1_customer2, selecting the General tab, and unchecking the Active flag. v. Click OK. w. Notice that you did not have to change the Presentation layer. 6. Select File > Check Global Consistency to validate your work. 7. Select File > Save to save your work. 8. Select File > Exit to close the Administration Tool. 9. Restart the Siebel Analytics Web service. 10. Test your results. a. Start the Siebel Analytics Server service. b. Start Siebel Analytics Web and log in as Administrator with no password. c. Click the Answers link. d. Click the SupplierSales subject area. e. Select Customers.Customer, SalesFacts.Dollars, and SalesFacts.Units Shipped and select the Results tab. f. Compare your results to those in step 1. There should not be any difference. 11. Verify that the query being issued is accessing your new tables. a. Double-click C:\SiebelAnalytics\Log\NQQuery.log. b. Scroll to the end of the file. c. Scroll backwards to locate the last select statement.
132 Analytics: Server Architect (Siebel 7.7)
e. Select File > Exit to close the log file. 12. Further test that your results are correct for names >= N: a. Return to Answers and add a filter to Customer to show names greater than N:
133
c. Verify that your results display names starting with N and above:
d. Verify that the query being issued is accessing the correct partition. i. Double-click C:\SiebelAnalytics\Log\NQQuery.log. ii. Scroll to the end of the file. iii. Scroll backwards to locate the select statement. iv. Verify that only the N to Z partition is being used:
e. Select File > Exit to close the log file. 13. Further test that your results are correct for names < N.
134
a. Return to Answers and change the filter to show names less than N:
b. Run the query. c. Verify that your results display names less than N.
d. Verify that the query being issued is accessing the correct partition: i. Double-click C:\SiebelAnalytics\Log\NQQuery.log. ii. Scroll to the end of the file. iii. Scroll backwards to locate the select statement.
135
iv.
e. Select File > Exit to close the log file. f. Select File > Close to exit Siebel Answers.
136
137
138
Outcome
Instructions:
1. Open the repository file. a. Shut down the Siebel Analytics Server service. b. Double-click C:\SiebelAnalytics\Repository\abc.rpd to open the repository. Log in as Administrator with no password. 2. Create the initialization block. a. Select Manage > Variables. b. Select Action > New > Initialization Block. c. In Name, type CustomerDataSplit to name the block. d. Click the Browse button. e. Select the ABC connection pool object SUPPLIER CP. f. Click the Select button.
139
g. Enter the following SQL in the block to capture the first letter of the maximum customer name. Case is important:
h. Click the Variables tab. i. Click the New button. j. In the Name, type EndPartOne.
140
l. Click OK. m. Select the General tab and click Test to test the variable:
n. Click Close. o. Click OK to save the initialization block just created. p. Close the Variable Manager window. 3. Use the variable to dynamically determine the content in the customer sources. a. In the Business Model and Mapping layer, expand Customers and its Sources. b. Double-click D1_customer2. c. Select the General tab and verify that the source is inactive. d. Click OK. e. Double click D1_custAtoM. f. Click the General tab. g. In the Name, enter CustPartOne. h. Verify that the Active box is checked.
Analytics: Server Architect (Siebel 7.7) 141
i. Select the Content tab. j. Change the expression to use the variable. i. Open the Expression Builder by clicking the ellipsis button. ii. Highlight the < N and press the BACKSPACE key to remove the text. iii. Click the <= button. iv. Select Repository Variables and double-click EndPartOne. v. Click OK. vi. Check your result:
k. Verify that the This source should be combined with other sources at this level check box is checked. l. Click OK. m. Double-click D1_custNtoZ. n. Click the General tab. o. In the Name, enter CustPartTwo. p. Verify that the Active box is checked. q. Select the Content tab. r. Change the expression to use the variable. i. Open the Expression Builder by clicking the ellipsis button. ii. Highlight the >= N and press the BACKSPACE key to remove the text. iii. Click the > button. iv. Select Repository Variables and double-click EndPartOne. v. Click OK.
142
vi.
s. Verify that the This source should be combined with other sources at this level check box is checked. t. Click OK. 4. Select File > Check Global Consistency to validate your work. 5. Select File > Save to save your work. 6. Select File > Exit to close the Administration Tool. 7. Test your results. a. Start the Siebel Analytics Server service and restart the Siebel Analytics Web service. b. Examine the initialization block in the log file. i. Double-click C:\SiebelAnalytics\Log\NQQuery.log. ii. Scroll to the end of the file and scroll backwards to locate the initialization block:
c. d. e. f. g.
Select File > Exit to close the log file. Start Siebel Analytics Web and log in as Administrator with no password. Click the Answers link. Click the SupplierSales subject area. Select Customers.Customer.
Analytics: Server Architect (Siebel 7.7) 143
i. Run the query. j. Verify that your results display names starting less than B:
k. Verify that the query being issued is accessing the correct partition. i. Double-click C:\SiebelAnalytics\Log\NQQuery.log. ii. Scroll to the end of the file and scroll backwards to locate the select statement.
144
iii.
l. Select File > Exit to close the log file. 8. Further test your results. a. Return to Answers and change the filter to provide names greater than X.
145
d. Verify that the SQL in the log file references the D1_custNtoZ table:
e. Select File > Exit to close the file. f. Select File > Close to exit Siebel Answers.
146
Scenario
Outcome
Time
Instructions:
1. Open the Siebel Analytics repository file. a. Shut down the Siebel Analytics Server service. b. Double-click C:\SiebelAnalytics\Repository\ABC.rpd to open the repository. Log in as Administrator with no password. 2. Use the Time Series Wizard to model comparison measures and a calculation measure that compares dollar performance against dollar performance a year ago. a. In the Business Model and Mapping layer, right-click SupplierSales and select Time Series Wizard. b. Click Next on the Welcome dialog box. c. Specify a naming convention for the new comparison measures created by the wizard. i. In the Tag for comparison period field, enter Year Ago. ii. Select the Prefix radio button to add the Year Ago tag as a prefix to the comparison measures and calculations that will be configured. iii. Select the Spaces radio button to specify that spaces be used as delimiters. iv. Click Next. d. Specify the period table. i. Select the months period table. ii. Click Next. e. Verify that the Override internal object generation check box is not selected and click Next. f. Specify the period table key column. i. In the Comparison Period Key Column section, select YAGO. ii. Click Next.
Analytics: Server Architect (Siebel 7.7) 147
g. Specify Dollars as the comparison measure. i. In the Generate Comparison Measure section, select the Dollars check box. ii. Verify that Create is selected from the drop-down menu. h. Specify the Change and Percent Change calculations for Dollars. i. In the Generate Calculations section, verify that the Change and Percent Change check boxes are selected. i. Specify the result you want if the Change Year Ago Dollars comparison measure is NULL or zero. i. In the Generate Calculations section, verify that Change is highlighted.
ii.
Use the following parameters to specify what result you want if the Change Year Ago Dollars comparison measure is NULL or zero:
j. Specify what result you want if the Percent Change Year Ago Dollars comparison measure is not available or zero. i. In the Generate Calculations section, select Percent Change so that is highlighted.
148
ii.
Use the following parameters to specify what result you want if the Percent Change Year Ago Dollars comparison measure is not available or zero:
k. Click Next. l. Review the comparison and calculation measures the wizard configured. i. Verify that the Year Ago Dollars comparison measure appears. ii. Verify that the Chg Year Ago Dollars and % Chg Year Ago Dollars calculation measures appear:
m. Review additional metadata the wizard created. i. Select the Show also internal objects check box to see additional metadata.
149
ii.
Review the aliases, joins, logical table sources, measures, and calculations that will be modeled by the wizard:
n. Click Finish to close the wizard. 3. Use the Time Series Wizard to model comparison and calculation measures that compare dollar performance against dollar performance a month ago. a. To start the Time Series Wizard, right-click SupplierSales and select Time Series Wizard. Follow the prompts to set the following parameters:
Tag for comparison period Using tag as Delimit words using Period Table Override internal object generation Comparison Period Key Column Generate Comparison Measure Generate Calculations When Month Ago Dollars Change Is NULL return When Month Ago Dollars Percent Change Is not available return Is available but Dollars is not available return Is not available and Dollars is not available return NULL -100.00 NULL Month Ago Prefix Spaces months [default] MAGO Dollars Change and Percent Change value = 0 not selected
150
c. Click Finish. 4. Leave the Analytics Administration Tool and the ABC repository open for the next lab.
151
Scenario
Outcome
Instructions:
1. From the Analytics Administration Tool, examine the metadata created by the Time Series Wizard in the Physical layer. a. In the Physical layer, what alias fact tables now appear in the ABC physical database? (Hint: Alias fact tables have icons with green arrows.)
b. Double click Month Ago d1_order_agg1 to open the properties window. c. On the General tab, how can you identify that this alias fact table was created by the Time Series Wizard?
d. Click the Foreign Keys tab. i. This alias table is joined to which tables?
152
2. Examine the metadata created by the Time Series Wizard in the Business Model and Mapping layer. a. In the Business Model and Mapping layer, expand the SalesFacts table. b. Verify that the following logical columns were added to the SalesFacts logical table:
c. Expand the Sources folder for the SalesFacts table. d. Verify that the following logical table sources were created:
e. Double click the Year Ago d1_order_agg1 source to open the Properties window. f. How can you identify that this source was created by the Time Series Wizard?
h. Click the Column Mapping tab. i. What physical table does the Year Ago Dollars comparison measure map to?
3. Add the new measures and calculations to the SupplierSales presentation catalog. a. Drag the six new logical columns from the SalesFacts logical table onto the SalesFacts presentation table in the Presentation layer. b. In the Presentation layer, rename the columns to the following:
Column Names Dollars Year Ago Change Dollars Year Ago Percent Change Dollars Year Ago Dollars Month Ago
Analytics: Server Architect (Siebel 7.7) 153
4. Since you are no longer using separate partitions for customer data, activate the D1_customer2 logical data source for the Customers table and deactivate the two partitioned data sources. a. In the Business Model and Mapping layer, expand the Customers table and the Sources folder. b. Open the properties for the D1_customer2 logical table source. Select the General tab, select the Active check box, and click OK. c. Open the properties for the CustPartOne logical table source. Select the General tab, deselect the Active check box, and click OK. d. Open the properties for the CustPartTwo logical table source. Select the General tab, deselect the Active check box, and click OK. e. Check your results:
5. Select File > Check Global Consistency to validate your work. 6. Select File > Save to save your work. 7. Select File > Exit to close the Administration Tool. 8. Test your results. a. Start the Siebel Analytics Server service and restart the Siebel Analytics Web service. b. Start Siebel Analytics Web and log in as Administrator with no password. c. Click the Answers link. d. Click the SupplierSales subject area. 9. Test the new Year Ago measures a. Build the following request. Notice that the request has a filter on Year.
154
Note: By default, the Percent Change Dollars Year Ago column displays in dollars. You may format the column to display the results as a percentage. Refer to previous labs if you need help on how to format this column. c. To verify Percent Change Dollars Year Ago, divide the Change Dollars Year Ago value by the Dollars Year Ago value. d. To verify Changed Dollars Year Ago, subtract Dollars Year Ago from Dollars. 10. Test the new Month Ago measures with the following request. Notice that the request has a primary sort on Region and a secondary sort on MonthCode.
b. You would verify the percentage change measure for a month ago by dividing the Change Dollars Month Ago value by the Dollars Month Ago value. 11. Select File > Close to close Siebel Answers.
Analytics: Server Architect (Siebel 7.7) 155
1.c.
1.d.i. 2.f.
2.g. 2.i.
156
Lab 12-1 Modeling the Physical Layer for the Slowly Changing Dimension
Goals Scenario To model a physical source that supports a slowly changing dimension (SCD). ABC has decided to implement a Type Two SCD for their customer data to account for changes in the sales representative alignments. Here you will model the physical source, the CustomersSCD table. In the Physical layer, CustomersSCD table and joins. 10 15 minutes
Outcome Time
Instructions:
You have consulted with your database administrator (DBA) and determined that the changes necessary in the source system are ready. You will now model the new physical source in Siebel Analytics. From this point forward you will be using the SupplierExtend database instead of the supplier2 database. It has all of the original tables and more. 1. Inspect the physical SCD table. This table is in the SupplierExtend database. a. Select Start > Programs > Microsoft SQL Server > Enterprise Manager to use the Microsoft database utility to view the tables. b. Expand the entries in the left pane to expose the Databases. c. Expand the SupplierExtend database and click Tables to view the tables in that database. d. Right-click CustomersSCD and select Open Table > Return Top e. Enter 10 and click OK. f. What are the names of the columns that help track the changes?
g. What are the values for SalesRep, EffStDate, and EffEndDate for the first row (Customer Name = Times On Bay) in the CustomersSCD table, and what do they represent?
157
158
i. Type Where (EffEndDate < 30000000) below the FROM clause in the top windowpane and click the ! button to run the SQL and determine which accounts have changed hands:
j. Notice that the New York Cafe account was owned by FRED FRIENDLY. Change the SQL to query for all rows for the New York Cafe account by changing the Where clause to WHERE Name = New York Cafe and clicking the ! button to run:
k. Who was the next person to take over the New York Cafe account, and on which date was the ownership changed? Does that person still own the account?
2. Create an ODBC data source to access the SupplierExtend database. a. Select Start > Programs > Administrative Tools > Data Sources (ODBC) to open the ODBC Data Source Administrator dialog box. b. Select the System DSN tab. c. Click Add. d. Select the SQL Server driver. e. Click Finish. f. In the Name field, enter ABCEXTEND. g. In the Server field, select (local). h. Click Next. i. Specify authentication. i. Select the With SQL Server authentication radio button. ii. Select the Connect to SQL Server to obtain default settings check box. iii. In the Login ID field, enter sa and leave the Password field blank. iv. Click Next. j. Specify the default data source. i. Select the Change the default database to check box, then click the drop-down arrow and select SupplierExtend. ii. Click Next. k. Click Finish. l. Test that the data source connection is valid. i. Click the Test Data Source button and verify that you get the message, TESTS COMPLETED SUCCESSFULLY! ii. Click OK. iii. Click OK. m. Click OK to close the ODBC Data Source Administrator. 3. Open the repository. a. Shut down the Siebel Analytics Server service. b. Double-click C:\SiebelAnalytics\Repository\abc.rpd. c. Log in as Administrator, no password. 4. Change the connection pool for your existing model to use the new datasource. a. In the Physical layer, double-click the connection pool for ABC. b. In the Data source name field, select ABCEXTEND. c. Click OK. 5. Import the table definition for the SCD source table. a. Select File > Import > from Database and select ABCEXTEND and click OK to connect to the SupplierExtend database. b. Expand the objects and select CustomersSCD and click Import. c. Click Close.
160
d. Notice that another source was created in the Physical layer. Since all the tables you previously modeled are also in the SupplierExtend database, you can consolidate them all into one database. i. Expand ABC until you see dbo. ii. Expand ABCEXTEND until you see CustomersSCD. iii. Drag CustomersSCD from within dbo in ABCEXTEND onto dbo in ABC. iv. Right-click ABCEXTEND and select Delete and click Yes to delete. 6. Create the physical primary key for the CustomersSCD table. Set the composite key to include NewKey, EffStDate, and EffEndDate. Do not create multiple keys.
7. Create the physical join. Recall that customers are joined with orders through customer number. Since customer number or NewKey is no longer enough to distinguish a row, you must join on more than just this key. a. Use the physical diagram to create the complex join between D1_Orders and CustomersSCD as follows. i. In the Physical layer, expand dbo, select Customers SCD and CTRL+click D1_Orders2. ii. Click the Physical Diagram icon. iii. Click the New complex join icon, which is the icon in the toolbox that is to the right. iv. Click D1_Orders2 and then CustomersSCD.
161
v.
vi. Click OK. vii. Why do you need to include the BETWEEN clause in the join?
162
Solutions 12-1 Modeling the Physical Layer for the Slowly Changing Dimension
Answers
1.f. 1.g. What are the names of the columns that help track the changes? EffStDate and EffEndDate. What are the values for SalesRep, EffStDate, and EffEndDate for the first row (Customer Name = Times On Bay) in the CustomersSCD table, and what do they represent? ALAN ZIFF, 19980101, and 30000000 represent the effective start date of 01/01/1998 with a maximum end date of 00/00/3000, which signifies that ALAN ZIFF has been the sales person of record for the Times on Bay customer since January 1, 1998 and still is. Who was the next person to take over the New York Cafe account, and on which date was the ownership changed? Does that person still own the account? VIRGIL JOHNSTON; 06/16/1998; yes Why do you need to include the BETWEEN clause in the join? You want to make sure the right customer sales representative is associated to the order based on the time the order was placed.
1.k.
7.a.vii.
163
Lab 12-2 Modeling the Logical Layer for the Slowly Changing Dimension
Goals Scenario To model the Logical layer for a slowly changing dimension. You need to mimic the work you did for the original customer dimension to create the new customer dimension that contains the historical information (the SCD Type Two physical source). This entails creating the dimension and supporting hierarchy. In the Business Model and Mapping layer, CustomersSCD and CustomerHistoryDim. 15 30 minutes
Outcome
Time
Instructions:
1. Create the new customer logical table, CustomersSCD, by dragging CustomersSCD from the Physical layer to SupplierSales in the Business Model and Mapping layer. 2. Create a complex join using the Business Model diagram. a. In the Business Model layer, right-click SupplierSales. b. Select Business Model Diagram > Whole Diagram. c. Click the New Complex Join icon. d. Click CustomersSCD and then click SalesFacts e. Select 0,1 for CustomersSCD. f. Select N for SalesFacts. g. Click OK. h. Close the diagram.
164
3. Recall that the original customer dimension, CustomerDim, has this hierarchical structure:
4. Create a new hierarchy called CustomerHistoryDim for CustomersSCD that mimics CustomerDim that you previously created for Customers. (Hint: You can use duplicate to copy CustomerDim and then modify CustomerHistoryDim as necessary.) a. Create a dimension object called CustomerHistoryDim. b. Right-click and create the levels:
Name TotalCustomer Region District SalesRep Customer Number of elements at this level 1 (Remember to check the Grand total level check box) 3 12 34 136
c. If you used duplicate to copy the dimension, delete the existing columns in CustomerHistoryDim. d. Add columns to the hierarchy by dragging logical columns from the CustomersSCD logical table to the CustomerHistoryDim hierarchy levels:
Logical Column Region District Sales Rep Name NewKey Level Region District Level Region District SalesRep Customer Customer Key Region District Use for drilldown Yes Yes
Analytics: Server Architect (Siebel 7.7) 165
Yes Yes
NewKey, EffStDate, and No EffEndDate (Note: This is a composite key including all three of the columns. When you define the key, click Add to add the additional columns.)
g. You would next need to continue to create any necessary level-based measures. We will skip this part for the purposes of our testing. 5. Set the level of CustomerSCD facts that are in the SalesFacts source. a. In the Business Model and Mapping layer, expand SalesFacts, open the Sources folder, and double click D1_Orders2. b. Select the Content tab. c. For CustomerHistoryDim, select Customer for the Logical Level. d. Click OK. 6. Right-click SupplierSales and select Check Consistency to validate your business model. 7. Select File > Save and click No to Check Global Consistency. Leave the Administration Tool open for the next lab.
166
Lab 12-3 Modeling the Presentation Layer for the Slowly Changing Dimension
Goals To add the Presentation layer so Siebel Answers can query the new dimension. ABC wishes to have the current customer data and the historical customer data visible to users in Siebel Answers. In the Presentation layer, CustomersSCD table. 10 20 minutes
Scenario
Outcome Time
Instructions:
1. In the Business Model and Mapping layer, select CustomersSCD and drag it on top of SupplierSales in the Presentation layer to create the new presentation table. You would normally delete the key columns since they are unimportant to users. However, during testing it will be helpful to you, so you will not delete them. 2. Select File > Check Global Consistency to validate your repository. 3. Select File > Save to save your work. 4. Select File > Exit to close the Administration Tool. 5. Test your results. a. Start the Siebel Analytics Server service and restart the Siebel Analytics Web service. b. Start Siebel Analytics Web and log in as Administrator with no password. c. Click the Answers link. d. Click the SupplierSales subject area. e. Query the original customer dimension by selecting Customers.Sales Rep, Customers.Customer, SalesFacts.Dollars, and run the query.
167
f. Scroll to see the sales for Kathy Lobo and Linda Rivero:
g. Notice that the Alley-Cats customer is listed as Lindas account. h. Query the new Customer History table and compare your results. i. Select CustomersSCD.Name, CustomersSCD.SalesRep, CustomersSCD.EffStDate, CustomersSCDEffEndDate, SalesFacts.Dollars, and run the query. Note: If you do not yet see the new presentation columns in the Answers UI, click
168
i. Notice that the sales for Alley-Cats are split between Kathy and Linda based on the effective dates. j. Close Siebel Answers.
169
170
Outcome
Instructions:
1. Examine the structure of the physical tables that store the customer data. The main customer information is in D1_customer2; the extension attributes are in Customer2x. a. Select Start > Programs > Microsoft SQL Server > Enterprise Manager to use the Microsoft database utility to view the tables. b. Expand the entries in the left pane to expose the Databases. c. Expand the SupplierExtend database and click Tables to view the tables in the database. d. Right-click D1_customer2 and select Open Table > Return Top. e. Enter 10 and click OK. f. Right-click Customer2x and select Open Table > Return Top. g. Enter 10 and click OK. h. How do the tables relate? What is the primary/foreign key relationship?
i. Leave Enterprise Manager open because you will use it during the testing below. 2. Open the repository. a. Shut down the Siebel Analytics Server service. b. Double-click C:\SiebelAnalytics\Repository\abc.rpd. Log in as Administrator with no password. 3. Create the physical source in the repository that points to the extension table. a. Select File > Import > from Database. b. Select ABCEXTEND and click OK. c. Expand and select Customer2x. d. Click Import.
Analytics: Server Architect (Siebel 7.7) 171
e. Click Close. f. Drag Customer2x from within dbo in ABCEXTEND to dbo in ABC and delete ABCEXTEND. 4. Create the physical joins using the physical diagram. a. In the Physical layer, select Customer2x, D1_customer2, and D1_Orders2 and click the Physical Diagram icon in the toolbar. b. Use the new foreign key icon to construct the joins. The extension table should be on the one side. Click Yes to create the key prompts.
Extension column Customer2x.Custkey Customer2x.Custkey Main column D1_customer2.NewKey D1_Orders2.CustKey
d. Close the Physical Diagram. 5. Add a separate logical table source for the extension to the logical dimension table. a. In the Business Model and Mapping layer, expand Customers. b. Right-click Sources and select New Logical Table Source. c. In Name, type Customer Extension. d. Click Add. e. Select Customer2x. f. Click Select. g. Click OK. 6. Add the logical columns from the extension table. a. In the Physical Layer, expand Customer2x. b. Drag PriceCategory onto Customers in the Business Model and Mapping layer. c. Drag Custkey from the Physical layer onto CustomerKey in the Business Model and Mapping layer. 7. Add the extension column to the Presentation layer by dragging PriceCategory to SupplierSales.Customers.
172 Analytics: Server Architect (Siebel 7.7)
8. Select File > Check Global Consistency to validate your work. 9. Select File > Save to save your work. 10. Select File > Exit to close the Administration Tool. 11. Test your results. a. Start the Siebel Analytics Server service and restart the Siebel Analytics Web service. b. Start Siebel Analytics Web and log in as Administrator with no password. c. Click the Answers link. d. Click the SupplierSales subject area. e. Run a request to display Customers.Customer and Customers.PriceCategory:
f. Compare the result in Siebel Answers with the result in Enterprise Manager. i. Return to Enterprise Manager. ii. In the D1_customer2 window, click the SQL icon. iii. Enter where Name = 93 Church Street and click ! to run. iv. What is the NewKey value for 93 Church Street?
v.
In the Customer2x window, what is the PriceCategory associated with Custkey 1004?
vi.
12. View the SQL used to produce the result. a. Double-click C:\SiebelAnalytics\Log\NQQuery.log.
173
b. Scroll to the end of the file and then backwards to locate the select statement:
c. Why is the SQL accessing both the main and extension table?
13. Validate that the SQL is optimal. a. Return to Answers and remove the PriceCategory from the Criteria and rerun the query. b. Close and open the log file and inspect the select statement:
d. Return to Answers and remove the column. e. Query for Customers.PriceCategory, SalesFacts.Dollars. f. Close and open the log file and inspect the select statement.
174 Analytics: Server Architect (Siebel 7.7)
i.
g. Select File > Exit to close the file. h. Select File > Close to exit Answers. Leave Enterprise Manager open for the next lab.
175
11.f.iv. What is the NewKey value for 93 Church Street? 1004 11.f.v. 12.c. In the Customer2x window, what is the PriceCategory associated with Custkey 1004? 5 Why is the SQL accessing both the main and extension table? The request from answers asked for Price Category, which is on the extension table, and Customer Name, which is on the main table. Why isnt the extension table in the query? Because no data was requested from the extension table, and the way we modeled the extension will not force a join unless data is necessary. Which tables are used in the query, and why? PriceCategory comes from the extension table Customer2x. D1_customer2 is joined to the extension table and main table D1_Orders2. Dollars comes from the main table D1_Orders2.
13.c.
13.f.i.
176
Outcome
Instructions:
1. Examine the structure of the physical fact tables for order. The main order information is in D1_Orders2, the extension attributes are in d1_Orders2X. a. Return to Enterprise Manager. b. Right-click D1_Orders2 and select Open Table > Return Top. c. Enter 10 and click OK. d. Right-click d1_Orders2X and select Open Table > Return Top. e. Enter 10 and click OK. f. How do the tables relate? What is the primary/foreign key relationship?
g. Close Enterprise Manager. 2. Open the repository. a. Shut down the Siebel Analytics Server service. b. Double-click C:\SiebelAnalytics\Repository\abc.rpd. Log in as Administrator with no password. 3. Create the physical source in the repository that points to the extension table. a. Select File > Import > from Database. b. Select ABCEXTEND and click OK. c. Expand and select d1_Orders2X. d. Click Import. e. Click Close.
Analytics: Server Architect (Siebel 7.7) 177
f. Drag d1_Orders2X from within dbo in ABCEXTEND to dbo in ABC and delete ABCEXTEND. 4. Add the ROW_WID column that stores the line item information to the orders table in the Physical layer. Note: The ROW_WID column stores the line item information on the D1_Orders2 table on the SupplierExtend database. Since the ABC database object in the Physical layer is now accessing the SupplierExtend database, you can add this column to the D1_Orders table. a. Double-click D1_Orders2. b. Click the Columns tab and click New. c. In the Name field, enter ROW_WID. d. In the Type field, select INT from the menu. e. Click OK to close the Physical Column dialog box. f. Click OK to close the Properties window. 5. Create the physical joins using the physical diagram. a. In the Physical layer, select d1_Orders2x and D1_Orders2 and click the Physical Diagram icon. b. Use the New Foreign Key icon to construct the join. The extension table should be on the one side. Click Yes to create the key prompts.
Extension column d1_Orders2X.ROW_WID Main column D1_Orders2.ROW_WID
6. Add the extension table to the existing source for the facts. a. In the Business Model and Mapping layer, expand SalesFacts and Sources. b. Double-click D1_Orders2. c. Select the General tab. d. Click Add. e. Select d1_Orders2X and click Select. Note: In ABCs case, every order has a row in the extension so a join type of Inner is appropriate. You would adjust this to Left Outer if rows might not be in the extension table.
178
g. Click OK. 7. Add the logical columns from the extension table. a. In the Physical Layer, expand D1_Orders2X. b. Drag CMDolrs onto SalesFacts in the Business Model and Mapping layer. c. Rename CMDolrs to Credits. d. Double-click Credits. e. Select the Aggregation tab. f. Select Sum. g. Click OK. h. In the Physical Layer, drag ROW_WID from d1_Orders2X onto SalesFacts in the Business Model and Mapping layer.
179
8. Add the extension column to the Presentation layer by dragging Credits from the Business Model and Mapping layer onto SalesFacts in SupplierSales in the Presentation layer. 9. Select File > Check Global Consistency to validate your work. 10. Select File > Save to save your work. 11. Select File > Exit to close the Administration Tool. 12. Test your results. a. Start the Siebel Analytics Server service and restart the Siebel Analytics Web service. b. Start Siebel Analytics Web and log in as Administrator with no password. c. Click the Answers link. d. Click the SupplierSales subject area.
180
e. Run a query for data from both the main and extension tables by selecting Customers.Customer, SalesFacts.Dollars, and SalesFacts.Credits, and click Results:
13. View the SQL used to produce the result. a. Double-click C:\SiebelAnalytics\Log\NQQuery.log. b. Scroll to the end of the file and then backwards to locate the select statements:
c. Verify that the D1_Orders2 (main table) and the d1_Orders2X (extension table) are both referenced. 14. Validate that the SQL is optimal. a. Return to Answers. b. Run a query for data from only the main table by selecting Customers.Customer and SalesFacts.Dollars and clicking Results.
Analytics: Server Architect (Siebel 7.7) 181
c. Close and open the log file and inspect the select statement. Verify that the extension table is not referenced in the query:
d. e. f. g. h.
Return to Answers. Remove all columns from your query. Query for Periods.Month, SalesFacts.Credits. Close and open the log file and inspect the select statement. Why was the main fact table accessed even though no data was requested from it?
15. Select File > Exit to close the log file. 16. Select File > Close to close Siebel Answers.
182
14.i.
183
184
Scenario
Outcome Time
Instructions:
1. Open the ABC repository in Online mode. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Administration. b. Select File > Open > Online. c. Click Open to accept the default User and Password. 2. Create the user Sara Wright. a. Check out all objects in the ABC repository by selecting File > Check Out All. b. Open the Security Manager by selecting Manage > Security. c. Select Users in the left pane. d. Right-click in the right pane and select New User. e. Create the user with the following information:
User name Full Name Password Logging level SWRIGHT Sara Wright <Blank> 2
Note: Setting the logging level field to 2 ensures query activity will be recorded in the Query Log. f. Click OK to close the User window. 3. Repeat this process and create the following users:
User Name PSMITH RMIND JCRAFT Full Name Paul Smith Rob Mind Jen Craft Logging Level 0 0 0
Analytics: Server Architect (Siebel 7.7) 185
MWEST JMEYER
2 2
4. In the Security Manager window, verify that your results resemble the following:
5. Create the SalesManagers group and add Sara Wright and Paul Smith to this group. a. In the left pane of the Security Manager, select Groups. b. Right-click in the right pane and select New Security Group. c. Enter SalesManagers in the Name field and click the Add button. d. Select SWRIGHT. e. Press CTRL+PSMITH. This allows you to simultaneously select Wright and Smith. f. Click OK. Wright and Smith are now part of the SalesManagers group. g. Click OK to close the Group dialog box. 6. Repeat this process and create the following two groups and assign users to the groups:
Group Name SalesUsers SalesHR Add User RMIND, JCRAFT JMEYER
7. Assign MWEST to the Administrators group. a. Double-click Administrators. b. Add MWEST. Note: At this point, the group and user structure resembles the following:
SalesManagers Group SWRIGHT PSMITH SalesUsers Group RMIND JCRAFT SalesHR Group JMEYER Administrators Group Administrator MWEST
8. Select Action > Close to close Security Manager. 9. Jacob Meyer should not be given access to any of the SupplierSales data. Using the Administration Tool, explicitly prohibit Meyers access to this data.
186 Analytics: Server Architect (Siebel 7.7)
a. b. c. d.
In the Presentation layer, double-click SupplierSales. Select the General tab. Click the Permissions button. Double-click the JMEYER check box. The X indicates that Meyer does not have access to the SupplierSales data. e. Do the remaining users have read access?
g. Click OK to close the Permissions window. h. Click OK to close the Presentation Catalog window. 10. Check in the changes you made into the ABC repository. a. Select File > Check In Changes, or click the Check In Changes icon b. Click No to check consistency. .
11. Save the changes to the ABC repository by selecting File > Save or clicking the Save icon 12. With your changes now saved, verify that you can start Siebel Answers as MWEST. a. Start Siebel Analytics Web and log in with the following parameters:
User ID Password MWEST
b. To the left of the Dashboards link, make sure you can see you are logged in as Mary. c. Click the Answers link. d. What subject areas are available to Mary?
to verify that
e. Click the SupplierSales link and notice the objects. f. Click Log Out in the upper-right corner. 13. Start the Siebel Answers application again, this time as JMEYER, and determine if Meyer has the same visibility that West has. a. To log back in, click the here link. b. Log in as JMEYER, leaving the password blank. c. Does the SupplierSales subject area display?
187
d. Why is this?
e. Select File > Close to exit Siebel Answers. f. Leave the Administration Tool open for the next lab.
188
189
Scenario
Outcome Time
Instructions:
1. From the Administration Tool, modify JMEYERs permissions so that he is no longer explicitly denied access to SupplierSales, but that the group he resides in, SalesHR is. a. Check out all objects in the repository by selecting File > Check Out All. b. Double-click the SupplierSales catalog folder and click the Permissions button. c. Define permissions so that JMEYER is unchecked and SalesHR is explicitly denied. d. Your results should resemble the following:
2. Now that you have removed JMEYERs explicit access restrictions from the SupplierSales data, will he be able to execute query requests against it in Siebel Answers? Explain.
3. Explicitly assign the SalesManagers group Read permission to the SupplierSales data.
190 Analytics: Server Architect (Siebel 7.7)
b. Click OK to close the Permissions dialog box. c. Click OK to close the Presentation Catalog window. 4. Add the SalesHR group to the SalesManagers group. a. Open the Security Manager. b. Select Groups and double-click SalesManagers. c. Click the Add button. d. Select the SalesHR group and click OK. The SalesHR group now belongs to the SalesManagers group. e. Click OK to close the Group dialog box.
191
Note: At this point, the group and user structure now resembles the following:
SalesManagers Group SWRIGHT PSMITH SalesHR Group JMEYER
f. Close the Security Manager. 5. Check in the changes you made into the ABC repository. . a. Select File > Check In Changes, or click the Check In Changes icon b. Click No to check consistency. Note: When asked to check for consistency, for the purposes of these labs it is not necessary. Always click No. 6. Save the changes to the ABC repository. 7. With the changes you have made thus far, will JMEYER be able to access the SupplierSales data?
8. Verify your answer. Start Siebel Answers as Administrator and register your changes on the Analytics server by updating the Analytics server metadata. a. Start Siebel Analytics Web and log in as Administrator with no password. b. Click the Answers link. c. Click Reload Server Metadata. Note: Only users with administrator rights have the ability to reload server metadata. This link is not visible to other users. d. Click Log Out. e. Log back in as JMEYER with no password. f. Does this user have access to the SupplierSales subject area now?
192
9. Return to the Administration Tool and modify the permissions so that JMEYER also belongs to the SalesManagers group. (Hint: Remember to check out all objects in the repository.) a. Open the Security Manager and double-click the SalesManagers group. b. Click the Add button. c. Select JMEYER and click OK. Meyer now belongs to both SalesHR and SalesManagers groups. Note: The group and user structure resembles the following:
SalesManagers Group SWRIGHT PSMITH JMEYER SalesHR Group JMEYER
10. Close the Group window and close the Security Manager. 11. Check in the changes and save the repository. 12. Log in to Siebel Answers as Administrator and reload the server metadata. 13. Verify Meyers access to the SupplierSales subject area. a. Log in as JMEYER to Siebel Answers. b. Does this user have access to the SupplierSales subject area?
14. Select File > Close to exit Siebel Answers. 15. Select File > Exit to close the Administration Tool.
193
7.
8.f. 8.g.
13.b. 13.c.
194
Outcome Time
Instructions:
1. Start Siebel Analytics Web and attempt to log in as Alan Ziff. a. Enter the following parameters:
User ID Password AZIFF az
b. Click Log In. Click No to remember password. c. Were you able to log in as this user?
d. Close the Siebel Analytics Log In window. 2. Create a new data source that connects to the security database. a. Select Start > Programs > Administrative Tools > Data Sources ODBC. b. Select the System DSN tab. c. Click Add. d. Scroll down to select SQL Server. e. Click Finish. f. Create a new data source with the following parameters:
Name Server SECURITY (local)
g. Click Next. h. Specify authentication. i. Select the With SQL Server authentication radio button. ii. Select the Connect to SQL Server to obtain default settings check box.
Analytics: Server Architect (Siebel 7.7) 195
i.
j. k. l.
m. n.
iii. Type sa in the Login ID field and leave the Password field blank. iv. Click Next. Specify the default data source. i. Select the Change the default database to check box. ii. Select Security from the drop-down list. iii. Click Next. Clear all the check boxes. Click Finish. Test that the data source connection is valid: i. Click the Test Data Source button and verify that you get the message, TESTS COMPLETED SUCCESSFULLY! ii. Click OK. Click OK again. Click OK to close the ODBC Data Source Administrator.
3. Shut down the Siebel Analytics Server. 4. Double-click C:\SiebelAnalytics\Repository\abc.rpd and log in as Administrator with no password. 5. Import tables from the Security database into the repositorys Physical layer. a. Select File > Import > from Database. b. Locate and select the SECURITY data source. c. Click OK. 6. Import tables from the security database. a. Expand the Security folder until both tables appear.
196
c. Click Import. d. Click Close. 7. Inspect the data that was imported into the Physical layer. a. In the Physical layer, expand the SECURITY source until both tables appear. b. Right-click securitylogons. c. Select View Data. A table appears. List the column header for each column that appears in the table.
d. Who is the first Sales Rep. listed, and what is his or her username and password?
e. Click Close. 8. Create an initialization block. a. Select Manage > Variables. b. In the left pane, select Initialization Blocks. c. In the right pane, right-click and select New Initialization Block. d. In the Name field, type Security.
Analytics: Server Architect (Siebel 7.7) 197
e. Under the Name field, select associate with session variables from the drop-down list. f. Create a string that requests username, group, password, and log level variables from the database. The values returned by the database will be assigned to the variables you define. These variables will be used in authenticating a user during login. i. In the Initialization screen window enter the following script: g. Click Browse to assign the connection pool. i. Expand Security and click Connection Pool. ii. Click Select. h. Your results should resemble the following:
9. Because you requested four variables in the string, you will need to define each variable. These variables are USER, GROUP, DISPLAYNAME, and LOGLEVEL. a. From the Initialization Block window, click the Variables tab. b. Click New. c. Enter USER in the Name field. d. Click OK. e. Click Yes to acknowledge that this variable has a special purpose.
198 Analytics: Server Architect (Siebel 7.7)
f. Repeat the process for the remaining three variables. g. When complete, your table of variables should resemble the following:
Note: It is important that the order in which your variables are listed be the same as they are listed above. 10. Before validating the authentication of these new users in a Web application, conduct a test to see what data is returned for the user Alan Ziff. a. Click the General tab. b. Click Test. c. In the Value field of the USER row, enter AZIFF. d. In the Value field of the PASSWORD row, enter az. Note: Notice that these values are populated in the initialization script. If this query returns data, the user is authenticated and session variables will be populated. e. Click OK and view the results:
Note: The sequence in which this data is listed is in the same order you defined the variables earlier. f. Click Close. g. Click OK to close the Initialization Block window. h. Close the Variable Manager window. 11. Save the changes in the repository and click No to check global consistency. 12. Select File > Exit to close the Administration Tool. 13. Start the Siebel Analytics Server service. 14. Start Siebel Analytics Web and log in as Alan Ziff. a. Enter the following parameters:
User ID AZIFF
Analytics: Server Architect (Siebel 7.7) 199
Password
az
b. Click Log In. c. Is there a personal greeting for ALAN ZIFF to the left of the Dashboards link?
200
7.d. 14.c.
201
Scenario
Outcome
Time
Instructions:
1. Open ABC.rpd in Online mode. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Administration. b. Select File > Open > Online. c. Click Open. 2. Disallow queries that may consume too many system resources by setting query limits for the SalesManagers group. a. Check out all objects in the repository. b. Open the Security Manager. c. Double-click the SalesManagers group. d. Click the Permissions button. e. Select the Query Limits tab. f. Specify a maximum number of rows each query can retrieve from the ABC database: i. Locate the ABC database and change its Max Rows value to 5. ii. In the Status Max Rows column, select Enable from the drop-down list. g. Specify the maximum time a query can run on the ABC database: i. In the Max Time (Minutes) column, change the value to 1. ii. In the Status Max Time column, select Enable from the drop-down list. 3. Restrict the time period that users can access specified repository resources from midnight Sunday to 7:00 A.M. Sunday: a. Click the Ellipsis button in the Restrict column of the ABC database.
202 Analytics: Server Architect (Siebel 7.7)
b. Highlight the blocks from Sunday at midnight to 7 AM Sunday. (Hint: With the first block selected press the SHIFT key and select the 7 AM block.) c. Click Disallow.
d. e. f. g.
Note: If a time period is not highlighted, access rights remain unchanged. If access is allowed or disallowed explicitly to one or more groups, the user is granted the least restrictive access for the time periods that are defined. Click OK to close the Restrictions dialog box. Click OK to close the User/Group Permissions dialog box. Click OK to close the Group dialog box. Close Security Manager.
4. Check in the changes and save the repository. You have successfully restricted access to the ABC database for the SalesManagers group. 5. Start Siebel Answers as Administrator and register your changes on the Analytics Server by updating the Analytics Server metadata. a. Start Siebel Analytics Web and log in as Administrator with no password. b. Click the Answers link. c. Click Reload Server Metadata. d. Click Log Out. 6. Verify that the changes you made to the maximum number of rows allowed per query works correctly. a. Start Siebel Analytics Web and log in as JMEYER with no password. b. If necessary, click the Answers link. c. Click the SupplierSales subject area. d. Select Customers.Customer and click Results.
203
f. Expand Error Details to view message. What does the error message state?
g. Select File > Close to exit Siebel Answers. 7. Return to the Administration Tool and inactivate the query restriction you just created. a. Check out all objects in the repository. b. Open the Security Manager. c. Double-click the SalesManagers group. d. Click the Permissions button. e. Select the Query Limits tab. f. From the ABC row, select Ignore for both Status Max Rows and Status Max Time columns. g. Click OK. h. Close all dialog boxes and Security Manager. 8. Check in changes and save the repository. 9. Close the Siebel Analytics Administration tool. 10. Restart the Siebel Analytics Server and Siebel Analytics Web services. 11. When the services have completely restarted, test your results. a. Start Siebel Analytics Web and log in as JMEYER with no password. b. Click the Answers link. c. Click the SupplierSales subject area. d. Select Customers.Customer and click Results. e. What are the results now?
204
11.e.
205
206
Scenario
Outcome
Time
Instructions:
1. Stop the Siebel Analytics Server service. 2. Enable the cache parameter in the NQSConfig.ini file. a. Double-click C:\SiebelAnalytics\Config\NQSConfig.INI. b. Locate the CACHE section and modify the ENABLE parameter as follows:
c. Save your changes and close the file. d. Close Windows Explorer. 3. Start the Siebel Analytics Server service. 4. Run a request and save it in Siebel Answers. a. Start Siebel Analytics Web and log in as MWEST with no password. b. Click the Answers link. c. Click the SupplierSales subject area. d. Create the following request:
e. Click the Results tab. f. Select File > Close to exit Siebel Answers.
Analytics: Server Architect (Siebel 7.7) 207
5. Open ABC.rpd in Online mode. a. Select Start > Programs > Siebel Analytics > Siebel Analytics Administration. b. Select File > Open > Online. c. Click Open. 6. Open the Cache Manager and verify that the request you made is listed as a cache. a. Select Manage > Cache. b. Expand the Star directory. c. Select MWEST. By selecting the user, all cache entries associated to that user appear in the right pane. d. Select the cache entry (there should only be one). e. Select SQL > Show. f. By inspecting the SQL, can you determine if this is the cache that represents the query you just created?
g. Click OK to close the SQL. h. With this entry still selected, scroll to the Created and Last used columns. Are the values for these fields the same?
j. Do you think that the results for the query you created were satisfied from an existing cache or were returned directly from the database?
k. Close the Cache Manager. 7. Inspect the cache file and verify that the results of the query were stored as a file in the cache. The modified time of the file should coincide with the time you originally created the request (time recorded above). a. Double-click C:\SiebelAnalyticsData\Temp\Cache. b. Select View > Details to display the details of each file. Note: The last file listed should be the cache that resulted from your query. Verify that the modified time of this file is the same as the time you created the request. c. Close the Windows Explorer directory. 8. Start Siebel Analytics Web and log in as JMEYER. a. Click the Answers link
208 Analytics: Server Architect (Siebel 7.7)
b. Click the SupplierSales subject area. c. Create the same request you created earlier and inspect its results:
d. Do you think the request was satisfied by the database or by a cache? Explain.
b. Close the log file. 10. Select File > Close to exit Siebel Answers. 11. In response to JMEYERs request, determine if a new cache entry were made in the Cache Manager and filed in the Cache directory. If a new entry was made in the Cache Manager and filed in the directory, then an existing cache was not used to satisfy his request. a. Open the Cache Manager. b. Are there any entries listed with JMEYER as the user?
c. Was the Last used date for MWESTs cache file updated? Explain.
209
d. Double-click C:\SiebelAnalyticsData\Temp\Cache. e. Notice that there was no new cache files created as a result of JMEYERs request. Thus, JMEYERs request was satisfied by an existing cache. f. Close Windows Explorer. g. Leave the Administration Tool open for the next lab.
210
6.h.
6.j.
8.d.
11.b. 11.c.
211
Time
Instructions:
1. What are some advantages of using a caching system for requests?
2. True or false: There is a list of criteria that can qualify a cache hit. If all but one of these conditions is met, a cache hit will not occur.
5. If you wanted to store cache files in a different location, where would you need to indicate this?
212
6. From the Cache Manager, inspect the cache parameters. a. If necessary, open the Cache Manager. b. From the Cache Manager window, select Action > Show Info. c. Inspect the information and record the following values: i. Number of entries currently in cache:
ii.
iii.
d. Click OK. e. Close the Cache Manager. f. Close the Administration Tool. 7. You have decided to decrease the number of rows per cache as well as the number of cache entries allowed. a. Stop the Siebel Analytics Server service. b. Double-click C:\SiebelAnalytics\Config\NQSConfig.ini. c. Locate the CACHE section and modify as follows:
d. Save the changes and close the file. 8. Validate your changes in the Siebel Analytics Administration Tool. a. Start the Siebel Analytics Server service. b. Open ABC.rpd in Online mode. c. Select Manage > Cache. d. Select Action > Show Info. Your results should resemble the following:
9. You have decided to make certain tables non-cacheable, meaning that if a request is made against it, a cache file will not be logged. a. Check out all objects in the repository. b. In the Physical layer, expand the ABC database so that you see all the tables. c. Double-click the D1_customer2 table. d. Select the General tab. e. Uncheck the Make table cacheable check box. f. Click OK. g. Repeat this process for the D1_Orders2 table. h. Check in your changes and save them to the repository. You do not need to check for consistency. 10. Start Siebel Answers as MWEST and create the following request using columns from the SupplierSales subject area:
a. Click the Results tab and inspect the results. 11. Return to the Administration Tool and open the Cache Manager to validate your changes. a. Do you see an entry for the request you just created?
c. Close the Cache Manager. d. Close the Administration Tool. 12. Close Siebel Answers.
214
2.
3. 4. 5.
215
216