Sie sind auf Seite 1von 21

Business Objects

Thursday, March 10, 2011


SAP BO Designer

Business Objects Designer is a SAP software tool that allows developers to create
Universes for Web Intelligence and Desktop Intelligence users. It is a client application,
accessible after the installation.

Location of Designer in a client system;

Start -> Programs -> Business Objects Xi 3.1 -> Business Objects Enterprise ->
Designer

What is a SAP BO Universe:

SAP BO Universe is a semantic layer that isolates end users from underlying database
or technical issues of database. A universe maps to data in the database, but uses
every day terms that describe user business environment.

What is the role of an Universe in Reporting:

The role of an universe is to provide an easy to use and understand interface for non
technical Web Intelligence users to run queries against a database to create reports and
perform data analysis.

Best Practices to adopt while designing SAP BO universe:

Being the cornerstone of the Business Objects semantic layer, universe design
becomes one of the most important aspects of getting the right data out there in time for
analysis and decision making.
Following are the best practices for to be considered while designing universe,

• Analysis of end user requirements is the most important task in the process.It is
strongly advisable to spend most of the universe development time and put much
effort in Analyzing and Planning phases of business requirements.
• Avoid using automatic universe creation wizard. Universe created using wizard
will be complex and difficult to understand.
• Insert tables into universe one at a time.
• Use short cut joins whenever possible to reduce no. of tables used in a Query.
• Class and Object naming convention should be in business terms, so that it
makes sense to business users.
• All Objects should have help text or usage information.
• Object formatting should preferably done at the Universe level.
• Pre-build condition objects in the universe rather than forcing users to build
conditions for reports.
• Use aggregation in all measure objects - to push aggregation to database where
performance bottleneck is likely to affect BO server and database performance is
optimal.Generally aggregation at database level is much more powerful, and it
reduces the volume of data to be transported over network.
• Use custom LOVs or Cascading prompts to display LOVs where hierarchies and
numerous values are involved.
• Use derived tables to define measure objects dependent on multiple fact tables.

How to create universe in client system:

In order to build a universe, developer should create a new universe file. Connection
parameter must be defined while creating universe file, to allow universe to access
database middleware. Connection parameter includes definition of a universe which is
comprised of universe name, description, RDBMS connection.

log onto Designer ->File ->New

Universe Parameters dialog appears


once connection is established, test the connection to make sure its working.

Schema: A schema is a graphical representation of database structures. In Designer


you create schema which your universe represents.

Schema contains tables and joins. Tables contains columns that you eventually map to
object that business user use to create reports. You design the schema in structure
pane by selecting tables from target database using table browser from Insert menu in
designer.

A good schema design is essential for a good universe.

There are two types of schema,

1. Star Schema
2. Snowflake Schema

Star Schema: Star schema is a relational database schema for representing


multidimensional data. Star schema consists of one or more fact tables referencing any
number of dimensional tables.

Advantages of Star Schema:

• Provides highly optimized performance for typical data warehouse queries.


• Reduces the number of joins between the tables and hence faster performance.

Disadvantages of Star Schema:

• Requires more amount of storage space.

Star Schema is used for both simple data marts and very large data warehouses.

Snowflake Schema: Snowflake schema is a more complex data warehouse model


than a star schema, and is a type of star schema. It is called snowflake schema,
because data model resembles snowflake.

Snowflake schema helps in more normalization and eliminates data redundancy. This is
because, a dimension data is grouped in to more tables instead of one large table.

Advantages:

• No redundant data, hence easier to maintain.


• When we normalize the dimension, dimension will not be parsed.

Disadvantages:
• In snowflake model, query process takes longtime as more tables are joined.
• Increases number of tables end users should work with.

Snowflake data model is good when data warehouse is small. for large data warehouse
environments star schema is idea to implement.

Typically a universe can be created in 4 simple steps:

1. Adding tables
2. Creating Joins & Cardinalities
3. Creating classes and Objects
4. Defining Conditions.

Before we further proceed lets take a look at the universe designer window, it is split
into two parts:
1. Structure Pane
2. Universe Pane (object explorer )

