Sunday, September 8, 2013

SAP BW/BI InfoObjects

Info objects


Definition:

Info objects are business evaluation objects in BI/BW. Info objects are the smallest information units in BW. They structure the information needed to create data targets. Info objects with attributes or text can be either data target's or info providers

They are divided in to Five types:

Characteristics
Key figures
Unit 
Time 
Technical 



Characteristics:
This type of InfoObject symbolizes a business entity that you are likely going to be analyzing.  Such as: material, customer, or region.
Key Figures:
This type of InfoObject provides numeric measures of business entities.  We chose to implement these to examine characteristics by weight, quantity, price, amount, etc…
Time Characteristics:
This particular type of InfoObject provides when a transaction takes place.  As an option, fiscal year, month of sale, day of sale, quarter in which something sold.
Unit InfoObjects:
This kind of InfoObject provides what unit of measure a key figure is using. For instance, we might be using the metric system to gauge weights for our clients, so as a substitute for pounds we will be using kilograms.
Technical Characteristics
SAP internal InfoObjects that retain information containing automatically generated IDs that are being used for monitoring and administration of the SAP BW system.  For example, every individual load into SAP BW involves a unique request ID that ties back to a exclusive load so administrators can diagnose inaccuracies or take out a bad data load.


Types of Characteristic info objects

Display Attribute :A display attribute provides supplemental information to a characteristic.
                               Time dependent Display attribute
                               Time independent Display attribute

Navigational Attribute : A navigational attribute indicates a characteristic-to-characteristic relationship between two characteristics. It provides supplemental information about a characteristic and enables navigation from characteristic to characteristic during a query. Time independent Navigational Attribute and Time dependent navigational attribute .
Text

Hierarchy : version dependent, time dependent , interval hierarchies

Compound attribute : A compound attribute differentiates a characteristic to make the characteristic uniquely identifiable. For example, if the same characteristic data from different source systems mean different things, then we can add the compound attribute 0SOURSYSTEM (source system ID) to the characteristic; 0SOURSYSTEM is provided with the Business Content.


Info Objects SAP BW/BI





Different tables created while activating Info objects are as follows :

Master data table
Text Table
SID table
Hierarchy table
Attribute table


Below are the Tables Naming Convention:


/BI0/S<IO Name> - SID table

/BI0/P<,,,,>  - master data table

/BI0/T<,,.>- Text Table

/BI0/X<,,. SID Table for attributes

/BI0/M<,,> View of Master data tables

/BI0/Q<...> Time dependant master data table

/BI0/Y<..> Time Dependant SID table for attributes

The above table gets created if you have time dependent attributes



If the Infoobject have hierarchies

/BI0/H<...>Hierarchy Table

/BI0/K,...> Hierarchy SID table

/BI0/I<..> SID Hierarchy structure




Different Data types allowed for creating a characteristic info object are
CHAR, NUMC, DATE, TIME

Different Data types allowed for creating Key figure info object are
Amount, Quantity , Number, Interger, date , time 






Tuesday, September 3, 2013

Types of DSO (Data Store Objects) in SAP BW/BI

Data Store Object (DSO)


Definition


  • A DataStore object serves as a storage location for consolidated and cleansed transaction data or master data on a document (atomic) level.
  • This data can be evaluated using a BEx query.
  • A DataStore object contains key fields (such as document number, document item) and data fields that, in addition to key figures, can also contain character fields (such as order status, customer). The data from a DataStore object can be updated with a delta update into InfoCubes (standard) and/or other DataStore objects or master data tables (attributes or texts) in the same system or across different systems.
  • Unlike multidimensional data storage using InfoCubes, the data in DataStore objects is stored in transparent, flat database tables. The system does not create fact tables or dimension tables.

DSO


Use

Standard : Consists of three tables: activation queue, table of active data, change log
2) Possible of having Update rules
3) SID Generation for characterstics at the time of Activation
4) BEx Queries Possible
5) We can only add or overwrite the records for new data request
For direct update :  Consists of the table of active data only
2) No Possiblity of having Update rules
3) NO SID Generation for characterstics and No concept of  Activation
4) BEx Queries Possible
5) System deleted all existing records when we do new data request upload
Write-optimized :  Consists of the table of active data only
2) Possible of having Update rules
3) NO SID Generation for characterstics and No concept of  Activation
4) BEx Queries Possible
5) We can only add the records for new data request





Monday, September 2, 2013

Steps to Debug Routines in BI Transformations




If at some point of time we need to debug the routines (start routine , End routine or Expert routine) following are the steps to follow:

Step 1:
Transformation->Extras->Display generated program ->Set a Breakpoint.

Step 2:
DTP->Execute->Serially in dialog process for Debugging->Simulate ->Checked the expert mode.


There is another way to generate the Program ID and it is shown in the PDF Link below. Please kindly refer the below document for further details:










Routines in SAP BI 7.0 Transformations



Routines In Transformations


Use
You use routines to define complex transformation rules.
Routines are local ABAP classes that consist of a predefined definition area and an implementation area. The TYPES for the inbound and outbound parameters and the signature of the routine (ABAP method) are stored in the definition area. The actual routine is created in the implementation area. ABAP object statements are available in the coding of the routine. Upon generation, the coding is embedded in the local class of the transformation program as the method.
The following graphic shows the position of these routines in the data flow:




Features
The routine has a global part and a local part. In the global part you define global data declarations 'CLASS DATA'. These are available in all routines.
You can create function modules, methods or external subprograms in the ABAP Workbench if you want to reuse source code in routines. You can call these in the local part of the routine. If you want to transport a routine that includes calls of this type, the routine and the object called should be included in the same transport request.
Transformations include different types of routine: Start routines, routines for key figures or characteristics, end routines and expert routines.
The following figure shows the structure of the transformation program with transformation rules, start routine and end routine:




The following figure shows the structure of the transformation program with expert routine:





Start Routine
The start routine is run for each data package at the start of the transformation. The start routine has a table in the format of the source structure as input and output parameters. It is used to perform preliminary calculations and store these in a global data structure or in a table. This structure or table can be accessed from other routines. You can modify or delete data in the data package.
Routine for Key Figures or Characteristics
This routine is available as a rule type; you can define the routine as a transformation rule for a key figure or a characteristic. The input and output values depend on the selected field in the transformation rule. More information: the Routine section under Rule Type.

End Routine
An end routine is a routine with a table in the target structure format as input and output parameters. You can use an end routine to postprocess data after transformation on a package-by-package basis. For example, you can delete records that are not to be updated, or perform data checks.
NOTE:
If the target of the transformation is a DataStore object, key figures are updated by default with the aggregation behavior Overwrite (MOVE). You have to use a dummy rule to override this.

Expert Routine
This type of routine is only intended for use in special cases. You can use the expert routine if there are not sufficient functions to perform a transformation. The expert routine should be used as an interim solution until the necessary functions are available in the standard routine.
You can use this to program the transformation yourself without using the available rule types. You must implement the message transfer to the monitor yourself.
If you have already created transformation rules, the system deletes them once you have created an expert routine.
NOTE:
If the target of the transformation is a DataStore object, key figures are updated by default with the aggregation behavior Overwrite (MOVE)










Maintaining Aggregates in BW

Aggregates

Definition
An aggregate is a materialized, aggregated view of the data in an InfoCube. In an aggregate, the dataset of an InfoCube is saved redundantly and persistently in a consolidated form into the database.

Use
Aggregates make it possible to access InfoCube data quickly in Reporting. Aggregates serve, in a similar way to database indexes, to improve performance.
We recommend that you create aggregates, especially in the following cases:
·        The execution and navigation of query data leads to delays with a group of queries.
·        You want to speed up the execution and navigation of a specific query.
·        You often use attributes in queries.
·        You want to speed up reporting with characteristic hierarchies by aggregating specific hierarchy levels.

Aggregate Screen Information
An aggregate is made up of characteristics and navigation attributes belonging to an InfoCube. You can group the data according to different Aggregation Levels. In doing so, you can also store values for hierarchy levels belonging to an external hierarchy. Both time-dependent attributes and time-dependent hierarchies can be used in aggregates. Characteristics that are not used in the aggregate are brought together.
If you have created aggregates for an InfoCube and entered data for them, the OLAP processor automatically accesses these aggregates. When navigating, the different results are consistent. The aggregate is transparent for the end user.
New data is loaded at a defined time using logical data packages (requests) in an aggregate. After this transaction, the new data is available for rolling up in reporting.










Wednesday, August 28, 2013

SAP NOTE or OSS NOTE Implementation without OSS ID

Most of the BW/BI Developer/Consultant do not have OSS IDs and are often stuck in SAP Note error. Below is the procedure by which one can download soft copy of any of the SAP Note.


Navigate the below path: 
1: Goto t-code SNOTE in Dev system, you will get the screen like below




2 : Click on Goto -->Download SAP Note
3 : Enter the Note No. and Press Execute
4 : At times, You may get Error in RFC connection. You can ignore this message and try again
5 : Your SAP Note will be downloaded and available under SAP Notes-->New. You can refer the screen shot

These simple steps will make you to get any SAP Notes irrespective of any OSS ID.





Friday, August 2, 2013

SAP BW/BI-Suppressing Records in BEx Query (QUERY DESIGNER-SUPPRESS ZONE)

Importance


In the properties for a query, you can specify whether rows or columns that contain zeros as values are to be displayed.


Detail


Below are the options for query properties:



  •  You can specify that zeros are to be displayed (No zero suppression takes place).


  •  If you want to suppress zeros, there are two setting options: Active and Active (All Values = 0).


  •  In the properties for a structure, you can also define whether zero suppression is to be applied to structure elements.



Settings: Active and Active (All Values = 0)




Active Setting:


If you use zero suppression with the Active setting, the system checks whether there are zero values in the results area. If there are zero values in the results area, the corresponding row or column is hidden. If you specify that zero suppression is to be applied to Rows and Columns.


Active (All Values = 0) Setting:


If you use zero suppression with the Active (All Values = 0) setting, the system hides all rows or columns that contain zero values. If you use the Active (All Values = 0) setting for Rows and Columns.


Please refer to below document for details with example:


http://scn.sap.com/docs/DOC-44040