Download - BO Designer 1

Transcript
Page 1: BO Designer 1

BO Technical TrainingBO Technical Training

By

BO Competency

Business Objects Designer Training

1

Page 2: BO Designer 1

BO Technical Training

DESIGNER MODULEDESIGNER MODULE

Page 3: BO Designer 1

BO Technical Training

•Creation of Universe

•Connecting to Databases

•Selecting Tables and columns

•Creation of classes

•Creation of objects

•Joins

•Data Restriction

Agenda

Page 4: BO Designer 1

BO Technical Training

A universe is a semantic layer that maps the data structure

found in databases (tables, columns, etc) in business terms.

A universe can represent any specific business area, process,

or department. For example, a universe can relate to a

department in a company such as marketing or accounting.

What is a UniverseWhat is a Universe

Page 5: BO Designer 1

BO Technical Training

Business Objects Designer

Page 6: BO Designer 1

BO Technical Training

A typical universe layout...A typical universe layout...

Classes

Objects

Universe Pane Structure Pane

Page 7: BO Designer 1

BO Technical Training

ClassClass

• A class is a logical grouping of objects within a universe. In general, the name of a class reflects a business concept that conveys the category or type of objects.

• A class can be further divided into subclasses.

• As a designer, you are free to define hierarchies of classes and subclasses into a model that best reflects the business concepts of your company.

Page 8: BO Designer 1

BO Technical Training

ObjectsObjects

An object is the most refined component in a universe. It maps to data or a derivation of data in the database.

Types of objects - Dimension Objects -

Focus of analysis in a query.

Maps to one or more columns in a database that are key to a query.

Measure Objects - Aggregate functions that map to statistics in a database.

Map to “fact attributes” of a star schema.

Detail Objects Descriptive data about the dimensions.

Always attached to a dimension.

Page 9: BO Designer 1

BO Technical Training

Five stages in universe development process

• User Requirements

– Detailed analysis of the information needs of the users.

• Data Analysis

– Detailed data analysis of the database breaking it down into

functional areas that users can relate to.

• Design

– Information from first 2 phases must be amalgamated to

create the conceptual design of the Universe, its objects

and other components.

Page 10: BO Designer 1

BO Technical Training

• Development and distribution

– Create using the Designer module.

– Test using the User module.

– Distribute to the users via the repository.

• Maintenance

– Designer is responsible for updating and maintaining

Universe and keeping it up to date with any changes in the

User Requirements.

Page 11: BO Designer 1

BO Technical Training

Define the Parameters

Insert Tables

Make the Joins

Resolve the Loops

Create Classes and Objects

Set up Hierarchies

Creation of the Universe

Page 12: BO Designer 1

BO Technical Training

Select File, Parameters

• To begin creating a new universe:

Select File, New

• To access the Universe Parameters dialog box for an existing universe:

or

Click on

Creating a Universe

Page 13: BO Designer 1

BO Technical Training

• A universe is identified with a user name and a connection to the database

• A detailed description can also be added

Setting up Parameters : Definition Tab

Page 14: BO Designer 1

BO Technical Training

What Is a Connection?

• Definition:

A connection is a link from the universe to the Target database.

The link is achieved using middleware (for example ODBC).

An existing connection may be used or a new connection created for a universe.

There are three different types of connections.

Page 15: BO Designer 1

BO Technical Training

Different Types of Connection

PersonalCan only be used on the client

Shared

Can be used by more than one user to send queries to the target database from a shared server

Secured

This connection is used when you wish to distribute the completed universe to the user population via the repository

Page 16: BO Designer 1

BO Technical Training

3. Identify the driver to be used to access the target database

Creating a New Connection

2. Choose the middleware

1. Click on New.

Page 17: BO Designer 1

BO Technical Training

Setting up Universe Parameters

• Definition Tab: name, description and

connection to the database

• Summary Tab: author and statistics about

the universe

• Strategies Tab: internal or personal

wizards to make creating a universe

easier

• Controls Tab: manages access and

control of resources

• SQL Tab: queries and SQL parameters

• Links Tab: enables dynamic links with

other universes

Page 18: BO Designer 1

BO Technical Training

• The Summary tab displays general information about the universe

Setting up Parameters : Summary Tab

Page 19: BO Designer 1

BO Technical Training

Provides automated strategies for:

Setting up Parameters : Strategies Tab

• Creating objects• Setting joins• The Table browser

listing

Page 20: BO Designer 1

BO Technical Training

A strategy is a script that reads structural information from a database or a flat file.

DESIGNER uses strategies as an aid for creating the components of the universe - objects, tables and joins.

In DESIGNER, strategies are of 2 types - Built-in Strategies External Strategies

Universe Strategies

Page 21: BO Designer 1

BO Technical Training

Built-in Strategies

Built-in strategies are pre-decided strategies that are available with any installation of Business Objects.

DESIGNER uses the following built-in strategies for creating the components of universes:

the Objects Creation strategy, which tells DESIGNER how to define classes and objects automatically from the database’s tables and columns

the Joins Creation strategy, which tells DESIGNER how to define joins automatically from the database’s tables and columns