Structure Pane: Located on the right hand side. This is the place where developers
inserts tables into universe. Right click on the structure pane to open table browser to
insert tables into universe. Select tables from the table browser and click on insert
button to add tables to the structure pane.

Universe Pane: is also called as Object Explorer. The graphical component with in the
main designer window that displays a hierarchical view of classes, objects and
conditions in a universe. Two radio buttons on the lower edge of the universe pane
filters the display of components. One button the Classes / Objects, provides a view of
classes and objects, other button Classes / Conditions provides a view of Classes and
Conditions.
SAP Universe Designer window in a glimpse

To get a better view of tables in structure pane click on Arrange Tables button to
arrange tables horizontally.

Step 1. Adding Tables to universe: A table browser component available in universe


designer allows developer to select tables from database and place them in structure
pane, which shows a visual representation of a physical database structure or schema.
Table browser is a independent component which can be invoked from toolbar button or
by right click on structure pane.

Step 2. Creating Joins & Cardinalities: Once more than one table is inserted into
schema, we need to create joins between tables, as they allow data to be retrieved in a
meaningful way.

What is a Join?
A join is a condition that links the data in separate but related tables. The tables usually
have a parent-child relationship. If a query does not contain a join database returns
result set with all possible combinations of rows in a table, such a result set is called
Cartesian Product.
A join between two tables determines how data is returned when both tables are
included in a query.

Creating Joins: There are several approaches to define joins in Universe Designer; they
are as follows
• Manually in the schema
• By selecting Automatically detect joins
• Graphically by using the mouse to drag a line between columns in separate
tables.

Individual joins can be created between tables graphically by using the mouse to trace a
line from a column in one table to a column in another table.

Once join is created between two tables, join properties has to be mentioned manually.
In order to mention join properties, double click on the join; edit join dialog box appears
where we can define join properties.

below is the join properties dialog box


Join properties are explained in detail below..,
Join Operators: we can select join operator from the drop down list between Table 1
and Table 2 boxes. The operator allows you to define the restriction that the join uses to
match data between the joined columns.

one can select following operators for a join


SAP BO Universe designer supports 5 different types of joins on tables, below are the
list of joins universe designer supports;

SAP BO universe allows full outer joins to be declared between two tables. Below is the
procedure to declare full outer joins

Defining full outer joins:


Outer joins are defined by using ANSI92 standards. In order to declare full outer join
between tables on join properties, we have to enable ANSI92 parameter to YES. This
parameter is available on the parameter page.

Location: File --> Parameter --> Parameter

Below picture shows how full outer join looks;


Once Joins are defined on the tables next step would be identifying cardinalities on
tables;

What is a Cardinality: Cardinality is a property of join that describes how many rows in
one table match rows in another table. Cardinality is expressed as the minimum and
maximum number of rows in a column at one end of a join, that have matching rows in
the column at the other end of join.

Above cardinality can be explained as follows:

1,n ---> For each customer there can be one or more reservations
1,1 ---> For each reservation will have one and only one customer.

Different types of cardinalities can be set on a join, below listed types of cardinalities

Join cardinality can be set manually or with automatic detection tool. For efficiency and
accuracy it is advised to apply cardinality manually.
Step 3.Creating Classes and Objects:

Classes:
Class is a logical grouping of objects and conditions with in a universe, based on
business criteria. Classes are represented as a folder in universe. Classes are created
in universe pane.Classes can also contain sub class.

how to create class:

From menu bar click on insert class icon or right click on universe pane and select
class, class is created in universe pane.

Edit properties of Class dialog box appears where you can name class.
Objects:
An Object is most refined component in a universe. It maps to data or derivation of data
in the database, for the purpose of multidimensional analysis. An object can be
classified as Dimension, Detail, Measure objects.
Objects are grouped into classes. Using objects, end users can built queries to generate
reports.

How to create objects in class:

From menu bar click on insert object icon or right click on universe pane and select
object, object is created in universe pane under selected class, below is the object
definition

Name: Object name. It can consists of alphanumeric characters including special


characters.
Type: It defines object datatype. It can be of four types, Character, Date, Number, Long
text.

Below are the object properties dialog box;


