You are on page 1of 23

Using Nested Exception

Aggregation in BEx ReportsScenario

Applies to:
SAP BW 3.x & SAP BI Net Weaver 2004s. For more information, visit the Business Intelligence homepage.

Summary
The Objective of this article is to explain the necessity of Nested Exception Aggregation in BEx reports with a
scenario.
Author:

KVS VaraPrasad

Company:

Cognizant Technology Solutions (India).

Created on:

25 October 2011

Author Bio
KVS VaraPrasad is working as a SAP BW consultant with Cognizant Technology
Solutions. He has got rich experience on various BW Implementation/Support Projects in
both SAP BW 3.5 and SAP BW 7.0.

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


1

Using Nested Exception Aggregation in BEx Reports- Scenario

Table of Contents
SAP BW 3.x & SAP BI Net Weaver 2004s. For more information, visit the Business Intelligence homepage. . 1
Summary............................................................................................................................................................. 1
Author Bio ........................................................................................................................................................... 1
Purpose:.............................................................................................................................................................. 3
Report Requirements:......................................................................................................................................... 3
Counting total number of deliveries: ................................................................................................................... 4
How to create IF then ELSE Conditions in Calculated Key Figures: ................................................................ 12
Counting On-time Deliveries: ............................................................................................................................ 12
Counting Late Deliveries:.................................................................................................................................. 14
Counting Early Deliveries: ................................................................................................................................ 15
Nested Exception Aggregation: ........................................................................................................................ 17
Nested Exception Aggregation on On-time Deliveries CKF: ............................................................................ 18
Nested Exception Aggregation on Deliveries Late CKF: .................................................................................. 19
Nested Exception Aggregation on Deliveries Early CKF: ................................................................................. 20
Related Content ................................................................................................................................................ 22
Disclaimer and Liability Notice .......................................................................................................................... 23

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


2

Using Nested Exception Aggregation in BEx Reports- Scenario

Purpose:
This article addresses the requirement of Nested Exception aggregation in BW/BI Reports; In this article Im
going to explain the following list:
How to use the formula variables with replacement path as processing type.
How to use IF ELSE condition in the calculated Keyfigures.
How to create and use Nested Exception Aggregation.

Report Requirements:
In some sales based reports, Users wants to see the Total number of deliveries, On-time deliveries, early
deliveries and Late Deliveries for particular time period.
To display the data as per above requirements we have to create Calculated Keyfigures to count the delivery
numbers based on Actual Delivery Date and Requested Delivery Date of Delivery number.
On-time Delivery: An On-time Delivery is a delivery number whose Actual Delivery Date is
equal to Requested Delivery Date.
Late Delivery: A Late Delivery is a delivery number whose Actual Delivery Date is greater than
Requested Delivery Date.
Early Delivery: An Early Delivery is a delivery number whose Actual Delivery Date is less than
Requested Delivery Date.

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


3

Using Nested Exception Aggregation in BEx Reports- Scenario

Counting total number of deliveries:


To count the delivery numbers we need a formula variable to hold the Delivery number for each record and
that formula should process with Replacement path with Delivery number (0DELIV_NUMB) as reference
Characteristic.
Step 1: Create a Calculate Key Figure - Number of Deliveries

Step 2: Give the Description and technical names as Number of Deliveries and CKF_NO_DEL_1
respectively and create a new Formula Variable to hold the Delivery numbers.

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


4

Using Nested Exception Aggregation in BEx Reports- Scenario

Step 3: Create ZVAR_DEL_NUMB formula variable


Description:

Delivery Number

Type of Variable:

Formula

Processing by:

Replacement Path

Reference Characteristic:

Delivery (0DELIV_NUMB)

Set the Replacement Path attributes with below settings:

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


5

Using Nested Exception Aggregation in BEx Reports- Scenario

This formula is not ready for input (Dont Check Variable is Ready for Input)

Set the Dimension as Number (Delivery number is numerical field):

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


6

Using Nested Exception Aggregation in BEx Reports- Scenario

Step 4: Drag and drop the Delivery Number (ZVAR_DEL_NUMB) formula variable into the Detail view of
Number of Deliveries (CKF_NO_DEL_1) Calculated Key Figure.

Use default aggregation type Standard Aggregation as Exception Aggregation

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


7

Using Nested Exception Aggregation in BEx Reports- Scenario

Comparing Date values:


Create two different formula variables with Replacement Path as processing type and having Actual Delivery
Date and Requested Delivery Dates as reference characteristics.

Formula variable with Actual Delivery date as reference characteristic:


Description:

Actual Delivery Date Formula

Technical Name:

VAR_ACT_DEL_DATE_FORM

Type of Variable:

Formula

Processing by:

Replacement Path

Reference Characteristic:

Actual Delivery Date (0ACT_DL_DTE)