the Table Browser strategy, which tells DESIGNER how to read the table and column structures from the database’s data dictionary

Page 22: BO Designer 1

BO Technical Training

Built-in Strategies

To enable automatic creation, the following must be checked….

Page 23: BO Designer 1

BO Technical Training

External Strategies

External Strategies enable designers to specify their own strategy for creating the universe components.

External strategy files are declared in the STG section of .PRM files and are specific to RDBMSes.

Use of external strategies To insert Objects - “Insert --> Candidate Objects” To insert Joins - “Tools --> Detect Joins” To insert Tables - “Insert --> Tables”

Page 24: BO Designer 1

BO Technical Training

• These allow you to limit the size of results and restrict the time allowed for executing queries

Setting up Parameters : Controls Tab

• The Supervisor can change these parameters for specific groups or users

Page 25: BO Designer 1

BO Technical Training

• SQL parameters are used to define the limits of the SQL that may be generated by the universe

• The Supervisor can change these parameters for specific groups and users

Setting up Parameters : SQL Tab

Page 26: BO Designer 1

BO Technical Training

• Enables dynamic links with other universes

Setting up Parameters : Links Tab

Page 27: BO Designer 1

BO Technical Training

• Choose File, Save or click

Saving a Universe

• Save the universe using a maximum of eight characters with up to three characters as an extension

• This makes it possible to distribute the universe across different kinds of computers

• By default the universe is saved in the folder:

c:\Program Files\Business Objects\BusinessObjects 5.0\universe

Page 28: BO Designer 1

28BO Technical Training

Adding Tables

Click on

Choose Insert, Tables from the menu

• The Table browser displays all the tables and views of the database

• You can select multiple tables using the Shift key or Ctrl key

• Use the Table browser: Double-click on the background of the Structure

Page 29: BO Designer 1

BO Technical Training

Customizing Table Insertion

• Select Tools, Options then click on the Database tab

• From here you can select and deselect options related to table insertion

• You can set internal strategies to:

automatically extract joins detect cardinalities create objects when

inserting tables

Page 30: BO Designer 1

BO Technical Training

Creating classes

Manual Creation Use “Insert > class” from the menu. An ‘Edit Properties’ box

appears. Enter class description.

OR

– Use to create a class

Page 31: BO Designer 1

BO Technical Training

Automatic creation– Select a table in the structure pane.– Drag it to the universe pane.– A class is created in the universe pane with the same name as the table name.– Objects are also created automatically in the class corresponding to the fields in the table.

Page 32: BO Designer 1

BO Technical Training

Creating objects

Manual Creation Select the class where object is to be created. Use “Insert”--> “Object” from the menu. An ‘Edit Properties’ box

appears. Enter object details.

Automatic creation Select a column from a table in the structure pane. Drag it to the universe pane. An object is created under the nearest class to the point where

you drop the column. Default object name is column name with underscores replaced

with spaces.

Page 33: BO Designer 1

BO Technical Training

Three property pages

Definition - Name- Data type- Description- SELECT statement- WHERE clause

Object Properties

Page 34: BO Designer 1

BO Technical Training

• Properties

Qualification Associated List

of Values

Page 35: BO Designer 1

BO Technical Training

Aggregate projection Applicable only to

measures. Defines how the

measure will be aggregated when projected from a micro-cube.

Page 36: BO Designer 1

BO Technical Training

• Advanced Security User rights on

Objects Date Formats

Page 37: BO Designer 1

BO Technical Training

Joins

Page 38: BO Designer 1

BO Technical Training

WHAT THEY ARE - Relationship between 2 or

more tables that help restrict the result set of a

query run against those tables.

WHY USE - they limit the occurrence of a

Cartesian product, a situation in which all

possible combinations between each row of each

table are retrieved.

Joins

Page 39: BO Designer 1

BO Technical Training

Types of Joins

• Equi-Join Table 1.Column A = Table 2.Column B Resulting data set limited to values common in Column A & B.

• Outer-Join Table 1 OUTER JOIN Table 2 on Column A = Column B Resulting data set limited to ALL the values in Table 1 and ONLY matching

values in Table 2 based on Column A and Column B.

• Theta-Join Table 1.Column A BETWEEN ….. AND …… Links tables based on a relationship other than equality between 2 columns.

Page 40: BO Designer 1

40BO Technical Training

• A join can be entered manually using two methods:

Creating and Deleting Joins

With the menu option Insert,

Joins and the Edit Join box

Graphically

To delete a join, click on the join line and press Delete

Page 41: BO Designer 1

BO Technical Training

HANDS ON WORKSHOP

Page 42: BO Designer 1

BO Technical Training

•Create a universe called “ VACATION ”

•Create a new connection•Use ODBC Driver.•Connection Name “ Vacation-Connection ”•Use “ CLUB ” datasource•Connection type should be “ Personal ”

•Remove the limits of 5000 rows and 10 minutes for query time execution.

Exercise 1

Page 43: BO Designer 1

BO Technical Training

Identify the windows in the interface...

• Class and the Object or

Universe Window