.
Dimension Object: An object being tracked in multidimensional analysis. Dimensions
are organized into hierarchies.

Detail Object: An object qualified as a detail provides descriptive data about a


dimension object. A detail is always attached to dimension. It maps to one or more
columns in the database that provide detail information about dimension object. A detail
object can not be used in a drill down analysis.

Measure Object: An object that is derived from aggregate function.It conveys numeric
information by which dimension object can be measured.
following are the five basic aggregate functions available in objects

• Sum
• Average
• Minimum
• Maximum
• Count
other than above mentioned functions in object, BO universe supports one more
function which is aggregate_aware.

What is aggregate aware?


Aggregate Aware is a feature that makes use of predefined aggregate tables to
enhance the performance of SQL transactions. It is used to improve the speed by which
aggregates are calculated in the database. To set up aggregate awareness in a
universe, you define one or more objects using the @Aggregate_Aware function. The
syntax for this function is as follows:

@Aggregate_Aware(aggregate_table_1......aggregate_table_n)

The
arguments of this function are all the names of alternative aggregate
tables. When you formulate the syntax, you should be aware of the order
of the arguments. The precedence is from left to right; this means that
SAP Business Objects determines the aggregate to use beginning from the
leftmost argument.
As a general rule, you should enter the most aggregate table as the first argument, the next most
aggregate table as the second argument, and so on.You must then use the Aggregate Navigation editor
to set up a list of incompatible objects and/or incompatible conditions for each aggregate table in your
universe. These are the components that cannot be used with an aggregate table.You can either set up
these lists manually, or cause the list of objects to be detected by Designer.

Step 4. Defining Condition Objects:

A condition object is a predefined where clause that can be inserted in to the select
statement inferred by objects in query pane.
Condition objects are stored in the Condition view of the universe pane.

Condition objects of Beach universe and where clause condition is shown below
Advantages of using condition objects in BO Universe:

• Useful for complex or frequently used conditions.


• Gives users choice of applying the conditions.
• No need to have multiple objects.

Disadvantages of using condition objects in BO Universe:

• Only disadvantage of using condition objects, is you force the condition on


business user to restrict their access to part of the dataset.

Lastly we complete the universe by running Integrity check.

Checking Universe Integrity:

As you design universe, you should test universe integrity periodically. Integrity check
can be performed in two ways.

• Manual integrity check


• Automatic integrity check
Following are types of errors detected by integrity check on universe;

• Invalid syntax in the SQL definition of an object, condition or join


• Check Loops
• Isolated tables
• Isolated Joins
• Loops within contexts
• Missing or incorrect cardinalities

How does check integrity performs check on universe:

The Check Integrity function sends a request to the database for a list of tables. It then
compares this list with tables in universe. It carries out same action for columns. In
Structure pane, Check Integrity marks any tables or columns not matching those in the
list as not available. These are tables or columns that may have been deleted or
renamed in the database.

Performing Manual Integrity Check:

below is how you perform integrity check manually;

select Tools ---> Check Integrity

or

Click on Check Integrity button on tool bar.

Performing Automatic Integrity Check:

You can set automatic check integrity option in below way;

Select Tools --> Options --> General


Click on Automatic parse upon definition and click OK.

upon completing integrity check, if check integrity encounters no errors it displays "OK"
beside each type.

Click on the (+) sign beside the error type, to view the list of components in which the
error occurred.
If integrity check identifies that database of universe connection is changed, you can
use refresh structure in universe to update the contents of structure pane.

Path:

View --> Refresh Structure

Posted by Anil at 5:46 AM


Email This BlogThis! Share to Twitter Share to Facebook Share to Google Buzz
Labels: BO Universe, Business Objects, Business Objects Designer, SAP BO Designer, Universe

0 comments:

Post a Comment

Newer Post Older Post Home


Subscribe to: Post Comments (Atom)

Followers
Blog Archive
• ▼ 2011 (5)
o ▼ March (4)
 SAP Business Objects Architecture Overview
 SAP BO Designer
 New features in SAP BO 4.0
 New Features in SAP BO 3.1
o ► February (1)

Simple template. Template images by gaffera. Powered by Blogger.

Das könnte Ihnen auch gefallen