In the Replacement Path tab, select the Replace Variable with attribute as InfoObject and replace with Key
value. The Off set values for date field starts with 0(Zero) and the length should be 8.

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


8

Using Nested Exception Aggregation in BEx Reports- Scenario

Dont Check the Variable is ready for Input

Set the Dimension as Date in the Currency/Unit tab

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


9

Using Nested Exception Aggregation in BEx Reports- Scenario

Similarly create another formula variable with Requested Delivery date as reference characteristic:
Description:

Requested Delivery Date Formula

Technical Name:

VAR_REQ_DEL_DATE

Type of Variable:

Formula

Processing by:

Replacement Path

Reference Characteristic:

Requested Delivery Date (0DSDEL_DATE)

In the Replacement Path tab, select the Replacement Variable with attribute as InfoObject and Replaced
with Key value. The Off set values for date field starts with 0(Zero) and the length should be 8.

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


10

Using Nested Exception Aggregation in BEx Reports- Scenario

Dont Check the Variable is ready for Input

Set the Dimension as Date in the Currency/Unit tab

Now we can compare Acutal Delivery date with Requested Delivery date value by using logical operators
example: = , < ,>, <=,>=..

Date Difference = Actual Delivery Date Formula (VAR_ACT_DEL_DATE_FORM) - Requested Delivery Date
Formula (VAR_REQ_DEL_DATE).

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


11

Using Nested Exception Aggregation in BEx Reports- Scenario

How to create IF then ELSE Conditions in Calculated Key Figures:


General IF ELSE Condition:
IF <Condition>

(is true)

<Statements>

(Execute the statements block)

ELSE IF<Condition>
<Statements>
ELSE IF<Condition>
<Statement>
IF ELSE Condition Example:
We can write IF then Else statement for different comparisons in Calculated KeyFigure / Formula.
Example: (A ==B)*C + (A>B) *D + (A<B) * E Statements gives different results for different values of A & B.
Case 1:
IF A == B is True
The Statement becomes (1) * C + (0) * D + (0) * E Result is C.
Case 2:
IF A > B is True
Then the statement becomes (0) * C + (1) * D + (0) * E Result is D
Case 3:
If A < B is True
Then the statement becomes (0) * C + (0) * D + (1) * E Result is E.

Counting On-time Deliveries:


To count On-time Deliveries we have to compare Actual Delivery Date with Requested Delivery date. If both
dates are same then only we should consider that delivery number.
Create a new calculated keyfigure On-Time Del (CKF_ON_TIME_2) and drag and drop the Actual Delivery
Date and Requested Delivery date formula variables into the Detail view.

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


12

Using Nested Exception Aggregation in BEx Reports- Scenario

Formula to count On-time Deliveries:


On-Time Deliveries = ([VAR_ACT_DEL_DATE_FORM] Actual Delivery Date == [VAR_REQ_DEL_DATE]
Requested Delivery Date) * [CKF_NO_DEL_1] Number of Deliveries

Set the Exception Aggregation value to TOTAL and Reference Characteristic Requested Delivery date.

Exception Aggregation as Total: As the name signifies, this function is used to aggregate the result of a
key figure in a different manner than standard OLAP functionality. It works same as Standard Exception
Aggregation but summarized keyfigure with respect to the Reference Characteristic.
Similarly create Late deliveries and Early deliveries calculated keyfigures to count Late and Early deliveries.

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


13

Using Nested Exception Aggregation in BEx Reports- Scenario

Counting Late Deliveries:


Create a new Calculated Keyfigure Deliveris Late (CKF_DEL_LATE_4) and drag and drop required formula
variables into the Detail view of CKF.

Formula to count Late Deliveries:


Deliveries Late = ([VAR_ACT_DEL_DATE_FORM] Actual Delivery Date > [VAR_REQ_DEL_DATE]
Requested Delivery Date) * [CKF_NO_DEL_1] Number of Deliveries

Set the Exception Aggregation value to TOTAL and Reference Characteristic Requested Delivery date
(0DSDEL_DATE)

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


14

Using Nested Exception Aggregation in BEx Reports- Scenario

Counting Early Deliveries:


Create a new Calculated Keyfigure Deliveris Early (CKF_DEL_EARLY_6) and drag and drop required
formula variables into the Detail view of CKF.
Formula to count Early Deliveries:
Deliveries Early = ([VAR_ACT_DEL_DATE_FORM] Actual Delivery Date < [VAR_REQ_DEL_DATE]
Requested Delivery Date) * [CKF_NO_DEL_1] Number of Deliveries

Set the Exception Aggregation value to TOTAL and Reference Characteristic Requested Delivery date
(0DSDEL_DATE)

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


15

Using Nested Exception Aggregation in BEx Reports- Scenario