• Structure Window

• Table Window

Page 44: BO Designer 1

BO Technical Training

Exercise 2Exercise 2

• The universe Vacation should have two Classes Customer & Sales Details.

• Customer must have 2 objects Customer-Id & Customer-Name (Full Name)

• Sales Details must have two objects Invoice Date & Invoice-Id.

• Customer (class) must have 2 detailed objects namely Phone number & Address giving additional info. about Customer Name.

• Create an appropriate join between Customer and Sales tables.

• Save your work in the default location.

Page 45: BO Designer 1

BO Technical Training

Observe the Properties for an ObjectObserve the Properties for an Object

• Definition Tab

• Properties Tab

• Advanced Tab

For the object Customer Name -

Page 46: BO Designer 1

BO Technical Training

Exercise 2AExercise 2A

• Query 1 - Create a query which gives details about Customer Names and their

Invoice ID Run the query

• Query 2 Find Out the number of customers for which the invoices have not

been created from Vacation Universe.

Page 47: BO Designer 1

BO Technical Training

Exercise 2BExercise 2B

• Customer class has 2 detail objects namely Phone number & Address giving additional info. about Customer Name.

• Add another detail object called Age Range which specifies age range for the customer.

Hint :- Use Age Range table ;Use Theta join between age ; max ; min

Page 48: BO Designer 1

BO Technical Training

Exercise 2CExercise 2C

• In the Vacation Universe create third class called “Sales Measures”.

• In this class create a measure object called revenue.• Save the universe and test in user module.• Notice the variation in “Group By” clause.

• Hint :- Revenue = (days) x (nb of guest) x (price)

Use Service & Invoice line table

Page 49: BO Designer 1

BO Technical Training

Exercise 2DExercise 2D

• Create dimension objects City , Region & Country in Class Customer

• In the user module create a data provider using Customer Name, Country & Sales Revenue.

• Using Slice and Dice Panel remove Customer name from the query.

• See the changes in Sales Revenue.• In Designer Module set Function = None• Repeat all the above steps

Page 50: BO Designer 1

BO Technical Training

Restricting DataRestricting Data

Page 51: BO Designer 1

BO Technical Training

Types of RestrictionsTypes of Restrictions

• Hard Coded / Direct Restrictions

• Indirect Restrictions

• Flexible Conditioning of the Data

• Multiple Prompt

Page 52: BO Designer 1

BO Technical Training

Hard-coded Restriction

• Adding a WHERE condition to an object allows you to give a more precise definition:

Page 53: BO Designer 1

BO Technical Training

How Data is Restricted

• The Where clause in an SQL statement restricts the number of rows returned in the result set:

WHERE... join definitions ...

WHERE... join definitions ...AND Country=‘United Kingdom’

Page 54: BO Designer 1

BO Technical Training

Indirect Restriction

• Achieved using conditional objects• In the User Module , user has the option to apply the

restriction.• Obviously , more flexible than previous type of

restriction.• Once a conditional objects are included, restriction

becomes hard-coded for the query.

Page 55: BO Designer 1

BO Technical Training

Condition Objects

• Select Condition Object View

• Insert a Condition Object

• Condition object name

• Description

• Where clause

Page 56: BO Designer 1

BO Technical Training

Flexible / @Prompt type Restriction

• Offers maximum flexibility

• Limitation of Indirect type of restriction is overcome by having flexibility in selecting the where clause.

• Achieved using @Prompt Command.

Page 57: BO Designer 1

BO Technical Training

@Prompt Command Syntax

• Message in the Prompt ‘Any Message’

• Data Type ‘A’ or ‘N’ or ‘D’

• List Of Values Hard Coded List of Values {‘Japan’, ‘USA’,’France’}

Values of existing Objects

• Number of Choices Mono ; Multi

• Type of Choice Free ; Constrained

Page 58: BO Designer 1

BO Technical Training

Multiple Prompt Conditioning

• Extension of @Prompt Conditioning

• More than one where clause can be prompted.

• If the same ‘Message text’ is used in the next prompt, the user is prompted only once and the same value is substituted for the next prompt too.

For instance, consider the following where clause -

WHERE column A = @prompt(‘Enter value’,…...)

AND column B = @prompt(‘Enter value’,…..)

This will result in the user being prompted only once and the same value will be substituted for column B as well.

Page 59: BO Designer 1

BO Technical Training

HANDS ON WORKSHOP

Page 60: BO Designer 1

BO Technical Training

Exercise 3

• Add a dimension object called “ Customer Name(French)” to class Customer. The new object should show only French Customers.

• Save the Universe.• Test in User Module.

Page 61: BO Designer 1

BO Technical Training

Exercise 4

• Add a condition object called “ French Only” to class Customer.

• Set the conditions for the new object. • Save the Universe.• Check things in User Module.

Page 62: BO Designer 1

BO Technical Training

Exercise 5

• Add another condition Object “City-user-prompt” to class Customer.

• Set the conditions for the new object using @Prompt Command

• Save the Universe

• Check things in User Module

Page 63: BO Designer 1

BO Technical Training


Top Related