Result of Default Aggregation Standard Exception Aggregation:


If we are not using Exception Aggregation as Total then the Calculated Key figures uses Standard
Aggregation then the report result is as below:

Report Result:

Place Actual Delivery date and Requested Delivery dates in the columns of BEx designer of the report for
detail analysis of above error, then the report result will be as follows:

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


16

Using Nested Exception Aggregation in BEx Reports- Scenario

Report result:

As per above screenshot, we can understand that On-time, Delivery Late and Delivery Early are not
summarized at Actual, Requested Delivery date levels. In order to get summarized result we have to use
TOTAL as an Exception Aggregation type with respect to dates. Here we need nested exception aggregation
to get correct results. i.e first we have to create one Calculated Keyfigure with TOTAL Exception aggregate
with reference to Requested Delviery date and then create another Calculated Key Figure/Formula and call
the earlier CKF(with Requested Delivery date as reference cahracteristic) into this and set the TOTAL
Exception aggregation with reference characteristic Actual Delivery Date.

Nested Exception Aggregation:


If we need multiple exception aggregations or reference characteristics, we can nest formulas and calculated
key figures in one another and specify an exception aggregation for each formula or calculated key figure.
Necessity of Nested Exception Aggregation:
As highlighted in the above screen shot, the results of the On-time deliveries, Deliveries Late and Deliveries
early with the Actual Delivery Dates are X.
If we create one level of exception aggregation with reference to Requested Delivery date then we get below
result (Detail level):

As per the result, the deliveries are not aggregated along with Actual Delivery Date (X value in result
columns). To avoid this situation we need one more level of Calculated Key Figures/Formula with Exception
Aggreateion on current Calculated KeyFigures.

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


17

Using Nested Exception Aggregation in BEx Reports- Scenario

Nested Exception Aggregation on On-time Deliveries CKF:


Create New Calculate KeyFigure Deliveries On-Time (CKF_DEL_ON_TIME_3) and drag and drop the OnTime Del (CKF_ON_TIME_2) into the Detail View.

Set the Exception Aggregation to Total and Actual Delivery date (0ACT_DL_DTE) as Reference
Characteristic:

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


18

Using Nested Exception Aggregation in BEx Reports- Scenario

Nested Exception Aggregation on Deliveries Late CKF:


Similarly Create New Calculate KeyFigure for Late Deliveries (CKF_LATE_DEL_5) and drag and drop the
Deliveries Late (CKF_DEL_LATE_4) into the Detail View.

Set the Exception Aggregation to Total and Actual Delivery date (0ACT_DL_DTE) as Reference
Characteristic

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


19

Using Nested Exception Aggregation in BEx Reports- Scenario

Nested Exception Aggregation on Deliveries Early CKF:


Create new Calculate KeyFigure Early Deliveries (CKF_EARLY_DEL_7) and drag and drop the Deliveries
Early (CKF_DEL_LATE_4) CKF into the Detail View.

Set the Exception Aggregation to Total and Actual Delivery date (0ACT_DL_DTE) as Reference
Characteristic

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


20

Using Nested Exception Aggregation in BEx Reports- Scenario

Drag and drop the Deliveries On-Time (CKF_DEL_ON_TIME_3), Late Deliveries (CKF_LATE_DEL_5) and
Early Deliveries (CKF_EARLY_DEL_7) Calculated Key Figures into the Rows and Company code into the
Coulumns.

Report result (Summarized Level):

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


21

Using Nested Exception Aggregation in BEx Reports- Scenario

Related Content
http://help.sap.com/saphelp_nw70/helpdata/en/75/21054da1392649948e5b94e4fc4bce/frameset.htm
http://help.sap.com/saphelp_nw70/helpdata/en/03/6ba03cc24efd1de10000000a114084/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/6f/56853c08c7aa11e10000000a11405a/content.htm
http://help.sap.com/saphelp_nw70/helpdata/en/ca/5f9ac61a205a459d0e7ef313d10321/content.htm

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


22

Using Nested Exception Aggregation in BEx Reports- Scenario

Disclaimer and Liability Notice


This document may discuss sample coding or other information that does not include SAP official interfaces and therefore is not
supported by SAP. Changes made based on this information are not supported and can be overwritten during an upgrade.
SAP will not be held liable for any damages caused by using or misusing the information, code or methods suggested in this document,
and anyone using these methods does so at his/her own risk.
SAP offers no guarantees and assumes no responsibility or liability of any type with respect to the content of this technical article or
code sample, including any liability resulting from incompatibility between the content within this document and the materials and
services offered by SAP. You agree that you will not hold, or seek to hold, SAP responsible or liable with respect to the content of this
document.

SAP COMMUNITY NETWORK


2011 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BA - boc.sap.com | UAC - uac.sap.com


23