Sie sind auf Seite 1von 94

Vinay Singh

Creating and Using


Advanced DSOs in
SAP® BW on SAP HANA®

© Rheinwerk®
Publishing

Bonn • Boston
W h a t Y o u 'll Learn

In this E-Bite, you'll find step-by-step instructions for creating and using
aDSOs in SAP BW on SAP HANA. We begin with an introduction to aDSOs
in the context of other classic SAP BW modeling objects before jumping
into their main features and capabilities. We’ll then look at the artifacts and
data necessaiy to build our aDSOs. Finally, we'll see how aDSOs can be
used to compare actual and plan data via CompositeProviders.

1 In tro d u c tio n ................................................................................................. 5


1.1 SAP BW Source Systems and Staging Technologies ............ 5
1.2 Classic SAP BW InfoProviders .................................................... 7
1.3 O perational Data P ro v id e rs ......................................................... 7
1.4 Advanced DataStore O b je c ts ....................................................... 9

2 Features and Capabilities of a D S O s .................................................... 11


2.1 M ain F e a tu re s .................................................................................. 12
2.2 M ain Capabilities ........................................................................... 17
3 Creating Artifacts and Loading Data .................................................. 21
3.1 Process Steps .................................................................................. 21
3.2 Creating a Data Source fo r a Purchase O rde r
in SAP ERP ....................................................................................... 22
3.3 Creating and Loading Data fo r a Classic DSO
in SAP BW ....................................................................................... 25
3 .4 Creating and Loading Data fo r an InfoC ube
on an O pen Purchase O rder in SAP BW ................................ 31
3.5 Creating an SAP H A N A -O p tim ize d InfoC ube
fo r Classic DSO D a t a ...................................................................... 33

4 Creating and Using a D S O s ...................................................................... 40


4.1 Creating N ew a D S O s ...................................................................... 40
4.2 Loading Transactional Data D irectly in to aDSOs ................... 59
4.3 Loading Plan Data fro m Flat Files to a D S O s ............................. 64
4 .4 O ve rw ritin g Plan Data w ith aDSOs ....................................... 68

4
5 Using aDSOs to Compare Actualand Plan D a t a ................................ 68
5.1 C o m binin g Actual and Plan Data o f aDSOs via
a C o m p o s ite P ro v id e r...................................................................... 69
5.2 Enhancing a C om positeP rovider ............................................... 76

6 W h at's N e x t ? ............................................................................................... 93

1 In tro d u c tio n

In this introduction to Advanced DataStore Objects (aDSOs), we begin


our discussion by looking at the existing SAP Business Warehouse (SAP
BW) source systems and staging technology. We also provide an overview
of classic InfoProviders and operational data providers (ODPs), which are
the two key building blocks in using SAP BW for analysis. We will then
round out our discussion by looking at the topic of this E-Bite: aDSOs.

1.1 SAP BW Source Systems and Staging Technologies


Systems that provide business intelligence (BI) capabilities are referred to
as source systems. Two of the core processes performed in an SAP BW sys­
tem are data retrieval and data staging. Master data, transactional data,
and metadata can be retrieved by various mechanisms provided by SAP
BW.
Figure 1 shows the various source system types and data retrieval mecha­
nisms available in SAP BW.
As shown in Figure 1, there are multiple ways in which we can pull data
into an SAP BW system from different source systems and stage them. A
typical SAP BW data flow would look like Figure 2. We are not consider­
ing ODPs here.

5
I n t r o d u c t io n 1

Figure i SAP BW Source System and Staging Technology

SAP ERP
Invoice (F) Calendar Day (F) Customer Amount
number (F) sales (F)
11001 20.01.2016 1060 90,00
11002 26.01.2016 1060 80,00
11003 28.01.2016 1050 50,00
11009 02.02.2016 1060 45,00
Empty Storage
SAP BW
PSA-Persistent Staging Area
Invoice (F) Calendar Day (F) Customer Amount
number (F) sales (F)
11001 20.01.2016 1060 90,00
InfoCube
11002 26.01.2016 1060 80,00
Calendar Calendar Amount
11003 28.01.2016 1050 50,00 Month (C) Month (C) Sales (K)
11009 02.02.2016 1060 45,00
01.2016 1060 170,00
Date
DSO-DataStore Object 1050 50,00
Invoice (F) Calandar Day (F) Customer Amount 02.2016 1060 45.00
number (F) sales (F)
11001 20.01.2016 1060 90,00
11002 26.01.2016 1060 80,00
Aggregate Date
11003 28.01.2016 1050 50,00
11009 02.02.2016 1060 45,00

Figure 2 Typical Data Flow from a Source System to SAP BW

6
I n t r o d u c t io n | 1

1.2 Classic SAP BW InfoProviders


InfoProviders are the data modeling objects found in SAP BW. Within the
BI context, they are objects into which data is loaded or from which data
can be displayed. In this section, we will look at the classic SAP BW Info­
Providers. We are using the word "classic" to differentiate between
aDSOs and previously used standard DataStore Objects (DSOs).
InfoProviders are used to create and execute BI queries in the SAP Busi­
ness Explorer (SAP BEx). Classic SAP BW InfoProviders can be categorized
as one of two types:
X Objects that physically contain data
These types of InfoProviders include:
InfoCubes
DSOs
InfoObjects as InfoProviders
X Objects that display logical views of data
These types of InfoProviders include:
InfoSets
VirtualProviders
MultiProviders
Aggregation levels
TransientProviders

1.3 Operational Data Providers


ODPs are defined in a joint modeling environment (modeling from the
backend SAP BW system and Eclipse) for search and analysis. They act as a
link between data in the structure of data sources and operational analytics
(see Figure 3). When implementing data sources, ODPs support the repli­
cation of mass data.

7
I n t r o d u c t io n | 1


Subscriber/
Provider
Consum er

Figure 3 Operational Data Provisioning

ODP is an SAP NetWeaver-based framework. An operational delta queue


(ODQ) resides where the ODP is installed as a source. An application's
delta data can be retained for a definable time period in the ODQ.
The ODP framework and ODQ provide the following capabilities:
» Direct access to the operational data without latency.
» A single interface for providing operational data for operational analyt­
ics.
» Low total cost of ownership (TCO) because operational reporting can be
done directly in the operative system.
» Data compression rates up to 90% in ODQ due to highly efficient com­
pression.
» Ability to extract data from a data source once via ODPs and then
deploy it on different architectures for the same data sources.
» Makes the Persistent Staging Area (PSA) options, as ODP/ODQ covers
the main services offered by PSA.

8
I n t r o d u c t io n | 1

You can convert existing DSOs and InfoCubes into aDSOs. Conversion
tools will be shipped by SAP in upcoming support packages (SP). But you
can, in the meantime, create aDSOs using existing DSOs and InfoProvid-
ers as templates. (Visit www.sapyard.com to see how you can convert
them; we do not cover this process in the E-Bite).
Now that you have a better idea of the different ODPs and InfoProviders,
let's dive into the topic of this E-Bite: aDSOs.

1.4 Advanced DataStore Objects


aDSOs combine functions from InfoCubes and (classic) DSOs, and pro­
vide further enhancements such as modeling on InfoObjects and simple
fields. aDSOs are based on a new SAP BW request management concept,
which overcomes the limitations of classic request logic in areas such as
high frequency loads, upper limit of request, impact of load performance
and request achieving, and housekeeping. aDSOs focus on data per­
sistency and extending reporting capabilities (e.g., navigational attributes
can be defined using CompositeProviders).
aDSOs, like CompositeProviders, can be modeled only with the new SAP
BW modeling tool (Eclipse tool) and require SAP HANA SPS 8 with revi­
sion 83 or higher. aDSOs will become the central object for modeling per­
sistence layers and will replace traditional SAP BW InfoProviders with
persistence (InfoCubes, classic DSO, PSA). Currently, classic InfoProviders
co-exist with aDSOs.
As shown in Figure 4, with SAP BW 7.4 on SAP HANA, we can use an
aDSO as the only object in the persistence layer.

9
I n t r o d u c t io n | 1

SAP B W /R D B M S SAP BW 7 .4 / H A N A

'N
^ C o m p o s it e P r o v id e r —
_ M u l t i P r o v i d e r ------------ C o m p o s it e P r o v id e r
S InfoSet — -— =
> v iiiu a iriu v iu ci ^ w p c n u i ' J v ie w
V J

1 ......... . ^

5 H ybridProviders
5 I n f o C u b e ----------------- --------- — —^ AHvpnrpH
D a ta S to r e O b j e c t — D ataStore O bject
£ l PSA ------------------ -
J
Figure 4 aDSO Is the Only Object Needed for Persistence Layer

The following are some of the characteristics of aDSOs:


» Modeling persistency for new end-to-end scenarios (staging and report­
ing).
» Flexibility to contain both fields and InfoObjects in any combination
(field only, InfoObjects only, or a mix of both).
» Planned conversion tools, to be shipped with later SPs, which prevent
the need to massively convert existing scenarios.
» One InfoProvider for many different modeling scenarios for both field-
based and InfoObject-based modeling in a simple Eclipse environment.
» Serves as a source object for Open Operational DataStore (Open ODS)
views.
» Supports high-frequency data loads.
» Contains up to 120 key fields (compared to 16 in classic DSO).
» Modeled in the Eclipse-based SAP BW modeler.

10
F e a tu re s a n d C a p a b ilitie s o f a D S O s | 2

To access aDSOs you’ll need to go to the SAP BW Modeling perspective of


SAP HANA Studio in Eclipse, as shown in Figure 5.

Figure 5 DataStore Object (Advanced) Option Available in SAP BW Data M odelin g in Eclipse

In this section, we introduced the existing SAP BW source systems and


staging technology, as well as the classic InfoProviders and ODPs used for
analysis. Finally, we dived into the focal point of our E-Bite: aDSOs.
In the next section, we'll take what we've learned one step further, with
an overview of aDSO features and capabilities.

2 Features and C a p a b ilitie s o f aD S O s

The introduction of SAP BW 7.4 SP 8/SP 9 provided major enhancements


for running SAP BW on SAP HANA as a virtual data warehouse, building
upon Open ODS views and additional CompositeProvider scenarios.
These enhancements also included the addition of aDSOs. aDSOs help to
consolidate DSOs and InfoCubes. In this section, we will walk through
the various features and capabilities of aDSOs, as well as explore how
these capabilities help to optimize various tasks in your SAP BW environ­
ment.

11
F e a tu re s a n d C a p a b ilitie s o f a D S O s | 2

2.1 Main Features


When speaking about the main features of aDSOs, we are discussing the
different application objects used. In this section, we'll look at the three
main tables of aDSOs, aDSOs as persistence objects, and other key fea­
tures.

M a in Tables of aDSOs

aDSOs have three core tables: Inbound Table, Table of Active Data, and
Change Log. These tables are generated when an aDSO is created and acti­
vated, regardless of the usage. The three tables are described in Table 1.
Table Technical Name In Comparison To
Inbound Table /B IC /A <A D S0 ► Activation queue table for
te ch n ica l name>l classic DSO.
► Uncompressed fact table of
non-SAP HANA-optimized
InfoCube.
Table o f Active Data /B IC /A <A D S0 ► Same as classic DSO.
te ch n ica l name>2 ► Compressed fact table of
non-SAP HANA-optimized
InfoCube.
Change Log BIC/A<ADS0 ► Same as classic DSO.
te ch n ica l name>3

Table 1 AAain Tables of aDSO

As shown in Figure 6, the data is first loaded into the Inbound Table.
Depending upon the use case, the data may be read from the Inbound
Table directly, or it may be activated first and then read from the Table of
Active Data. The Change Log contains the change history for the delta
update from an aDSO to other data targets.

12
F e a tu re s a n d C a p a b ilitie s o f a D S O s | 2

EXTRACTION A N D REPORTING
M

/BIC /A <A DSO /B IC /A <A D SO


Technical Technical
N a m e >2 N a m e >3
A ctive Data C hange Log
/BIC /A <A DSO
Technical
N a m e >1
In bound Table
A d v a n c e d DSO
A

LOADING

Figure 6 Structure of aDSOs

aDSO as the M a in Persistence O bject

The SAP HANA part of SAP BW on SAP HANA has brought with it fea­
tures to consolidate all SAP BW InfoProviders with persistent data into a
single object with a single, simple database layout. This is similar to the
consolidation that occurs in the virtual layer based on CompositeProvi-
ders. With an aDSO as the main persistence object, we need to keep the
following points in mind during consolidation:
» SAP ensures that aDSOs are the only objects you need for persistence.
This also implies that we do not have the benefits of specific character­
istics that we used to have prior to aDSOs, when we were using classical
modeling object features such as E v e r y C h a r a c t e r i s t i c I s K e y for Info-
Cubes.
» Classic DSOs have a three-table approach.
» The PSA has a field-based structure.
» No activation is required to load the write-optimized DSO.

13
F e a tu re s a n d C a p a b ilitie s o f a D S O s 2

To make the creation process for aDSOs simpler and faster, model tem­
plates are available. The following are shown in Figure 7:
» Data acquisition layer
» Corporate memory layer in different flavors
» Data propagation layer
» Reporting layer in different flavors

S e le c t M o d e l T e m p la te

Model Templates:

© P O T J Cancel

Figure 7 M odel Templates Available in aDSOs

aDSOs replace all the objects by taking on all of their roles. Depending on
which model template you choose, the modeling properties of the data
model will be predefined foryou. These templates control the behavior of
an aDSO and its services. Figure 8 shows the M o d e l i n g P r o p e r t i e s for an
aDSO template.

14
F e a tu re s a n d C a p a b ilitie s o f a D S O s | 2

Modeling Proper lie*

Templates Properties
type filter text
/ Activate Oata
d & Enterprise data warehouse architecture Write Change Log
t_j Data acquisition layer (including corporate memory) Keep Inbound Data, Extract from Inbound Table
fcl Corporate memory - compression capabilities Unique Oata Records
fcj Corporate memory • reporting capabilities
fed Data warehouse layer - delta calculation
Spetia (Types
fcj Data warehouse layer - data mart
d & Classic objects
□ Planning Mode
t J Standard DataStore Object Direct Update
fc) Write-optimiied DataStore Object @ All Characteristics are Key, Reporting on Union of Inbound and Active Table
fcl InfoCube
Storage Options
□ Extended Storage

Figure 8 M odelin g Properties of aDSO

M odeling Properties are predefined by the selected template. Therefore, as


shown in Figure 8, we have three checkboxes under M odeling Properties:
» Activate/Compress Data
There are three sub-checkboxes with this option:
W rite Change Log: Choose this option if you want to save delta
changes in the Change Log. This Change Log becomes the source to
extract delta changes.
Keep Inbound Data, Extract from Inbound Table: With this
option, no data is saved in the Change Log. Instead, the Inbound
Table is read directly during the extraction process when a dclta/full
extraction is required.
Unique Data Records: Select this option if you only need unique
data records with non-recurring key combinations. With this selec­
tion, processing is faster than with the other two options; however,
data aggregation is not possible.
X All Characteristics are Key, Reporting on Union of Inbound and
Active Table
As the name suggests, with this option, all of the characteristics are
included as keys. This also means that whenever a system is queried, it
looks for result set of the union of the Inbound Table and the Table of

15
F e a tu re s a n d C a p a b ilitie s o f a D S O s | 2

Active Data. With this option, the aDSO behaves more like an Info-
Cube. Similarly, the data is aggregated here.
» Ex t e n d e d tables

This option is only valid when dynamic tiering is configured in your


SAP HANA environment and for write-optimized aDSOs. Essentially,
you can move the Inbound Table of a write-optimized aDSO to the
warm data area. (Refer to the following link for more information on
hot, cold, and warm data: http://help.sap.com/saphelp_nw74/help-
data/en/f6/99e81daef24dfa84l4b4e104fd76b7/content.htm.) If you
set the E x t e n d e d t a b l e s checkbox, only the data in the persistence
layer will be saved, not the data in memory. In summary, the E x t e n d e d
tables checkbox enables you to do the following:

Make an area in SAP HANA ready for warm data, which is used in the
acquisition area and corporate memory area, without functional
restrictions.
Use SAP BW on SAP HANA in order to handle large data volumes in
the petabytes (PB) area at low costs.

O th e r Im p o rtan t Features

Other important features are worth mentioning in addition to those men­


tioned previously. These include:
» Number of key fields
aDSOs allow you to have as many as 120 key fields, which helps over­
come the limitations of creating InfoCubes just to have more than 16
key fields. (A classic DSO is limited to 16 key fields.) The key can consist
of fields, InfoObjects, or both.
» Non-cumulative key figures
With SAP BW 7.40 SP 10, if there is a valid time characteristic available,
the time characteristic is determined automatically. You can also choose
valid characteristics from the characteristics in the key, which are not
time characteristics. When a non-cumulative key figure is added, the
key figures for non-cumulative changes are also added to aDSOs.

16
F e a tu re s a n d C a p a b ilitie s o f a D S O s | 2

» Partitioning
In most cases, partitioning improves performance —for example, during
data loads with large volume. You can also use data partitioning to divide
the entire dataset of an aDSO into several smaller units that arc inde­
pendent and non-redundant. Just remember that ifyou have chosen the
All Characteristics are Key, Reporting on Union of Inbound and
Active Table option, you cannot create partitions and existing partitions
will automatically be deleted. If this option is not selected, then you can,
if required, merge existing partitions or split them into smaller ones.
X Data management
The three types of multi-temperature data in SAP BWare treated differ­
ently in the different aDSO tables. By default, the Table of Active Data
has hot/active data, while the Change Log and Inbound Table have
warm/non-active data. Depending upon the flavor chosen (selected tem­
plate), the aDSO behaves as hot, warm, or partly hot and partly warm.
» Secondary indexes
In cases of very complex lookup or when required, you can create sec­
ondary indexes for aDSOs. By default, an index is created on an active
table. In the absence of an active table, it would be created on the
Inbound Table.
aDSOs have additional features, as well. These include integrated remod­
eling of structure and type changes and the best practice LSA++ templates,
to name few.

2.2 Main Capabilities


When discussing the capabilities of aDSOs, we are referring to the
enhanced functionality available through aDSO features. In this section,
we walk through the numerous main capabilities aDSOs provide.

B etter D ata Load w ith O ptim ized Request M an a g e m e n t

The M anage UI screen provides enhanced request management capabili­


ties, which allows you to quickly navigate through large sets of requests

17
F e a tu re s a n d C a p a b ilitie s o f a D S O s | 2

and protocols from the Data Warehouse Workbench to perform manual


tasks and monitoring activities.
Request and process management for aDSOs are very close to real-time
scenarios, and they work similarly for classic objects. You can have both
(aDSOs and classic objects) in the same data flow. The enhanced request
management capabilities of aDSO have also changed the Transaction
Sequence Number by providing a New Request ID. The Transaction
Sequence Number no longer has an INT4 value; rather, the number con­
sists of a timestamp plus an automatically-generated, sequentially increas­
ing postfix. Whereas before, there was a maximum of two billion
requests, now there is no limitation. The new request management con­
cept also allows for logic and semantics to be directly extracted out of the
request, which previously was not possible.

Performance O p tim izatio n for Reporting

The type of join between the fact table and the master data table deter­
mines SAP HANA's performance and which SAP HANA engine executes
the join. Using an inner join ensures SAP HANA's optimal performance,
allowing SAP BW to push online analytical processing (OLAP) operations
to SAP HANA's calculation engine. To check whether an inner join can be
used, perform an SAP BW referential integrity check when loading or
activating the data. This check is available in classic DSOs as well via the
Create SIDs option (sometimes referred to as the BEx flag). In aDSOs, the
enhancement is done at the characteristics level. You can set this flag not
only at the InfoProvider level, but also on individual characteristics of an
aDSO. In this case, the data integrity check is only executed on the
selected characteristics.
Another enhancement that improves reporting is that an InfoCube joined
to the master data table are made via INT4 values instead of STRING val­
ues for an aDSO.
On rare occasions, ifyou have a compounded InfoObject with a high car­
dinality (e.g., OMAT_PLANT and the reports have a lot of navigational
attributes, forcing you to execute the join frequently), you will have to

18
F e a tu re s a n d C a p a b ilitie s o f a D S O s 2

check the persistency of the InfoObject SID in the aDSO table. This cre­
ates an additional column in the Table of Active Data to hold the SID,
which will be filled during data activation.

Field-Based M o d elin g and InfoO bject-Based M o d e lin g Support

aDSOs combine field-based and InfoObject-based modeling. With InfoOb-


ject-based modeling, the position of the InfoObject in the architecture
decides which features should be modeled. Traditionally, we have done a
bottom-up approach, which means if the InfoObject is used higher in the
SAP BW architecture, then features such as quality, visibility, and reusabil­
ity are taken into consideration (modeled). But in the new scenario, we also
need a top-down approach from the very beginning, so we need to con­
sider the visibility, reusability, and quality of InfoObjects from very start.
Open ODS views (introduced in SAP BW 7.40 SP 05) are new objects used
for the virtual access of external sources. Open ODS views act as SAP BW
InfoProviders. They can be integrated into CompositeProviders, serve as
data sources for BEx queries, and can be consumed by BI clients (such as
SAP BusinessObjects Analysis, edition for Microsoft Office objects).
Building an Open ODS view enables SAP BW modelers to leverage flexi­
ble integration without the need to create InfoObjects and to consume
external data easily. This approach with Open ODS is also called agile
modeling, which already has a virtual field-based approach to integrate
data without the need for InfoObjects. With aDSOs, we can do the same
for the persistence layer. This allows us to load data into SAP BWwithout
assigning InfoObjects to each and every field, while at the same time not
losing any functionality.
By using a combined approach with the Open ODSs and aDSOs, we can
integrate new data easily and in agile mode. This approach also allows us
to switch seamlessly between virtual data access and managed data per­
sistence, keeping data integrity intact.

19
F e a tu re s a n d C a p a b ilitie s o f a D S O s | 2

Eclipse-Based User Interface M o delin g

Eclipse-based UI modeling for aDSOs facilitates the modeling of all Info-


Providers of a complete end-to-end scenario in the SAP BW modeling
tools. We can model Open ODS, SAP BW queries, and CompositeProvid-
ers along with aDSOs. This is also in alignment with the mixed scenario
use cases in which we use SAP HANA Studio and the SAP BW Modeling
perspective.
When talking about "mixed scenarios" we are discussing how SAP BWon
SAP HANA leverages the full capacity of SAP HANA as a platform. This
means that not only can we create SAP BW models in the SAP HANA data­
base, but we can also create native SAP HANA models that are available
for consumption in both the SAP BW and the SAP HANA layers.
Figure 9 shows the ease that the new UI provides for handling aDSO (we
will learn more about this when we discuss how to use an aDSO in Sec­
tion 5).

a Details: U0 0 _ A D S O 1 pi § X

Fields
®s ▼ G eneral

Name:
Filter Pattern Add InfoObject

Name | InfoOb>~ Add Field


Description: | Purchase Order (EPM Demo) ✓
B £> [U00CUBE1T] Tme ▼ Id en tify
A [OCALMONTH] Calendar year/month OCALMC Add Group
A [OCALYEAR] Calendar year OCALYE/ With: | InfoOb)ect ^13 Browse...
Delete
Z i [OCALDAY] Calendar day OCALDA
▼ D ata Type
B & [U00CU8E1U] Unit Keys...
t i [OD_NW_PCURR] Order Currency OO.PJW. Data Type: |CHAP Length: |To"
d [OD.NW.PUNI] Order Unit OO.NW.
▼ P ro p e rtie s
B £> [U00CUBE11] Purchase Order
JP [OD_NW_PO] Purchase Order (EPM Demo) oo . n w B Aggregation:
B £> [U00CU6E12] Purchase order item
K [0D_NW_IPOS] Purchase Order Item (EPM Demo) OO.NW. Unit/Currency Field: I ^I
B £> (UOOCUBE13] Business Partner
Plaster Data Check: | Piaster Data Check During t |
[OD_NW_BP] Business Partner (EPM Demo) OO.NW —
B £> [U00CUBC14] Business Partner Rote Conversion exit name:
K [OD_NW_ROLE] Rote (EPM Demo) OO.NW.
B £> [U00CUB615) Product
K [OD_NW_PRID] Product ID (EPM Demo) OO.NW.
B £> [U00CUBE16] Status
[OD_NW_POLS] Order Lifecycle Status (EPM Demo) OO.PJW.
A (OD_NW_POCS] Order Confirmation Status (EPM Demo) OO.NW.
A [OD_NW_POOS] Ordering Status (EPM Demo) OO.PJW.
J T (OD_NW_POAS] Order Approval Status (EPM Demo) OO.NW.

HJ__________________________ 1 1 ]

Figure 9 New Modeling UI

20
C r e a t in g A r t if a c t s a n d L o a d in g D a ta 3

You now have a clear understanding of the various features and capabili­
ties of aDSOs. In the next section, you will learn to create all the artifacts
and load the necessary data before moving on to creating your aDSOs.

3 C re atin g A rtifa c ts and Loading D a ta

Before an InfoProvider (aDSO or otherwise) can be created and used, it is


necessary to create artifacts and load data. This section outlines the sce­
nario that forms the basis for the remainder of the E-Bite. In this scenario,
we have a manufacturing company that has a purchase order table coming
from both an SAP ERP system and a legacy (non-SAP) system. The cus­
tomer wants to simplify the SAP BW modeling landscape, getting rid of a
large number of objects to be included in the data models. Using aDSOs,
the customer can consolidate the functionality of classic DSOs, PSAs, Info-
Cubes, and HybridProviders into a single aDSO.
This section uses step-by-step instructions to create the basic structure
and artifacts to be used in the remainder of the E-Bite prior to creating our
aDSOs.

Note
The artifacts created in this section w ill be used in Section 4 as a basis for
creating the aDSOs. We need to create the artifacts here first before pro­
ceeding to the next section.

3.1 Process Steps


We will use the Enterprise Procurement Model (EPM) data for our exam­
ple, and create all the artifacts based on it. This demo data is available on
SCN for download at http://scn.sap.com/docs/DOC-31458.

21
C r e a t in g A r t if a c t s a n d L o a d in g D a ta 3

The following explains the different process steps we will follow for each
data source. In these steps, we distinguish the creation of the prerequisite
artifacts and the loading of the data into the data source:
1 Prerequisite artifact: Create a data source for purchase order Z_EPM_PO
in the SAP ERP system (source system).
2 Prerequisite artifact: Create a classic DSO for the purchase order (Z_E_
CDSO) in the SAP BW system.
3 Loading data into the data source: In the SAP BW system, fill the classic
DSO (Z_E_CDSO) with extraction from the data source (Z_EPM_PO).
4 Prerequisite artifact: Create an InfoCube for the open purchase order
(Z_EC_OPO) in SAP BW.
5 Loading data into the data source: Fill the InfoCube (Z_EC_OPO) with
open purchase order data from our classic DSO (Z_E_CDSO).
6 Prerequisite artifact: Create an SAP HANA-optimized InfoCube for open
purchase orders (DEMOCUBE).
7 Loading data into the data source: Fill the SAP HANA-optimized Info­
Cube (DEMOCUBE) with the open purchase order data from the classic
DSO (Z_E_CDSO).

Note
We w ill consume a *.csv file from the legacy system as it is, so we are not
discussing any activity for changing it in this section.

3.2 Creating a Data Source for a Purchase Order in SAP ERP


In this section we will create a data source (Z_EPM_10) for a purchase
order in the SAP ERP system. We will not discuss how to create a pur­
chase order in SAP ERP in this section. Follow these steps:
1 Go to Transaction RS02 in SAP ERP. On the M a i n t a i n G e n e r i c D a t a -
S o u r c e s screen, select T r a n s a c t i o n d a t a , enter the name of the data

source (Z_EPM_PO), and click the C r e a t e button (see Figure 10).

22
C r e a t in g A r t if a c t s a n d L o a d in g D a ta 3

DataSource Edit Goto System Help

0 RS02 ▼ « a s e s

M a in ta in G e n e ric D a ta S o u rc e s

UJ

Figure 10 Create a Data Source in the Source (SAP ERP) System

2 The next screen prompts you to provide details such as the name and
description. Enter the field values shown in Figure 11. For the V i e w /
T a b l e field, we will use Z_EPM_V_PO.

Figure 11 Fill in Details of the Data Source

23
C r e a t in g A r t if a c t s a n d L o a d in g D a ta 3

Table 2 lists the tables that are part of our Z_EPM_V_PO view.
Type Name Description
Primary SNWD_P0 Stores EPM purchase order header table infor­
mation.
Secondary SNWD_P0_I Stores EPM purchase order item table informa­
tion.
Secondary SNWD _P 0 _ SL Stores EPM purchase order schedule line table
information.
Secondary SNWD_PD Stores EPM product data table information.
Secondary SNWD_BPA Stores EPM business partner information.
Secondary SNWD_EM P LOY E E Stores EPM employee information.

Table 2 Tables o f th e View Z_EPM_V_PO

The following join conditions are linked between these tables:


» SNWD_PO_CLIENT = SNWD_PO_I-CLIENT
» SNWDJPOJ-CLIENT = SNWD_PO_SL-CLIENT
» SNWD_PO_I-CLIENT = SNWD_PD_CLIENT
» SNWD_PO-NODE_KEY = SNWD_PO_I-PARENT_KEY
» SNWD_PO_I-PRODUCT_GUID = SNWD_PD-NODE_KEY
» SNWD_PO_CLIENT = SNWD_BPA-CLIENT
» SNWD_PO-PARTNER_GUID = SNWD_BPA_NODE_KEY.
» SNWD_PO-CLIENT = SNWD_EMPLOYEES_CLIENT
» SNWD_PO-CREATED_BY = SNWD_EMPLOYEE-NODE_KEY
» SNWD_PO-CHANGED_BY = SNWD_EMPLOYEES-NODE_KEY.
Using the data source Z_EPM_PO and the view Z_EPM_V_PO, we can
retrieve the header data of the purchasing document, purchase organiza­
tion, and purchasing document delivery schedule lines, such as schedule
line number, delivery date, schedule line quantity, value of schedule line

24
C r e a t in g A r t if a c t s a n d L o a d in g D a ta 3

quantity, and so on. Z_EPM_PO also provides information about the doc­
uments that are posted referencing the purchase order, such as goods
receipts and invoices.

3.3 Creating and Loading Data for a Classic DSO in SAP BW


In this section, we will look at the steps for creating a classic DSO (Z_E_
CDSO) in an SAP BW system, and then loading the data from Z_EPM_PO
(created in the previous section) into our DSO, Z_E_CDSO.

Creating a Classic DSO in SAP BW

To create a classic DSO, follow these steps:


1 Go to Transaction RSA1 in the SAP BW system. Right-click InfoPro-
vider and select Create DataStore Object... (see Figure 12).

• (& InfoProvrief ► :
Change
• ^!nfoOb)ects * <HJs
Detete
• ^InfoSources
Display Metadata
• DataSources
Dtspiay Data Flow
• 0 Source Systems
Create InfoArea...
• ® Open Hub Oesti
Create InfoCube...
• j§. Warning Sequer
Create DataStore Object...
• | SAP hana Anal\
Create MJtiProvider...
• 8S Process Chans
Create VrtuaProvider...
Create IafoSet...
4 >
Create HybndProvider...
Admitstraticn Create Aggregation Level

Transport Come... Create Open OOS View...


Insert Characterise: as InfoProvider
Docundents______
Show Data Flow Ascendng
B1 Content

Figure 12 Create Classic DSO in Transaction RSA1

2, On the Create DataStore Object screen, provide the details shown in


Figure 13.

25
C r e a t in g A r t if a c t s a n d L o a d in g D a ta 3

Figure 13 Details for DSO to Be Created

3, Now that you've created the structure of your classic DSOryou'll add
the key fields and data fields (see Figure 14 and Figure 15) so that you
can work with these fields and also use the key fields for transforma­
tions. To add the key fields, right-click the K e y f i e l d s node and select
I n s e r t to insert the key fields shown in Figure 14. Similarly, for the data

fields, right-click the D a t a F i e l d s node and select I n s e r t to insert the


data fields shown in Figure 15.

Figure 14 Add Key Fields to DSO

26
C r e a t in g A r t if a c t s a n d L o a d in g D a ta 3

~ Lffl Data Fields


• Ordering Status (EPM Demo) OD_NW_POOS
• o rd e r Approval Status (EPM Demo) OD_NW_POAS
• Order Confirmation Status (EPM Demo] OD_NW_POCS
• Order Lifecycle Status (EPM Demo) OD_NW_POLS
• ^ Created on (EPM Demo) 0D_NW_CA
• Changed on (EPM Demo) 0D_NW_CHAT
• & Product ID (EPM Demo) 0D_NW_PRID
• Planned Delivery Date (EPM Demo) 0D_NW_DELD
• d ? Business Partner (EPM Demo) 0D_NW_BP
• Role (EPM Demo) OD_NW_ROLE
• <-SS Gross Order A m ount (EPM Demo) 0D_NW_GAMT
• N et Order A m ount (EPM Demo) 0D_NW_NAMT
• H i Taxes (Order A m ount) (EPM Demo) 0D_NW_TAMT
• Order Currency OD_NW_PCURR
• 4 ] Order Q uantity (EPM Demo) 0D_NW_PQTY
• Order Unit 0D_NW_PUNI
• Created by (EPM Demo) 0D_NW_CRB
• Changed by (EPM Demo) 0D_NW_CHB_

Figure 15 Add Data Fields to DSO

4 Finally, save and activate your classic DSO.

Loading D ata into the Classic DSO w ith D ata from Z_EPM _PO

In this section, in the SAP BW system we will fill the classic DSO (Z_E_
CDSO) with extraction data from the data source (Z_EPM_PO) which we
created in Section 3.2.
To do so, we will create a transformation so that we can fill Z_E_CDSO
with data from Z_EPM_PO. Follow these steps:
1 Right-click the classic DSO node and select Create Transformation.
2 The Create Transformation screen will appear. On this screen, enter
the field values shown in Figure 16, specifying "Z_EPM_PO" as the
DataSource.

27
C r e a t in g A r t if a c t s a n d L o a d in g D a ta 3

Figure 16 Create Transformation from the Data Source to DSO

3, Next, map the fields inside the transformation. Choose the field from
the left table (source) and drag the mouse to the target field on the right,
as shown in Figure 17. This ensures that we can read data from the
source system to the target system.
EPMPurchase Order BW362 (2.EPM.PO)
Pos^KeyjfickJ |lc<]Oes<:npt. [Data tjtnqth
I NCCE.KEY Node Key RAW 000016
2 NOOCJCEV_I NodeKey RAW 000016
3 *? NCC€_KEY_Sl NodeKey RAW 000016 0 clot tic DSO for Pureh ate Order (ZECDSO) Rule Group: Standard Group
4 NCCEJ<EY_PO NodeKey RAW 000016 Rul^Rule Name IposJkeyllnfoOfoiect IlcorjDetcrlpt. |Data length |lnti
S N0CC.KEY.6P NodeKey RAW 000016
6
J 9

NCCE_KEYY_EMPl NodeKey RAW 000016


<9 RX30.NT800 1 OLOGSYS Socrce System
£
CHAR 000010
J 9 OO.NW.PO 2 e? CO.NiV.PO Purchase Order (EPMDemo)
£
CHAR 000010 □
7 PARENT.KEYY.EMPL NodeKey RAW 000016 OO.NWJPOS PurchaseOrder Item(EPMDemo) NUMC 000010
* 1
= 3 oojiwjpcs £
8 PO ID Pir. Crd. ID CHAR 000010 00_NW_P005 4 CO_NW_POOS Orderng Status (EPMDemo) CHAR 000001
EmployeeID CHAR £ □
9 CREATED8Y 000010 CHAR
OO.NW.POAS 5 OO.NW.POAS OrderApproval Status(EPMOcfro) 000001 □
10 CREATEDAT TmeSfamo DEC 000021 £

CHAR OO.NW.POCS 6 OO.NiV.POCS Order ConfirmationStatus (EPMDemo) CHAR 000001 □


ll CHANGED BY Employee© 000010 £

12 CHANGED AT TrneStamo DEC 000021 m 00_NW_P<XS 7 OO.NW.POLS Orderliecyde Status (EPMDemo)


£
CHAR 000001 □
13 NOTE GU1D Node Key RAW 000016 a 00_NW_CA 8 OO.NW.CA Created on (EPMDemo)
£
OATS 000308
14 CURRENCYCCCC Currency CUKY 000005 00_NW_CHAT 9 OO.NiV.CHAT DATS 000008
I
I

15 GROSS AMOUNT Gross Amt. CURA 000015 = OO.NW.FR© 10 OO.NiV.PR10 Product ID(EPMOemo)
£
CHAR 000010 □
16 NET AMOUNT Net An*. CURA 00001S a 00_NW_DELD 11 CO.NiV.DELD A PlamedDe*very Date (EPMDemo) DATS 000008
17 TAX AMOUNT Tex Amt. CUM 000015 OO.NW.EP 12 OO.W.BP BuirStiSPartner (EPMDemj) NUMC 000010
£ □
18 LIFECYCLE STATUS POl/ecvde CHAR 000001 BPRole2 13 CO_NiV_ROLE Role(EPMOemo) CHAR 000003
19 APPROVAL STATUS POApproval CHAR 000001
(9 £ □
00_NW_GAMT 15 OO.NW.GAMT □ GrossOrdtr Amount (EPMDemo) CURR 000017
20 CONFIRMSTATUS POConlrmabcrt CHAR 000001
OO.NW.NAMT 16 OO.NiV.NAMT a Net Oder Amocnt (EPMDemo) CURR 000017
21 ORCCRING STATUS POOrderm CHAR 000001
22 PO ITEMPOS POItemPos CHAR 000010 - 00_NW_TAMT 17 OO.NiV.TAMT □ Taxes (Oder Amount)(EPMDerro) CURR 000017
23 NOTE GU1DI NodeKev RAW 000016 0O_NW_PCURR 18 CO_NW_PCURR £ Oder Cirrency CUKY 000305 □
24 CURRENCY CODE I Currency CUKY 000005 00_NW_PQTY 19 CO.NiV.PQTY • a Oder Quantty (EPMDemo) QUAN 000017
25 GROSS AMOUNT I Gross Amt. CURA 00001S 0O_NW_FUNl 20 CO.NiV.PUNI £ Oder Unit UNIT 000003 □
26 NET AMOUNT 1 Net Amt. CURA 000015 00_NW_CR8 21 OO.NW.CR8 £ Created by (EPMDemo) NUMC 000010 □
27 TAX AMOUNT I Tax Amt. CURA 000015 0O_NW_CHB 22 co.Niv.oe £ Changedby(EPMDemo) NUMC 000010 □
28 QUANTITY QuenUv OUAN 000013
29 QUANTITY UNIT Oty.Urtt UNIT 000003
30 DELIVERYDATE TimeStamp DEC 000021
31 PROOUCT ID Product ID CHAR 000010
32 8P 10 Bus. Part. ID CHAR 000010

Figure 17 Transformation and Field Mapping

28
C r e a t in g A r t if a c t s a n d L o a d in g D a ta 3

4 Once the fields have been mapped, save and activate the transforma­
tion.
Now we will create the relevant data transfer process (DTP) and transfer/
load the data into the classic DSO from the data source. DTP is used to
load the data from the source to the target. Follow these steps:
1 Right-click the classic DSO node and select Create Data Transfer Pro­
cess.

2 The Create Data Transfer Process screen appears. Enter the details
shown in Figure 18. Click Confirm when you have finished.
^ @ □ Classic DSO for Purchae Orders(Demo) Z_E_CDSO
.nnnnnl

Figure 18 Create DTP for th e Transformation

3 Now you are ready to execute and load data into the DSO. To do this,
execute the DTP for the DSO. Enter the details shown in Figure 19 and
then click Execute.
When the execution is complete, you can see the data in the DSO Z_E_
CDSO (see Figure 20).

29
C r e a t in g A r t if a c t s a n d L o a d in g D a ta 3

Technical Request Status Request status is set to 'green’ if wamngs occlt


Overal Status of Request Set Overall Status Automatically ▼
Automaticaly Repeat Red Requests in Process Chains

Processing Mcxie Parallel Extraction and Processing ~ Execute


Program Flow Execute in Background
^ Z_EPM_PO / T90CLNT090 -> Z_E_CDSO
~ ^ Start Main Background Process
• Prepare for Extraction
*' Data Package Loop
~ <£ Start Parallel Background Process
• Fn Extraction DataSource EPMPurchase Order BW362 Change 8reakpoants |
• ^Filter
• ^ Fiter Out New Records with the Same Key Ichange 8reakponts I
• [Xj RSDS Z_EPM_PO T90CLNT090 -> ODSO Z_E_CDS«IChange Breakpoints 1
• © Update to DataStore Object Z_E_CDSO [Change Breakpoints |

Figure 19 Execute DTP

"Z _ E _ C D S O ”, L is t o u t p u t

QS ° § & £ ) (£ ) Q i H 4 5 ( 2

...W_PCURR Order Unit OD_NW_GAMT OD._NW_NAMT Order Quantity Taxes (Order)


'EUR nEA 213,96 179,80 2 34,16
EUR EA 5.471,62 4.598,00 2 873,62
EUR EA 1.187,62 998,00 2 189,62
EUR EA 1.428,00 1.200,00 2 228,00
EUR EA 1.116,22 938,00 2 178,22
EUR EA 71,38 59,98 2 11,40
EUR EA 183,26 154,00 2 29,26
EUR EA 1.070,98 899,98 2 171,00
EUR EA 1.116,22 938,00 2 178,22
EUR EA 71,38 59,98 2 11,40
EUR EA 190,16 159,80 2 30,36
EUR EA 1.187,62 998,00 2 189,62
EUR EA 5.471,62 4.598,00 2 873,62
EUR EA 1.428,00 1.200,00 2 228,00
EUR EA 1.116,22 938,00 2 178,22
EUR EA 71,38 59,98 2 11,40
EUR EA 183,26 154,00 2 29,26
EUR EA 1.070,98 899,98 2 171,00
EUR EA 61,88 52,00 2 9,88
EUR EA 213,96 179,80 2 34,16
EUR EA 21,42 18,00 2 3,42
EUR EA 3.303,44 2.776,00 2 527,44
EUR EA 283,22 238,00 2 45,22
EUR EA 3.303,44 2.776,00 2 527,44
EUR EA 830,62 698,00 2 132,62
EUR EA 16,66 14,00 2 2,66
EUR EA 16,66 14,00 2 2,66

Figure 20 After Execution of DTP, Data Is Present in DSO

30
C r e a t in g A r t if a c t s a n d L o a d in g D a ta 3

3.4 Creating and Loading Data for an InfoCube on an Open


Purchase Order in SAP BW
In this section, we will create an InfoCube for an open purchase order (Z_
EC_OPO) in the SAP BW system. We will then fill Z_EC_OPO with data
from our classic DSO (Z_E_CDSO).

Creating an InfoCube on an Open Purchase O rder in SAP BW

Follow these steps to create an InfoCube on an open purchase order in


SAP BW:
1 Follow the same steps you did for Transaction RSA1 in the Creating a
Classic DSO in SAP BW section.
2 Provide the key figures for the Z_EC_OPO, as shown in Figure 21.
InfoCube Techn. name / val... F... 0. App... Dat...
Infocube Open Purchase Orders Z EC OPO
^ <§> O bject Information
• il Version O In Process | -Q \

• H i Save © Saved
• E l Revised Version [ s i Active Version
• El O bject Status (8* Active, executable
► S Settings
► CD Dimensions
► Q ] Navigation A ttributes
0 5 Key Figures
• <-i| Gross Order A m ount (EPMOD_NW_GAMT CURR i
• N et Order A m ount (EPM COD_NW_NAMT CURR I
• 4 l Order Q uantity (EPM Dem 0D_NW_PQTY QUAN i
• 4 i Taxes (Order A m ount) (EIOD_NW_TAMT CURR i

Figure 21 Create InfoCube Open Purchase Orders (Z_EC_OPO)

3. Next, add the data fields by right-clicking on the Data Field node and
selecting Insert to enter the fields shown in Figure 22.

31
C r e a t in g A r t if a c t s a n d L o a d in g D a ta 3

~ Ef? Dimensions
► Data Package Z_EC_OPOP
► Time Z_EC_OPOT
► 4^ Unit Z_EC_OPOU
► Purchase Order Z_EC_0P01
► Purchase order item Z_EC_0P02
► Business Partner Z EC QPQ3
► Business Partner Role Z_EC_0P04
► Product Z_EC_0P05
► Status Z_EC_0P06
► Planned Delvery Date Z_EC_0P07
► Created By Z_EC_0P08
► Changed by Z_EC_0P09
► Changed on Z_EC_OPOA
► Created On Z EC OPQB
► Source System Z_EC_OPOC
► CD Navigation Attributes
► CD Key Figures

Figure 22 Add Data Fields to InfoCube Open Purchase Orders (Z_EC_OPO)

Loading D ata into the InfoCube w ith D ata from the Classic DSO

We will now load the open purchase order data from the classic DSO (Z_
E_CDSO) into the InfoCube (Z_EC_OPO).
Follow these steps:
1 Create the transformation to fill the InfoCube (Z_EC_OPO) with data
from the classic DSO (Z_E_CDSO) following the steps shown in Sec­
tion 3.3. Since the new InfoCube you created does not have any data
yet, you will need to get transformed data. The transformation shown
in Figure 23 will make sure that you only bring what you want.
^ o ° C§} Q Start Routine Q End Routine tea & e?

(fa| Transformation 00S0 Z_E_CDS0 -> Q J B E Z_EC_OPO 1 QSAP HANAExecution Possible


Source @ classic DSO fa Purchase Orcter (Z_E_CDS0)
Target Infocube Open Purchase Orders (Z_EC_OPO)
Version □ Active ^ © Saved
Active Version Pd Executable HI Edited Version
I5I|G U |€U 100% -IIS I | LaJ 1 [ s i t e ] [SRuteGroup Rule Group 1 LoRiie ] \ & \ \ & \ |C?)||PB| |(D)

Figure 23 Create Transformation from Z_E_CDSO to Z_EC_OPO

2, When you save the transformation, a screen appears on which you can
map the fields from the transformation. Choose the field from the left

32
C r e a t in g A r t if a c t s a n d L o a d in g D a ta | 3

table (source) and drag the mouse to the target field on the right, as
shown in Figure 24.
O ( la ssie DSO o r Purchaser O rder(D em o) ( 2 _ l_ t D 5 0 ) In fo c u b e O pen P u r c h a s e O rd e rs (2_CC_OPO) R ule G roup: S ta n d a rd G roup
Posi|Keyj Inf oO b feet jlco jo e scr ip t. [D ata t jln g t h R ule N am e lP o s iir e y ’lnfoOb»e<t |l« ^ D e -sc rip t. i-r.nsfrm I
l (XOGSYS £ Source System CHAR 000010 CO_NW_GAHT 1 OO.NW.GAMT a Gross O d er Amount (EPM Demo) CURR 000017
2 CD_NW_P0 J3 Purchase Order (EPM O w e ) CHAR 000010 2 a

1
0O_NW_NAMT CO_NW_NAMT 000017

1
1
CURR

i
3 CO.N WJPOS fig Purchase Order Item (EPM Demo) NUMC 000010 0O_MW_PQTY 3 CO_NW_PQTY a Order Quantity (EPM Demo) QUAN 000017
4 CD_NW_P005 J P Ordeeng Status (EPM Demo) CHAR 000001 0O_NW_TAMT 4 CO_NW_TAMT a T ares (O d e r Amount) (EPM Demo) CIRR 000017
5 CO_NW_POAS fig Order Aeproval Status (EPM Demo) CHAR 000001 OOJAV.PO 7 *? o o jt« j> o Purchase Order (EPM Demo) CHAR 000010 □
£
6 C D JfW JX X S £ O d e r Confanaticn s ta tu s (EPM Demo) CHAR 000031 CO_NW_BP 8 J?
0O_WT_BP £ e u cn e ts Partner (EPM Demo) NUMC 000010 □
7 cojvw.pcts £ O d e r ife c y d e Statu* (EPM Derm) CHAR 000001 0O_WV_ROlE 9 CO_NW_RCtE Role (EPM Demo) CHAR 000003 □
J9 £
8 CO_NW_CA fig C reated on (EPM Derm) DATS 000038 OO.NW.PRC 10 J 9 COJ(W_PR10 Prodjct ID (EPM Oemo) CHAR 000010 □
9 CO.NW.CHAT 4 " Changed on (EPM Demo) DATS 000038 OOJMTJXID COJNVJ3EID Planned DeAvery Date (EPM Oemo) OATS 000008
11 J 9 £
10 C0_NW_PR1D 4 " P ro d u ct® (EPM Demo) CHAR 000010 OO_NW_CMAT 12 CO_NW_CHAT f i g Changed on (EPM Oemo) DATS cooooe
JV
11 COJ4WJ3EID £ M amed DeAvery Date (EPM Demo) OATS 000038 0O_NW_CA 13 .V
CO_NW_CA £ C reated on (EPM Demo) OATS 000008
CO.WW.BP 4 8 Business Partner (EPM Oemo) num : 000010
12 OCAIMONTH 14 0CAIMCWTH © Calendar Year/Month MJMC 000006 □
13 CO_NW_RCtE £ Pete (EPM Oemo) CHAR 000033 OCAIYEAR 15 .V 0CAEYEAA © Calendar Year NUMC 000004
H CRECCRCMOC* ^|H 6W Delta fYocess: Update Mode CHAR 000031 0CAU3AY 16 0CAU3AY © Calendar Day DATS 000008
15 CD.NW.GAMT Gross O d er Amount (EPM Demo) CURR 000017 CO.NW.POtS 17 J9 co_Nw_pas fie Order Ifecyde Status(EPMDemo) CHAR 000001 u
16 CDJ4WJ4AMT .0 f**t O d er A mowt (EPM Demo) CURA 000017 OD_WV_POCS 18 J9 CO_NW_POCS £ Order CerfrmabonStatus(EPMDemo) CHAR 000001 □
17 CO_NW_TAMT .0 Taxes (Order Amomt) (EPM Demo) CURR 000017 CQNWPQQ5 1? A CQNWPQQS £ C*-SenngSatw(EPMDemg) QHAR «WI □
18 OO.WW.PCURR £ Order Currency CUKY 000035 0O_f*V_POAS 20 OO.NW.POAS £ Order ApprovalStatus(EPMDemo) CHAR 000001 □
19 CO_NW_PQTY a O d e r Quantity (EPM Oemo) QUAN 000017 OO.NWJPOS 21 A
CO.NWJPOS £ PurchaseOrder Rem(EPMDemo) NUMC 000010
20 CO_fVW_FUf(I fig- O d e r Ur* UNIT 000033 0D_NW_CR8 22 CO_Wr_CR8 £ Createdby(EPMDemo) NUMC 000010 □
21 CO_f/iV_CRB fig C reated by (EPM Demo) num : 000010 CO.NW.CWB 23 0O_NW_Ct* £ Changedby(EPMDemo) NUMC 000010 □
22 co_ n w _ o « £ Changed by (EPM Demo) NUMC 000010 (XOGSYS 24 (XOGSYS CHAR 000010

1
i
£

Figure 2 4 Map the Fields in Transformation from Z_E_CDSO to Z_EC_OPO

3 Save and activate the transformation.


4 Generate the DTP for this transformation as shown in the Loading Data
into the Classic DSO with Data from Z_EPM_PO section.

3,5 Creating an SAP HANA-Optimized InfoCube for Classic


DSO Data
In this section, we will create an SAP HANA-optimized InfoCube (DEMO-
CUBE) for the classic DSO data. Ifyou have an SAP BW on SAP HANA sys­
tem, all the new InfoCubes that you will create are automatically SAP
HANA-optimized.
The handling of dimensions in SAP HANA-optimized InfoCubes is differ­
ent than in non-optimized InfoCubes. SAP HANA allows you to assign
characteristics and key figures to dimensions. The SAP HANA system does
not create dimension tables except from package dimensions. This also
means that SIDs are written directly to the fact table and dimension keys
are omitted. This all leads to better performance during the data load.

33
C r e a t in g A r t if a c t s a n d L o a d in g D a ta 3

Creating an SAP H A N A -O ptim ized InfoCube

Follow these steps to create the SAP HANA-optimized InfoCube:


1 Go to Transaction RSA1 in the SAP BW system; double-click the Info­
Cube icon or press Ictr: l+ITsI (see Figure 25).

Figure 25 Create SAP HANA-Optimized InfoCube

2 On the Create InfoCube screen, provide the details shown in Figure 26.
& Create InfoCube
Create InfoCube

Figure 2 6 Fill in Details for DEMOCUBE

3 Add the key figures by right-clicking on the Key Figures node and
selecting Insert for Gross Order Amount (EPM Demo), Net Order

34
C r e a t in g A r t if a c t s a n d L o a d in g D a ta 3

Amount (EPM Demo), Order Quantity (EPM Demo), and Taxes


(Order Amount) (EPM Demo) fields.
Go to Transaction RSA1 and search for your DEMOCUBE InfoCube. On
the screen, the icon to the left of the DEMOCUBE in Figure 27 tells us
that this InfoCube is now SAP HANA-optimized.
DEMOGJBE......

Figure 27 SAP HANA-O ptim ized InfoCube Is Shown w ith D otted Lines

Loading D ata into an SAP H A N A -O ptim ized InfoCube w ith D ata from
the Classic DSO

In this section, we will fill the SAP HANA-optimized InfoCube (DEMO­


CUBE) with the open purchase order data from the classic DSO (Z_E_
CDSO). Follow these steps:
1 Create the transformation, as demonstrated in the Loading Data into
the Classic DSO with Data from Z_EPM_PO section, with the informa­
tion shown in Figure 28.

Figure 28 Create SAP HANA-O ptimized InfoCube Transformation

2. Map the fields as demonstrated in the Loading Data into the Classic
DSO with Data from Z_EPM_PO section to the fields displayed in Fig­
ure 29.

35
C r e a t in g A r t if a c t s a n d L o a d in g D a ta | 3

Q Cla**tc lyso for Pure t o e O rder*(Dem o) (Z_E_CDSO) (j HAhA Uptinw*ed Open Pure have order* (OtMOtUBt) Rule Oroop: Standard broup
t o n ie lPo*iK ey|ln(oO b|e<t ;ltoijoe*crtpt. D ata l e n g t h lln ti
1 JZ OlOGSYS 4 Source System CHAR 000010
~\ r m
CO.NW.GAMT 1 OO.NiV.GAMT a Grot* Order Amount (EPM Demo) CURR 000017
2 OOjNW_PO
£ Purchase Order (EPM Demo) CHAR 000010
-V . r - CO.MW.NAMT 2 OO.Nr/.NAMT a Net Order Amount (EPM Demo) CURA 000017
3 JZ ODjNVVJPOS £ Furchase Order Item (CPM Demo) MUMC 000010 CO_NW.P<)TY 3 CO_NiV_PQTY a Order Quanbty (EPM Demo) qtU N 000017
-t \ \ u r -
4 OOJNW.POCS £ Orderrv; Statu* (EPM Oemo) CHAR 000001 0D_NW_TAMT 4 OO.MA'.TAMT ■a Ta.e* (Order Amcnr*) (EPM Demo) CURA 000017
5 OOjNV/POAS £ Order Apprcrval Status (EPM Demo) CHAR 000001
A \ CO_NW_PO 7 CO.MtfPO £ Purchase Order (EPM Demo) CHAP 000010 □
JZ
6 oo_*w _p o cs £ Ord»r C or/rm aten Statu* (EPM O«rro) CHAR 000001 CO_MW_EP> 8 OO.MAt.BP £ Dutne** Partner (EPM Oemo) NUHC OOOOIO □
JZ
7 0O_AW_P<X.S £ C*de» LfecycW Statu* (EPM 0«mo) CHAR 000001 CD.NW.RCtE 9 JZ CO_M*'_R<XE £ Role (EPM Demo) CHAR OOOOC3 □
8 OOjMW.CA £ Created en (EPM Oemo) DATS 000008
4 / I f 0D_NW_PR1D 10 jz
0O_NAr_PRK) £ Product ID (EPM Demo) CHAP 000010 □
9 OOjMW.CHAT £ Changed on (EPM Oemo) DATS 000008 OO.NWJJEID 11 jz OO.MA7_C€ID £ Flamed DeAvery Date (EPM Demo) OATS 000008
10 0O_W/_PPtt> £ Froduet ID (EPM Demo) CHAR 000010 CO_NW_CHAT 12 j z OOJW.CHAT £ Champed en (EPM Demo) OATS OOOOC8
11 QOJWSClD £ Flamed Oefrrery Date (EPM Demo) DATS 000008 CO_MW_CA 13 jz
CO_NiV_CA £ Created on (EPM Demo) OATS ooooce
12 OO.AW.BP £ Eusne** Partner (EPM D ew ) MUMC 000010 OCAtMONTH 14 jz
OCALMCWTM © Calendar yeer/nonth NUMC 0000 C6

13 OOjMW.ROtE £ Role (EPM Demo) CHAR 000003 OCAAYEAR 15 * ? OCAIYEAR © Calendar year NUHC 000004
14 ORCCORCMOOC £ e w De*a Proce**: update Mode CHAR 000001 OCAlDAr 16 j z OCALOAY © Calendar day OATS ooooce
15 0O_«W_<iA#4T 0 Of0** Order A irnxrt (EPM Demo) CURR 000017 J l a CO_NW_P<XS 17 J Z CO_Ntf_PClS £ Order tfec y d e Status ( efm Demo) CHAR 000001 □
16 0 0 JWJW'l 0 Net Order Amount (EPM Cemo) CURR 000017 0D_NW_POCS 18 J Z CO_NA7_POCS £ Order C o rtrm tto n Statu* (EPM Dems) CHAR 000001 □
17 ODJNW_TAMT a Ta»e* (Order Amount) (EPM Demo) CURR 000017 CD_NW_PO05 19 J Z CO_NiV_POOS £ Ordering Statu* (EPM Demo) CHAR 00000! □
£ CUKY 1 \ f CHAR □
18 OOjMW.PCUBfi Order Currency 000005
J W - CO_NW_POAS 20 J Z OO.IW.POAS £ Order Approval Statu* (EPM Demo) 000001
19 OOjXW_PQTY a O d er O jentfty (EPM Demo) QUAW 000017 CDJIWJPOS 21 J Z O OJM/JPOS £ Purchate Order Item (EPM Demo) NUMC 000010

11
20 0O_WW_PONl A Crd-r Unit UMT 000003 0D_NW_CRB 22 J Z ooyw _C R 8 £ Created by (EPM Oerro) NUMC 000010 □
21 00_#AV_CR8 £ Created by (EPM Demo) MUMC 000010
—’—" n“ GD_NW_CH8 23 J Z OO.MAt.O* £ Champed by (EPM Demo) NUMC 000010 □
22 O O J W .O * £ Changed by (EPM Demo) MUMC 000010 ------------' W - (XOOSYS 24 JZ OLOGSYS 41 Soufce Syttem CHAR 000010

Figure 29 Field M apping in Transformation

3, Create the DTP and load the data with the information shown in Fig­
ure 30 by right-clicking on the SAP HANA-optimized InfoCube and
selecting Create Data Transfer Process. Click Confirm to continue.

Figure 3 0 Create DTP for SAP HANA-O ptim ized DSO

36
C r e a t in g A r t if a c t s a n d L o a d in g D a ta 3

When the data is loaded in the SAP HANA-optimized InfoCube, the


"DemoCube", List output page appears (see Figure 31).

’DEMOCUBE", L ist o u tp u t
§0 H, W ¥ H £ ) Ga Q* H =3 ■fa m

...W_PCURROrder Unit 0D_NW_GAMT 0D_NW_NAMT Order Quantity Taxes (Order)


'EUR
L j EA 3.303,44 2.776,00 2 527,44
EUR EA 3.303,44 2.776,00 2 527,44
EUR EA 16,66 14,00 2 2,66
EUR EA 16,66 14,00 2 2,66
EUR EA 59.500,00 50.000,00 2 9.500,00
EUR EA 404,60 340,00 2 64,60
EUR EA 3.303,44 2.776,00 2 527,44
EUR EA 3.303,44 2.776,00 2 527,44
EUR EA 3.303,44 2.776,00 2 527,44
EUR EA 3.303,44 2.776,00 2 527,44
EUR EA 3.303,44 2.776,00 2 527,44
EUR EA 3.303,44 2.776,00 2 527,44

Figure 31 Data Loaded in SAP HANA-O ptimized InfoCube

Go to Transaction LISTSCHEMA and review the InfoCube data model


and compare it with data model in the SAP BW schema in SAP HANA
Studio.
Call u p sch em a view er fo r In fo C ubes
iKi] |3] 0 R o w Q Subtree HU <&*

DEMOCUBE

U /BIC/FDEM OCUBE

■CS /BIC/DDEHOCUBEP D a ta P ack a g e


■GH /BIC/DDEHOCUBET T in e
/BIC/DDEHOCUBEU U n it
CS /BIC/DD EH 0CU BE1 P u rc h a se O rd er
/BIC/D D EH 0CU BE2 P u rc h a s e o r d e r ite m
/BIC/D D EH 0CU BE3 B u s in e s s P a rtn e r
CS /B IC /D D EH 0C U B E4 B u s in e s s P a rtn e r R ol
■00 /BIC/D D EH 0CU BE5 P ro d u c t
tS /BIC/DD EH 0CU BE6 S ta tu s
CS /BIC/D D EH 0CU BE7 P la n n e d D e li v e r y D a t
CS /BIC/D D EH 0CU BE8 C r e a t e d By
GE) /BIC/D D EH 0CU BE9 C hanged by
•CB /BIC/DDEHOCUBEA C hanged on
/BIC/DDEHOCUBEB C r e a t e d On

Figure 32 Transaction LISTSCHEMA to See the InfoCube Data M od el

37
C r e a t in g A r t if a c t s a n d L o a d in g D a ta | 3

In SAP HANA Studio, the fact table is displayed as shown in Figure 33.
Table Name: Schema: Type:
/8IC/FDEMOCUBE SAPCIA ~ \Z \ Column Store

Columns Indexes Further Properties Runtime Information

Name SQL Data Type Di... Column Store Data Type Key Not Null Default Comment
1 KEY.DEMOCUBEP INTEGER INT X 0
2 SID.OCALMONTH INTEGER INT X 0
3 SID.OCALYEAR INTEGER INT X 0
4 SIO.OCALOAY INTEGER INT X 0
5 SID.OD.NY/.PCURR INTEGER INT X 0
6 SID.OD.NY/.PUNI INTEGER INT X 0
7 SID 0D NW PO INTEGER INT X 0
8 SID.OD.NY/.BP INTEGER INT X 0
9 SID.OD_NW.ROLE INTEGER INT X 0
10 SID.0D.NY/_PRID INTEGER INT X 0
11 SID.0D.NY/.DELD INTEGER INT X 0
12 SID.0D.NY/.C HAT INTEGER INT X 0
•3 SID_0D.NW.CA INTEGER INT X 0
14 SID OP NW POLS INTEGER INT X 0
15 SID.OD.NW.POCS INTEGER INT X 0
16 SID.OD_NW.POOS INTEGER INT X 0
17 SID.OD_NW.POAS INTEGER INT X 0
18 SID.OD_NW.IPOS INTEGER INT X 0
19 SID.OD_NW.CRB INTEGER INT X 0
20 SID OP NY/ CHB INTEGER INT X 0
21 D.NW.GAMT DECIMAL 17.2 FIXED X 0

Figure 33 Fact Table in SAP HANA Studio

5 Notice that all the DTPs have a checkbox called SAP HANA Execution.
The SAP HANA Execution checkbox is grayed out in this case. How­
ever, next to it there is another button: Check Availability (see Figure
34). Click the button.

Figure 3 4 SAP HANA Execution Checkbox in DTPs

When you click the button, the message shown in Figure 35 appears.

38
C r e a t in g A r t if a c t s a n d L o a d in g D a ta 3

Figure 3 5 Error W hile Running SAP HANA Execution Availability in DTPs

If your SAP BW system runs on an SAP HANA database, it is possible in


certain cases to use the DTP with the processing type SAP HANA Execu­
tion. By executing in the SAP HANA database, you can obtain better per­
formance when processing the transformation of the DTP.
The following are important details to keep in mind when running the
SAP HANA Execution processing mode:
» If the DTP check finds that all transformations can be executed in SAP
HANA, the flag in the Data Transfer Process M aintenance screen is
input-ready, and you can set the flag if the prerequisites for this are met
in the DTP. If this is already the case during creation, the flag is set by
default.
» The DTP must be processed with the SAP HANA Execution processing
type if you are using an ABAP Managed Database Procedure in one of
the transformations for the DTP. In this case, the flag is set in the Data
Transfer Process Maintenance screen and is not input-ready. SAP
HANA Execution is therefore set.
» The DTP cannot be processed with processing type SAP HANA Execu­
tion if you are using an ABAP routine in one of the transformations for
the DTP. In this case, the flag is set and not input-ready in the Data
Transfer Process M aintenance screen, and the processing type is set
to be executed on the ABAP server.
We have successfully created the building blocks for our aDSOs. In next
section, we will create and operate our aDSOs.

39
C r e a t in g a n d U s in g a D S O s 4

4 C re atin g and U sing aD SO s

In previous sections we discussed the features of aDSOs and the process


of creating artifacts and loading data. In this section, we show you how to
create and use an aDSO that contains actual cost data from a document-
level cost center in an SAP source system using the SAP BW Modeling
perspective of SAP HANA Studio.
This section details the practical aspects of creating and handling aDSOs.

Important!
In this section, we reference the scenarios that we created in Section 3. We
w ill use the artifacts Z_EPM_PO, Z_E_CDSO, Z_EC_OPO, and DEMOCUBE
as needed.

4.1 Creating New aDSOs


In this section, we will look at how to create three different aDSOs and
use them as templates:
» InfoCube
» Classic DSO
>5Write-optimized aDSO
After we walk through the creation process for these aDSOs, we will dis­
cuss the processes of creating field groups and assigning InfoObjects for
aDSos.

Creating an InfoCube-Based aDSO

The first aDSO we will create is an InfoCube-based aDSO using the Info-
Cube created in Section 3.1. We will use all the artifacts that we created in
Section 3 as well. Proceed with the following steps:

40
C r e a t in g a n d U s in g a D S O s | 4

1, Log on to the SAP BW Modeling perspective of SAP HANA Studio.


2, Right-click the development folder (the placeholder where you want all
your development work to be saved, for example, we have used a sep­
arate demo folder [OD_NW_DEMO], but you can name it as per your
project) and select New • DataStore Object (advanced) (see Figure 36).
^ Back End Favorites
---------------------------------------- ip -15 5

^ Favorites
jft InfoProviders
E) O B [OBW] Business Information Warehouse
3 O B [/IMO/BCT] SAP HANA-optimized Business Content
............. ................ .......IV

■J iU JJL LVJ
New ►! Sf DataStore Object (advanced) 1
j $ (25 [EPM.
Go Into ggj CompositeProvider
• & ( 3 [EPM:
E3 £> InfoC Open £*1 Open ODS View
| 0 Quer
£► Get Where-Used List...
& } & InfoC
1 (i) £> MultiP Refresh F5
l-R-Ort t **

Figure 3 6 Create aDSO Based on InfoCube

3 On the New DataStore Object (advanced) screen, provide the BW


Project, InfoArea, Name (of your aDSO), and Description. In our
example, the name of our aDSO is INFADSO. In the Create from Tem­
plate section, select InfoProvider and choose DEMOCUBE, which we
created in Section 3, Creating an SAP HANA-Optimized InfoCube (see
Figure 37).
4 When you click Finish, the aDSO is created but it is inactive, as shown
by the inactive sign (see Figure 38). To activate the aDSO, click the Acti­
vate button at the top of the General: INFOADSO screen.

41
C r e a t in g a n d U s in g a D S O s 4

Figure 37 Fill in Details and C hoose InfoProvider as Tem plate

!jp 3 >' ; (0 - ^ 0 & P v t ? . -


|Qwck ACCCSS

[CIA] INFADSO S3

$ 3 General: INFADSO

Figure 3 8 A ctivate aDSO

When the aDSO has been activated sucessfully, the inactive icon disap­
pears (see Figure 39).

42
C r e a t in g a n d U s in g a D S O s 4

© [CIA] INFADSO X

t=J General: INFADSO

Figure 3 9 Activated aDSO w ith Inactive Icon Removed

5 With the InfoCube-based aDSO activated, go back to SAP GUI (in the
SAP BW backend system) and create a data flow from the existing Z_E_
CDSO (classic DSO for purchase order; see Section 3, Creating a Classic
DSO in SAP BW) to your new InfoCube-based aDSO (INFADSO). Make
a copy of the existing transformation between the Z_E_CDSO and the
DEMOCUBE (SAP HANA-optimized InfoCube for a purchase order; see
Section 3, Creating an SAP HANA-Optimized InfoCube for Classic DSO
Data) as a template by right-clicking ODSO Z_E_CDSO -> CUBE
DEMOCUBE and selecting C o p y .
6 On the C o p y T r a n s f o r m a t i o n screen, in the T a r g e t o f t h e T r a n s f o r ­
m a t i o n section, select D a t a S t o r e O b j e c t ( a d v a n c e d ) in the O b j e c t

T y p e field, and provide the name of the new aDSO (INFADSO) in the

N a m e field. In the S o u r c e o f t h e T r a n s f o r m a t i o n section, select

D a t a S t o r e O b j e c t ( c l a s s i c ) in the O b j e c t T y p e and enter your classic

DSO for purchase orders (Z_E_CDSO) in the N a m e field. Click the C o n ­


f i r m button (see Figure 40).

Figure 4 0 Mark Target o f Transformation as N ew ly Created aDSO

43
C r e a t in g a n d U s in g a D S O s | 4

Note
There are tw o ways to create a transformation: creating one from scratch or
copying from an existing transformation. In this example, we are making a
copy of an existing transformation. Section 3 showed you how to create a
transformation from scratch.

The transformation mapping should look like Figure 41.


0 Classic DSO lor Purchase Order* (Z_E_CDSO)
0 ADSO b a r d o n P u r c h a s e o r d e r InfoC ube Z_E_CDSO (INF ADSO) R ule G roup: S ta n d a rd G ro
P oorer Infotltoject Ilco^Dcscnpt. [Data t jlngth
Rule Rule N am e PosrlK eyjlnfoO blect [ico ^ D esc n p t. |D e ta t j l n g t h |lnt<
l aOGSYS Source System CHAR 000010
2 0O_W*_PO fit Pcxchase Order (EPM Demo) CHAR 000010
- 0O_NW_PO 3 19 0O_NW_PO £ Purchase O d er (EPM Demo) CHAR 000010 U
3 ,9 C O .fW JP O S Purchase Crder Item (EPM Demo) MUMC 000010
0O_NW_R<X£ 4 19 0O_NW_R<X£ £ Rote (EPM Demo) CHAR 000003 □
0O_NW_BP 5 19 0O_MW_8P Busness Partner (EPM Demo) nlm : 000010 u
4 o o jw _ p o o s fi O rdem g Status (EPM Demo) CHAR 000001
5 CO.NW.POAS Order Approval Status (EPM Demo) CHAR 000001
OO.MW.PRID 6
19 OO.MW.PRID £ Product ID (EPM Oemo) CHAR 000010 □
0O_NW_CClD 7 19 0O_NW_C€lD £ Planned Detvery Date (EPM Demo) DATS oooooe
6 Q0JKV_p0CS Order ConftrmWcn Status (EPM D ero ) CHAR 000001

7 00_MW_P<XS 4 Order Ife ey d e Status (EPM Demo) CHAR 000001


= OO.NW.OiAT 8
<1 00_NW_CHAT £ Changed on (EPM Demo) DATS 000008

= 0O_NW_CA 9 19 00_NW_CA 4 1 O e a te d on (EPM Demo) DATS oooooe


8 O O JW .C A fi Creeled c n (EPM Oemo) OATS 000008
0 OCALMONTH 10 19 OCALMONTH 0 Calendar year/n o rth MUMC 000006
9 0O_W*V_CHAT 4 Changed on (EPM Oemo) DATS 000008
© OCAUYEAR 11 19 OCALYEAR © Calendar year M K oooooa
10 00_N«V_PR1D fi P ro d u ct® (EPM Oemo) CHAR 000010
0 OCALDAY 12 19 OCALDAY © Calendar day DATS oooooe
OOJtWJXLD fi
11
12 00_W-V_BP
Ptamed De*ve»y Date (EPM Demo)
3 usness Partner (EPM Demo)
DATS 000000

MUMC 000010
s -
OO.MWJOCS
OD_WiV_POCS
13 19 oo_Nw_pots
14 .9 0O_NW_POCS
£ O d e r Lf ecyde Status (CPM Demo)
O d e r C crtrm abon Status (EPM Demo)
CHAR
CHAR
000001
000001


13 O O J*V JtO tE £ R de (EPM Demo) Char 000003
- OO.NW_POOS IS ,9 OO.NW_POOS £ O d c r n g Status (EPM Demo) CHAR 000001 □
14 Ofi£CORCMCC€ £ 3W De*a Process; Update Mods CHAR 000001
16 19 OO.NW.PQAS

1
<5

I
<»_NW_POA$ CHAR 000001 □
IS OO.fW.GAMT Q Cross Order Amount (EPM Demo) CURR 000017
OO.MWJPOS 17 19 0O_MWJPOS £ Purchase O d er Rem (EPM Oemo) MLfK 000010
16 CO_W*V_NftMT .0 Met Order Amount (EPM Deere) CURR 000017
- 00_NW_CRB 18 ,9 0O_NW_CR8 £ C reated by (EPM Demo) mum : 000010 □
17 OOJM'.TflMT Q Taxes (Order Amount) (EPM Oemo) CURR 000017
= 0D_NW_O« 19 19 00_N W _0« £ Changed by (EPM Oemo) MUMC 000010 u
18 OO.NSV.PCURR £- Order Currency CUKY coooos
= <»_NW_GAMT 21 OO.MW.GAMT •a Gross O d er Arrccnt (EPM Demo) CURR 000017
19 00_fW/_PQTY Q Order Quantity (EPM Demo) QUAN 000017
- 0O_NW_MAMT 22 0O_NW_NAMT a Met O d er Amount (EPM Demo) CURR 000017
20 C0_W*V_PUN1 £ Order Ur* UMT C00003
= OO.hW _PQTY 23 OO.HW_PQTY •0 O d e r Q u a rtty (EPM Demo) QUAN 000017
21 CO_NW_CRB £ Created by (EPM Oemo) MUMC 000010
0O_KW_TAMT 24 00_MW_TAMT ■0 Taxes (O d e r Amount) (EPM Demo) CURR 000017
22 O O J W .O * Changed by (EPM Oemo) MUMC 000010

Figure 41 M apping in Transformation

Once the transformation is created with the right mapping, our next step
is to create the DTP in the SAP GUI (in the SAP BW backend system) and
load the data into the new aDSO (INFADSO). We can then evaluate the
data model in SAP HANA Studio.
The steps for creating a DTP here are the same as with traditional BI data
and SAP BW. Create a DTP for the transformation created previously and
keep all the default settings. Proceed with the following steps:
1 Right-click the D a t a T r a n sfer P ro cess folder and select C r e a t e D ata

T r a n sf e r P r o c e ss....

44
C r e a t in g a n d U s in g a D S O s 4

2, On the Create Data Transfer Process screen, you can change the
name of the DTP. However, leave the default settings as they are (see
Figure 42). Click the Confirm button.

Figure 4 2 Finalize DTP

3, Now load the data via DTP. To do so, double-click the DTP you just cre­
ated to display the DTP in detail. Select the Execute tab and then click
the Execute button (see Figure 42). This starts the data load.
Extraction Update Execute

Technical Request Status Request status is set to ’green' if warnhgs occur ▼


Overall Status of Request Set Overal Status Automatically •W

□Automatically Repeat Red Requests in Process Chains

Processing Mode Serial Extraction, Immedate Parallel Processing Execute


1* 1
Figure 4 3 Execute DTP for Data Load

4 When the execution is complete, go to Transaction RSA1 to see the new


aDSO (INFADSO), manage the functions, and look at the new request
overview. In the context menu of your aDSO, select Display data and
generate an aggregate view on all the key figures at the calendar year/
month level. The result should be similar to that shown in Figure 44.

45
C r e a t in g a n d U s in g a D S O s 4

J g A T * la <£) £) © Qfl B m

OD_NW_PCURR Order WHt Purchase Order OD_NW_PO 0D_NW_GAMT X_NW_NAMT X_NW _PQ Taxes (Order)
EUR EA 0300X 0001 3 213,96 1 79.X 2 34,16
EUR EA 0300X 0004 6 5.471,62 4.598,00 2 873,62
EUR EA 0300X 0X 7 9 1.187,62 998,00 2 189,62
EUR EA 0300X 0008 10 1.428,X 1 .2 X .X 2 228,X
EUR EA 0300X 0009 11 1.116,22 938, X 2 178,22
EUR EA 0300X 0010 12 71,38 59,X 2 11,40
EUR EA 0300X 0012 14 183,26 154,X 2 29,26
EUR EA 030000X 16 18 1.070,98 8 9 9 .X 2 171,X
EUR EA 03000X 020 22 1.116,22 938,X 2 178,22
EUR EA 03000X 021 23 71,38 59,98 2 11,40
EUR EA 03000X 026 28 I X , 16 159,X 2 X ,3 6
EUR EA 0300000029 31 1.187,62 9 X ,0 0 2 I X , 62
EUR EA 03000X 032 34 5.471,62 4.598,00 2 873,62
EUR EA 030000X 33 35 1.428,X 1 .2 X .X 2 2 2 8 .X
EUR EA 030000X 34 36 1.116,22 9 3 8 ,X 2 178,22
EUR EA 03X 0X 035 37 71,38 59,X 2 11,40
EUR EA 030000X 37 39 183,26 1 54,X 2 29,26
EUR EA 03X 0X 041 43 1.070,X X 9 ,9 8 2 171,X
EUR EA 0300000045 47 61,88 52,X 2 9,88
EUR EA 0300000046 48 213,X 1 79,X 2 34,16
EUR EA 03X 0X 051 53 21,42 18,00 2 3,42
EUR EA 03000X 052 54 3 .X 3 ,4 4 2 .7 7 6 .X 2 527,44
EUR EA 03X 0X 054 56 283,22 238,00 2 45,22

Figure 4 4 Result after Data Load via DTP

5, To see what’s happening on the SAP HANA Studio side, go to SAP HANA
Studio and right-click the Catalog folder. In the context menu, select
Find Tablh. Enter "INFADSOl" in the Enthr table or column name
field. Under Matching items, notice it's present in /BIC (see Figure 45).
BI Consumer Services (BIC) is a standard system-defined schema. When­
ever you activate an SAP HANA information model, it is stored here.

Figure 4 5 Filter on INFADS0 1 in Catalog N ode

6 Go to the schema and put a filter on the Tables-Filter: *INFADSO*


folder by right-clicking the folder and selecting Filter from the context
menu to see all the tables that were created (see Figure 46).

46
C r e a t in g a n d U s in g a D S O s | 4

u_ jynunym;,
Tables - Filter: *INFADSO*
3Q% /BIC/AINFADSOl

’ J /BIC/AINFADS02
/BIC/AINFADS03
I... I S - Triggers
& I S - Views_______________

Figure 4 6 Tables Created w ith aDSO

7. To check the consistency in the number of data records, compare the


data in SAP HANA Studio (see Figure 47) and SAP BW(via SAP GUI; see
Figure 48).
Schema: Typ*:
ituc/AyfADsai [SAPCIA [V] cot/m Store E
CotrfB index« further PrcowtiK fu rtn * Infamattn

-General-------------------------------------------

Total Memory Conjunction (KB): 811 M errcrK orw ^ion in Man Storage (KB): 5«
Nurrfcer d Entrtw : 11,760 M ffroy Ccr<*xv*Kr>n CX*« S tcx a * (KB) 263
9 » o o O « k (K B ): 600 Memory Ccnjurfflcn (KB): 860

P « ttc n 5 p « f M tW i:
MASM 1 O J M 'J K > ^ JW /J(O a ,O JW _ B P ^ JW JW O ,O J W J^ ,0 _ W J^ ,O JW JK X > S ,O JW J> O A S .O ^ J P C S ,O J/# _ C ftB ,O JftV J^ ,C > _ N W J )€ U ),C > JW _ C M A T /t>J<W.CA,aiMC«TM,CAlYEAfi; RAHO(DYNAM]C:
INTEGER•UKE] REQTSN *

Figure 4 7 Check N um ber of Entries in AINFADS0 1 in SAP HANA Studio

Extraction Mode Delta ^Q D eltalnit


Package Size Dependent on Source Package Size
Error Handling Cancel Request, Do Not Track Records, No Update ▼
Processina Mode Parallel Extraction and Processina
Data Records Inserted 11.760
Request ID DTPR__20160328094509000019000

Figure 4 8 Check Num ber of Data Records Inserted

As you can see, the number of records from SAP HANA Studio and SAP
BW are the same, which means the data is consistent and all of the
records have been transferred.
Now we will compress the data and see how the data compression pro­
cess works. To do so, proceed with the following steps:
1 Go to Transaction RSA1 and right-click the aDSO. Choose M anage

from the context menu.

47
C r e a t in g a n d U s in g a D S O s | 4

2 The screen shown in Figure 49 appears. On this screen, select the A c t i ­


v a t e button to activate the aDSO.

Figure 4 9 A ctivate aDSO to See Compression

3, Go back to SAP HANA Studio. Note the three following tables:


Inbound Table (/BIC/A<ADS0 technical name>l )
Table of Active Data (/BI C/A<ADS0 technical name>2)
Change Log (BIC/A<ADS0 technical name>3)
We see that after activation the data is compressed and moved from the
Inbound Table (/BIC/A<ADS0 techni cal name>l) to the Table of Active
Data (/BIC/A<ADS0 technical name>2). Figure 50 further explains the
process.

E xtraction and R e p o rtin g

Figure 5 0 Com pression after Activation

48
C r e a t in g a n d U s in g a D S O s 4

Creating an aDSO Based on a Classic DSO

In this section, we will create an aDSO based on a classic DSO. The pro­
cess of creating an aDSO here is similar to the process discussed in the
previous section. However, changes must be made to the modeling prop­
erties. Proceed with the following steps:
1, Log on to the SAP BWModeling perspective of SAP HANA Studio. Right-
click the parent folder (where you have been placing all the artifacts) and
from the context menu select New • DataStore Object (advanced).
2, On the New DataStore Object (advanced) screen, provide the infor­
mation for the BW Project (for our example, we use CIA_003_DEMO_
en), InfoArea, Name (of your aDSO; we use OD_NW_DEMO_EPM),
and Description fields (ADSO based on classical purchase order DSO
Z_E_CDSO). In this example, the name of the aDSO based on a classic
DSO is CDSOADSO. In the Create from Template section, select Info-
Provider and choose Z_E_CDSO, which you created in Section 3, Cre­
ating a Classic DSO in SAP BW.
3, Click F i n i s h . Then activate the aDSO. Figure 5 1 shows the activated
aDSO. In this case, under M o d e l i n g P r o p e r t i e s , select the A c t i v a t e /
C o m p r e s s D a t a and W r i t e C h a n g e L o g checkboxes.

u General: CDSOADSO
D a ta S to r e O b je c t ( a d v a n c e d )

Technical Name: CDSOADSO


Description: ADSO Based in Classical Purchase Order DSO Z_E_CDSO
□ External SAP HANA View

▼ Modeling Properties

0 Activate/Compress Data
0 Write Change Log
□ Keep Inbound Data, Extract from Inbound Table
□ Unique Data Records
□ All Characteristics are Key, Reporting on Union of Inbound and Active Table
□ Extended tables

▼ Keys

Name I InfoObject Type | Column Length


K - [OLOGSYS] Source System OLOGSYS CHAR 10
K - [OD_NW_PO] Purchase Order (EPM Demo) OD_NW_PO CHAR 10
& [0O_NW_IPOS] Purchase Order Item (EPM Demo) OD_WW_IPOS NUMC 10

Figure 51 Finalize aDSO after Activation

49
C r e a t in g a n d U s in g a D S O s | 4

4 Go back to SAP GUI (SAP BW backend system) to create a data flow


from your existing data source (Z_EPM_PO) to the newly created aDSO
(CDSOADSO). Make a copy of the existing transformation between the
Z_E_CDSO and CDSOADSO as a template by right-clicking ODSO Z_
EPM_PO -> CUBE CDSOADSO and selecting Copy.
5 On the Copy Transformation screen, under the Target of Transfor­
mation section, select DataStore Object (advanced) in the Object Type
field, and provide the name (CDSOADSO) in the Name field. In the
Source of the Transformation section, select DataSource in the
Object Type field, enter Z_EPM_PO in the DataSource field, and enter
the correct system in the Source System field. Click the Confirm button.
The mapped transformation should look similar to the one in Figure 52.
g? EPMPurchase Order (Z_EPM_PO)
p H ^ F I e ld |lc<| Descript. |Date len g th
1 NOOEJCEY Node Key RAW 000016

2 NOOCJCEYJ Node Key RAW 000016


3 NOOC.KEY_SL Node Key RAW 000016
Q ADSO Bawd in Classical Purchase Order DSO Z_f_CDSO (CDSOADSO) Rule Grtop: «<*n
4 Jf NOO€_K£Y_PO Node Key RAW 000016
R ul^R ulc N a m e | P o si| K e y | InfoO b j e c t j Ic<u| D e te r ip t. iD o te t- J ln g th Int«
5 ^ NOC€_KEY_BP Node Key RAW 000016
E OlOGSYS 1 ^ OLOGSYS $ S o v c e System CHAR 000010
6 NOO€_KEYY_Em Node Key RAW 000016
= OO.NW.PO 2 0O_HW_PO /£'■ P urchase O d e r (EPM Demo) CHAR 000010 □
7 PARENT _KEYYJMPl Node Key RAW 000016
= 0O_NW_IPOS 3 0O_MW_tPOS $ 1 P urchase O d e r Item (EPM Demo) NUMC 000010
8 PO ID Pur. O rd ID CHAR 000010
= 0O_NW_POOS 5 0O_HW_POOS £ O rd e rn g S tatu s (EPM Demo) CHAR 000001 □
9 CREATED 8Y E nrcto v eeD CHAR 000010
= 0O_NW_POAS 6 0O_RW_POAS A O d e r A pproval s ta tu s (EPM Demo) CHAR 000001 □
10 CREATED AT Tme Stamp DEC 000021
= OO.NW.POCS 7 OOJftV.POCS £ O d e r C crfrm otxxi S tatu s (EPM Demo) CHAR 000001 □
11 CHANCED BY E rrpteveelD CHAR 000010
12 CHANCED AT Time Stamo DEC 000021
= 0O_NW_POtS 8 OOJW_POLS £ O d e r lie ty c ie S tatu s (EPM Demo) CHAR 000001
000006
u
13 NOTE GUtD Node Key RAW 000016 ^ CO_NW_CA 9 ODJIW jCA £ C re ate d on (EPM Demo) DATS

14 CURRENCY COCC C u re n c y CLKY 000005 { ■} 0O_NW_CHAT 10 OOJftV_CHAT £ C hanged on (EPM Demo) DATS 000008
IS GROSS AMOUNT Gross Ami. CLRR 000015 = 0O_NW_PRD> 11 0O_HW_PRJD £ Product ID (EFW Demo) CHAR 000010 □
16 NET AMOUNT Net Arrt. CURR 000015 V 0O_NW_D6LD 12 OOJfW _D£lD £ Planned De*very D ote (EPM Demo) DATS ocoooe
17 TAX AMOUNT Tex A rtt. CURR 000015
I

£
1

(tj> BPRcte 13 OOJW_R<XE £ CHAR 000003 □


18 11FECYCLE STATUS P O lfe c v c te CHAR 000001
= 0O_NW_8P 14 0O_HW_BP £ B usness P artner (EPM Demo) NUMC 000010 □
19 APPROVAL STATUS POAooroval CHAR 000001
= 0O_NW_PCURR 15 0O_HW_PClRR £ O d e r Currency CUKY 000005 □
20 CONFIRM STATJS PO C o rf rm abon CHAR 000001
= 0O_NW_GAMT 16 OOJfW.GAMT a Gross O d e r Amount (EPM Demo) CURR 000017
21 ORDERING STATUS PO Or d e m o CHAR 000001
22 PO STEM POS PO Rem Pos CHAR 000010
= 0O_NW_NAMT 17 OOJfWJiAMT m N et O d e r Amount (EPM Demo) CURR 000017
= 0O_NW_TAMT 18 0O_MW_TAMT S3 T axes ( O d e r Amount) (EPM Demo) CLRR 000017
23 NOTE GU1D I Node Key RAW 000016
= CO_NW_PLNl 19 0O_MW_PUNI O rder U r* UNIT 000003
24 CURRENCY COCC I C ifrerrcv CLKY 000005 £ □
2S GROSS AMOUNT 1 Gross Amt. CLRR 000015 = CO_NW_PQTY 20 0O_MW_PQTY □ O d e r Q uantity (EPM Demo) QUAN 000017

26 NET AMOUNT I Net Arm. CLRR 000015 ■ 0O_NW_CRB 21 0O_MW_CRB C re ate d by (EPM Demo) NUMC 000010
£ □
27 TAX AMOUNT I Tex An*. CLRR 000015 ■ OO.NW.CHB 22 0O_HW_CHB C hanged by (EPM Demo) NUMC 000010
£ □
28 OUANTITY O u a n tiv OUAN 000013
29 OUANTITY UNIT O ty .L W UMT 000003
30 C € l EVERY DATE T m eStem o DEC 000021
31 PROOUCT ID Product ID CHAR 000010
32 BP ID Bus. P a rt. ID CHAR 000010

Figure 52 Transformation w ith Field M apping from Z_EPM_PO to CDSOADSO

Once the transformation is created, our next step is to create the DTP in
the SAP GUI (in the SAP BW backend system) and load the data into the
new aDSO (CDSOADSO). We will then evaluate the data model in SAP
HANA Studio. Proceed with the following steps:

50
C r e a t in g a n d U s in g a D S O s 4

1 Right-click the Data Transfer Process folder and select Create Data
Transfer Process....
2 On the Create Data Transfer Process screen, you can change the
name of the DTP. Keep the default settings (see Figure 53).
• ED Data Transfer Processes CDSOADSO Create Data Tr... I

Figure 53 Create Data Transfer Process for CDSOADSO

You could also change the DTP Type. As indicated in the type name, if
you want to schedule a DTP, you should select Standard (Can Be Sched­
uled). However, if you want a real-time data acquisition, you need to
choose the DTP for Real-Time Data Acquisition type. Just keep in
mind that you can only use the DTP for Real-Time Data Acquisition
option when the DataSource is delta-enabled and supports real-time data
acquisition. Execute the DTP by clicking the Confirm button.
3 When the execution is complete, go to the new aDSO (INFADSO) via
Transaction RSA1 to manage the functions and look at the new request
overview. In the context menu of your aDSO, select Display data and
generate an aggregate view on all the key figures at the calendar year/
month level. You can repeat the steps to activate the data as shown in
the Creating an InfoCube-Based aDSO section to see the effect of repet­
itive activation on your data models. Make note that all the data has
been moved to both the Table of Active Data /BIC/CDS0ADS02 as well as
the Change Log / BIC/CDS0ADS03.

51
C r e a t in g a n d U s in g a D S O s 4

The Table of Active Data /BIC/CDS0ADS02 appears as shown in Figure 54,


and the Change Log /BIC/CDS0ADS03 appears as shown in Figure 55.

Columns In dexes Further Properties Runtime Information

- G eneral----------------------------------------------

Total Memory Consumption (KB): Memory Consumption in Main Storage (KB):


Number o f Entries: 11,760 Memory Consumption in Delta Storage (KB):
Size on Disk (KB): 620 E stm ated Maximum Memory Consumption (KB): SS4

Partition Specification:
HASH 1 LOGSYS, D_NW_PO, D_NW_IPOS

Figure 5 4 Table o f Active Data in CDS0 ADS0 2

lolumns | In d ex es Further Properties ] Runtime Information |

G eneral-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Total Memory Consumption (KB): - Memory Consumption in Main Storage (KB):


Number o f Entries: 11,760 Memory Consumption in Delta Storage (KB):
Size on Disk (KB): 568 Estimated Maximum Memory Consumption (KB): 807

Partition Specification:
HASH 1 LOGSYS,D_NW_PO,D_NW_IPOS; RANGE[DYNAMIC: INTEGER-LIKE) REQTSN *

Figure 5 5 Change Log in CDS0 ADS0 3

Creating a W rite -O p tim iz e d aDSO

The creation process for a write-optimized aDSO is similar to the pro­


cesses described in the previous two sections. In this case, we have to take
into consideration changes in the modeling properties. Proceed with the
following steps:
1 As before, log on to the SAP BW Modeling perspective of SAP HANA
Studio. Right-click the parent folder and select N ew *DataStore Object
(advanced).
2 On the New DataStore O bject (advanced) screen, provide informa­
tion for the BW Project (we used CIA_003_DEMO_en), InfoArea (we
used OD_NW_DEMO_EPM), Name (of your aDSO), and Description
fields (Write Optimized Purchase Order ADSO based on Z_E_CDSO). In

52
C r e a t in g a n d U s in g a D S O s 4

this example, the name ofyour write-optimized aDSO is WOPADSO. In


the Create from Template section, select InfoProvider and choose Z_
E_CDSO, which you created in Section 3.2.
3, Click Finish. Then activate the aDSO. Figure 56 shows the activated
aDSO. In this case, under M odeling Perspectives, select the W rite
Change Log checkbox and uncheck the Activate/C ompress Data
checkbox. When the warning message appears, select Yes.

G en eral: W O P A D S O

DataStore Object (advanced)


Technical Name: WOPADSO
Description: Write Optimized Purchase Order ADSO based on Z_E_CDSO
□ External SAP HANAView

▼ Modeling Properties

□ Activate/Compress Data
0 Write Change Log
□ Keep Inbound Data, Extract from Inbound Table
□ Unique Data Recnrrk
□ All Characteristics ai I Major Change a
□ Extended tables Keys are defined for the DataStore object (advanced) The explicit key
definition will be deleted.
▼ K eys Do you want to continue?

Name___________
S ' [OLOGSYS] So* Yes Wo
J £ - [OD_NW_PO] l_

& [OD_NW_IPOS] Purchase Order Item (EPMDemo) OD_NW_IPOS NUMC 10

Figure 5 6 Ignore W arning That Appears W hen You U ncheck the A ctivate/C om press Flag

4 Now you need to write-optimize the model before activating it. To do


this,you will have to add a new field to the aDSO key. To add new fields,
go to the Details tab and click the Add Field button (see Figure 57).
5 Provide the information for the new field. This includes completing the
Name, Description, Data Type, and Length fields, and most impor­
tantly, the Properties section (see Figure 58).

53
C r e a t in g a n d U s in g a D S O s 4

& Details: W OPADSO

Fields
© E

| Filter P a tte rn Add InfoObject

I InfoObject Key I Type 1- Add Field


B t o [KEY]KEY!
[OLOGSYS] Source System OLOGSYS CHAR 10 Add Group
& [OD_NW_PO] Purchase O rder (EPM Demo) OD_NW_PO CHAR 10
Delete
[OD_NWJPOS] Purchase Order Item (EPM Demo) OD.NW JPOS NUMC 10
B & [DATA] DATA Keys...
^ [OD_NW_POOS] Ordering S ta tu s (EPM Demo) OD_NW_POOS CHAR 1
K J [OD_NW_POAS] Order Approval S tatu s (EPM Demo) OD_NW_POAS CHAR 1
& [OD_NW_POCS] Order Confirmation S tatu s (EPM Demo)) OD_NW_POCS CHAR 1
& [OD_NW_POLS] Order Lifecycle S tatu s (EPM Demo) OD_NW_POLS CHAR 1
K ‘ [0D_NW_CA] C reated on (EPM Demo) 0D_NW_CA DATS 8
£ [0D_NW_CHAT] Changed on (EPM Demo) 0D_NW_CHAT DATS 8
& [0D_NW_PRID] Product ID (EPM Demo) 0D_NW_PRID CHAR 10
& [0D_NW_DELD] Planned Defcvery Date (EPM Demo) 0D_NW_DELD DATS 8
X ' [OD_NW_ROLE] Role (EPM Demo) OD_NW_ROLE CHAR 3
/T [0D_NW_BP] Business Partner (EPM Demo) 0D_NW_BP NUMC 10
aS rn p \ Ann .1 /-N.. J . . . r.
________________________________ 1 ±1d
Generc Details Settings

Figure 5 7 Add Fields from Details Tab

g) 0 General
Name: | REQUESTID
Add Inf oObject
Description: | New Field for R equest ID
Add Field
▼ Identify
Add Group
With: | Field Browse.
Delete
▼ Data Type
Keys...
Data Type: |CHAR ~T~| Length: 140

▼ Properties
Aggregation: | NONE B
Unit/Currency Field: jJ
M aster Data Check: | No M aster Data Check^No Reporting B
Conversion exit name:

Figure 5 8 Add Details for N ew Field to Be A dded

6 Activate the aDSO and create the transformation as shown in the previ­
ous sections. Again, use the transformation from data source Z_EPM_
PO to the classic DSO (Z_E_CDSO) as a template and make a copy of it,

54
C r e a t in g a n d U s in g a D S O s 4

changing the T a r g e t o f t h e T r a n s f o r m a t i o n name to "WOPADSO."


See Figure 59.
7. Since you added a new field (REQUESTID), you need to modify the
transformation and add a routine for the REQUESTID field.

Figure 5 9 Change Target o f Transformation after Copy

8 In the transformation, you added a routine for the new field. Now assign
the logic by making the result equal to the request as shown in Figure 60.

RESULT = REQUEST. |

Figure 6 0 Add Logic to Routine

You can now activate the transformation and then create the DTP. Load
the data in F u l l M o d e . Then repeat the load and analyze the new
request overview in the context of the previous load. We are repeating
the load to see if the subsequent load is optimized.
9 Let's check the data we loaded into the tables related to WOPADSO
(write-optimized aDSO). To do so, we will go to the C a t a l o g folder in
SAP HANA Studio and look for table /BIC/W0PADS01. This table contains
all the records that we just loaded. We will also see other aDSO tables,
but they are generally empty until we change the behaviors of this one.

55
C r e a t in g a n d U s in g a D S O s 4

We can check the content of the key field REQUESTID by using the
D a t a P r e v i e w function.

Creating Field Croups and Assigning InfoO bjects

In Section 1, we discussed how aDSOs enable us to perform modeling via


fields. Afield group is an extension to that concept. In this section, we will
store fields into groups for aDSOs. We can use fields via simple data types
or InfoObjects.
Since we want to work with field groups as a separate topic, we will create
a different aDSO. The steps for creating this aDSO are similar to those per­
formed in the three previous sections. However, this aDSO is based on an
InfoCube for actual cost. Follow the same steps as in previous sections
until you get to the N e w D a t a S t o r e O b j e c t ( a d v a n c e d ) window, and fill
in the details as shown in Figure 61. Click F i n i s h when complete.

Figure 61 aDSO for Actual Cost Details

56
C r e a t in g a n d U s in g a D S O s 4

We can now begin creating the field groups. Proceed with the following
steps:
1 Select the Details tab and choose Add Group, as shown in Figure 62.

Details: ACDADSO
Fields ▼ General
Name: | TIME

Description: | time|

General Details Settings

Figure 62 Add Group to aDSO

2 Now create multiple groups. For each group, choose Add InfoObject
to assign the InfoObjects shown in Table 3.
I Group InfoObject I
CCTR OCO_AREA: controlling area
OCOSTCENTER: cost center
CO_DOC OCO_DOC_NO: CO document number
OCO_ITEM_NO: line of CO document
ODOC_DATE: document date
OPSTNG_DATE: posting date in this document
CO.ELEM OCOSTELMNT: cost element
ODB_CR_IND: sender/receiver indicator
CURR OCURTYPE: currency type

Table 3 Create Groups w ith R elevant InfoObjects

57
C r e a t in g a n d U s in g a D S O s 4

I Group InfoObject 1
VAL.TYP OVTSTAT: statistics indicator for value type
OVTYPE: value type for reporting
OMETYPE: key figure type
OVERSION: version
OVTDETAIL: detailing the value type
VAL.VIE OVALUATION: valuation view
KEYFIG AMOUNT: U## amount
OQUANTITY: quantity
UNIT OCURRENCY: currency key
OUNIT: unit of measure
TIME OFISCYEAR: fiscal year
OFISCVARNT: fiscal year variant
OFISCPER: fiscal year/period
0FISCPER3: posting period

Table 3 Create Groups with R elevant InfoO bjects (Cont.)

3, Now that you've created the groups, you need to add them. Figure 63
shows the information for a cost center. You can use a similar method
to add other InfoObjects and groups.
Fields ▼ General
ffi B
Name:
Filter Pattern | Add InfoObject

Name I InfoObject K« r h t t Description: | Cost Center


Add Field I
£> [CO_DOC] CO Document ▼ Identify
[CO.EIEM] Cost Element 1 Add Group 1
£ ? [YAi_TYP]Y*je Type ---------------------- 1 With: IInfoObject j-J *1OCOSTCENTER
Delete
£> [CURR) Currency
▼ Data Type
£> [VAL_VIE] Valuation view Keys...
1 1 Data Type: |CHAR jJ Lengtn. | ju
£> [KEYFIG] Key Figures
& [UNIT] unto
^ Properties
£> [TIME] time
B £> [CCTR] Cost Center Aggregation:
\ [OCOSTCENTER] Cost Center OCOSTC... Crt
£ [OCO.AREA] Controttng area OCO.AREA CHi Unit/Currency Field:

Master Data Check: | Master Data Check Dcring Load/Activation


Conversion exit name:

Ld_______________ I 2J
General Details Settings

Figure 63 Add InfoObjects to Group

58
C r e a t in g a n d U s in g a D S O s 4

Repeat the process for each group. When you have finished, activate the
aDSO.

4.2 Loading Transactional Data Directly into aDSOs


If you don't want to use a Persistent Staging Area (PSA), you will need to
directly load data into your aDSO without using an SAP BW service. In
such situations, you can use the ODP framework with ODQs. The ODP
framework allows you to transfer data from various SAP repositories to
SAP BW. It offers remote function calls (RFC) (for ABAP systems), and
web services as communication channels. The data in the source is avail­
able for extraction in the form of ODPs.
We will take actual costs posted from the cost center as the data from the
data source OCO_OM_CCA_9. Here we are making a copy of it so that we
can create a new data source based on it. Proceed with the following
steps:
1 Create the ODP - SAP (Extractors) data source, Z_OCO_OM_CCA_9,
from OCO_OM_CCA_9 in the SAP source system. Begin by going to the
SAP BW Modeling perspective of SAP HANA Studio and open the SAP
GUI. Select the project and click SAP GUI (see Figure 64).
File Edit N avigate S e a rc h P roject j
5>jir3 * <8
j jOpen SAP GUI (Ctrl+6)|U InfoProvi.
jCIA_003_DEMQ_en [CIA, 003,*2

Figure 6 4 Click SAP GUI Icon in SAP Business W arehouse Perspective

2, In S A P GUI, go to Transaction RSA1 and select S o u r c e S y s t e m on the


left side of the screen, as shown in Figure 65.

59
C r e a t in g a n d U s in g a D S O s 4

Figure 6 5 Navigate to Create ODP-SAP Extractor

3, Select the ODP - SAP (Extractors) folder. In the folder, drill down to
your source system and right-click it. From the context menu, select
Display DataSource Tree (see Figure 66).

E5 ODP - SAP (Extractors) C)DP_SAP Create...


* gjfiK3(8Q K3CL800 Display DataSo...
Display DataSource Tree
► CD ODP-SAP )DP HANA Create...
► Cd o d p - slt Connection Parameter )DP_SLT Create...
• CD ODP-SAP Change attributes... >DP_BYD Create...
• CD ODP - Othe Rename )DP Create...
• CDDataServic Dglete OBJDS Create...
• CD External Sy ARTNERS Create...
► CD File Check ILE Create...
► CD DB Connec Restore e Create...
• CD UD Connec Activate oc Create...
• CD Web Servic VEB Create...
Reolcate DataSources
Customizing Extractors
Transfer Exchange Rates
Transfer Global Settings

Figure 66 Choose Source System and DataSource Tree

60
C r e a t in g a n d U s in g a D S O s 4

4 In the data source tree, select SAP • SAP-R/3 • CO • CO-OM • CO-OM-


CCA.
5 Right-click the CO-OM-CCA node and select Create a DataSource
from the context menu. In the Extraction tab, enter the details shown
in Figure 67.
DataSource Z_0C0_0M_CCA_9 CCtr:Act. Costs Delt
Source System w RK3CL800 RK3(800) source system
Version □ Active ▼] [M Compare with... |7|
Active Version Executable (Ml Edited Version
General Info. Extraction Proposal Fields Preview

Delta Process &DD Additive extraction using extractor like LIS infostructures: ~
Direct Access No DTPs Allowed For Direct Access ▼
Real Time Real-Time Data Acquisition Is Not Supported ▼

Adapter Extraction from SAP System by Operational Data Provisi... ▼ |^> Properties
ODP Context DataSources Without ESH Modelng
Operational Data Provider 0C0_0M_CCA_9 Transaction Data...▼
Cost Centers: Actual Costs Using Delta Extraction

Data Format Already Binary

Convers. Lang. User Master Record ▼


Number Format User Master Record ▼

Figure 6 7 Create DataSource and Fill in Details

6 Activate and ignore any activation error that appears during this process.
Many times there may be buffer issues, and you may not be able to see
the data source that you just created. To remedy this, exit out of Trans­
action RSA1 and then reenter. You data source should now appear.
Now let's create the transformation and DTP. This process is similar to
the process described in Section 4.1. We will use the newly created Z_
OCO_OM_CCA_9 as the DataSource in the Source of the Transfor­
mation field, and ACDADSO (Actual Cost Details) as the name in the

61
C r e a t in g a n d U s in g a D S O s 4

Target of the Transformation field (see Figure 68). Click the Con­
firm button when you have finished.

Figure 6 8 Create Transformation

7. On the next screen, double-click your transformation and map the


fields shown in Table 4.

Fields of DataSource Mapped to aDSO Fields


KOKRS OCO_AREA
BELNR OCO_DOC_NO
BUZEI OCO_ITEM_NO
FISCVAR OFISCVARNT
FISCPER OFISCPER
KOSTL OCOSTCENTER
VTYPE 0 VTYPE
VTDETAILS OVTDETAIL
VTSTAT 0 VTSTAT
MEASTYPE OMETYPE
VERSN OVERSION
VALUTYP OVALUATION
KSTAR OCOSTELMNT

Table 4 Fields to Be M apped b etw een DataSource and aDSO

62
C r e a t in g a n d U s in g a D S O s 4

Fields of DataSource Mapped to aDSO Fields


SEKNZ 0DB_CR_IND
SWG OAMOUNT
SMEG OQUANTITY
WAERS OCURRENCY
CURTYPE OCURTYPE
MEINH OUNIT
BLDAT ODOC_DATE
BUDAT OPSTNG_DATE

Table 4 Fields to Be M apped b etw een DataSource and aDSO (Cont.)

8 After you have saved and activated the transformation, you can create
the DTP. In the Create Data Transfer Process window, enter the
details shown in Figure 69.

Figure 6 9 Create the Data Transfer Process

9 Optional Step: You may want to load data for, say, a specific year, or
want to see data only in Euros. In such cases, you can put a filter in the
DTP. For this example, put a filter in the DTP on the Currency type and
Fiscal year/ period fields (see Figure 70).

63
C r e a t in g a n d U s in g a D S O s 4

Figure 7 0 Apply Filters on DTP

10. Save and activate the DTP.


We can execute the DTP and load the data as done in the Creating an Info-
Cube-Based aDSO section. We can also evaluate the results by comparing
them in SAP HANA Studio and the SAP BW backend system from SAP
GUI.

4.3 Loading Plan Data from Flat Files to aDSOs


Most companies have hetrogeneous IT landscapes, which means that few
teams still prefer to have flat files to load their data. Many times our data
sources can be flat files as well. In this section, we will discuss how you
can load plan data from flat files to an aDSO. Assuming that you already
have a .csv file for the plan data on your desktop, let's proceed with the
steps for loading that data into the aDSO:
1 Go to Transaction RSA1. From the left side menu, right-click Data-
Sources and select New from the context menu. The Create Data-
Source popup screen appears, where we can create a flat file. Fill in the
details as shown in Figure 71. Click the Confirm button when you are
finished.

64
C r e a t in g a n d U s in g a D S O s 4

Figure 71 Create Flat File D ataSource in Transaction RSA1

2, On the next screen go to the E x t r a c t o r tab. Provide the details shown


in Figure 72.

Figure 72 Fill in Details in Extraction Tab

65
C r e a t in g a n d U s in g a D S O s | 4

3, Select the Proposal tab and click Load Example Data (see Figure 73).

DataSource FLAT_FILE_DATASOURCE FLAT_FILE_DATASOURCE


Source System 0 PC_FILE PC.FILE
Version O CeS H © Not Saved
Active Version Does Not Exist
General Info. Extraction Proposal Fields Preview

Converter Separated with Separator (for Example, CSV)


No. of Data Records 10000 f ea Load Example Data
Fite Output
Load Example Data
fee. |Data

Figure 73 C hoose Load Example Data

4 When you click Load Example Data next to the No. of Data Records
field, the system will load the data and display it.
5 Go to the Fields tab and check that the fields are correct. Make any cor­
rections as required (see Figure 74).
DataSojrce ^ 1FlAT_nLE_DATAS0PRCE | FLAT_FILE_OATASQURCE
Source System 0 pc_file PC_FIIE ______________
Version O In Processng ▼ El Not Saved [EfiCompare with... I.|
Active Version Executable |§j Edted Version
General Info. Extraction Proposal Fields Preview

FieldAttrfcutes
Pos. Field Oesapt. D... T.. InfbOb)ec... Data Type Lngth Ded... Exter... L.. K.. Con... Format SS... Cur/Unit S.. Sel. Opts Feld Type
1 COSTCEIfTER Cost Center 1 V 0C0STCEWT CHAR 10 10 ALPHA E x cel
2 COST ELEHEHT 1 V 0C0STEUWT CHAR 10 10 J In te r w -

Figure 7 4 Check Fields and M ake Corrections if Required

6 The data source is now ready to be activated. Ignore the warning in the
log display dialog box. Select the Preview tab, and choose Read Pre­
view Data. You should see the flat file data.

Now let's create the aDSO that shoud be targeted for this flat file. Proceed
with the following steps:
1 Follow the same creation process shown in the subsections of Section
4.1. Remember that the the modeling template should be a standard
DSO in this case.

66
C r e a t in g a n d U s in g a D S O s | 4

2, In the Details tab of the aDSO, click the Add Group button. Add the
groups and InfoObjects shown in Table 5.
Group Name Description InfoObject
K E Y S K e y f i e l d s ► OFISCVARNT
► OFISCPER
► OCO_AREA
► COSTCENTER
► OCOSTELMNT
► ODB_CR_IND
► OCURRENCY
D A T A D a t a f i e l d s ► 0 F I S C P E R 3

► OFISCYEAR
► OVTSTAT
► OVTYPE
► OVTDETAIL
► OMETYPE
► OCURTYPE
► OVERSION
► OAMOUNT

Table 5 Add Groups and InfoObjects

3. When both groups have been added, activate the aDSO.


Next we'll create the transformation and DTP for the data load. See the
subsections in Section 4.1 for step-by-step instructions. In this case, you
just need to ensure that the mapping is properly done between the Data-
Source and the aDSO fields for the transformation.
When creating the DTP, go to the Extraction tab, set the Extraction
mode as Full and the Data Extraction as Directly from Source Sys­
tem. PSA is not used (for small amounts of data). When you have finished,
check and verify the data load.

67
Using aDSOs to Compare Actual and Plan Data | 5

4.4 Overwriting Plan Data with aDSOs


There may be times when we want to keep updated versions of flat files
with changed and new records. It is possible to load this data again in the
same aDSO and overwrite the existing data.
The following summarizes the steps for doing so:
1 Open the DTP in edit mode.
2 Go to the E x t r a c t i o n tab in the DTP.
3 Go to the File name and change the file location path. Enter the new
path from where it has to be read.
4 Execution remains the same.
5 The new data becomes available in the aDSO.
This brings us to the end of this section. In next section, we will discuss
how to use aDSOs to compare actual and plan data, combine them via a
CompositeProvider, and then enhance the CompositeProvider.

5 U sing aD S O s to C o m pare A c tu a l and Plan D a ta

In a classic SAP BW environment, MultiProviders are used to combine


data coming from various sources. For scenarios in which we have SQL
unions, using a MultiProvider makes sense. However, if we need to use
SQL joins, the only option we have is to use SAP BW InfoSets. This
doesn't mean that InfoSets don't have limitations. Because joins are done
during the runtime of a query in the application server, InfoSets require a
high amount of maintenance, and performance issues can occur.
To resolve bottlenecks, SAP BWon SAP HANA uses SAP HANA-optimized
MultiProviders and CompositeProviders. CompositeProviders are objects
used to define joins/unions on existing persistent data models. In this sec-

68
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta 5

tion, we discuss how to use CompositeProviders to combine and compare


the actual and plan data of aDSOs.
Like any InfoProvider, the purpose of an aDSO is to enable reporting and
analysis. One of the most common types of reporting and analysis is to
compare actual and plan data to see how a company performed on a cer­
tain metric. Let's see how to combine actual and plan data and keep this
data up to date after further data loads.

5.1 Combining Actual and Plan Data of aDSOs via a


CompositeProvider
To compare actual and plan data using aDSOs, we will use a Composite-
Provider. In our example, we will use a CompositeProvider with a union
to union two aDSOs (one for actual data and one for plan data) and then
compare them.

Creating a Com positeProvider w ith a Union

For our first step, we need to create a CompositeProvider with a union,


then add the aDSOs into it. Follow these steps:
1 Go to the SAP BWModeling perspective in SAP HANA Studio. Then, go
to File • New • CompositeProvider.
2 On the New CompositeProvider screen, enter the information in the
BW Project, InfoArea, Name (of the CompositeProvider), and Descrip­
tion fields. For Root Operation, select Union (see Figure 75). You will
be using the same SAP BW project throughout these examples. For the
SAP BW project name, use the naming convention <SID of the SAP BW
sourcexclient number of the SAP BW source> and then free text
(DEMO_en). Similarly, add all of the SAP BW-related objects to the
same InfoArea throughout the exercises. This will help you to easily
distinguish and track your activity.

69
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta 5

Figure 75 Fill in Details and Choose Union for Root Operation

Note
W are using Union as the Root O peration here because similar fields will
e

be assigned from several sources into one target field on the output struc­
ture.

3 When you have finished, click Finish to complete the process.

Add and Combine Actual and Plan aDSOs

Now that we have created the CompositeProvider, we can add and com­
bine the actual and plan data aDSOs. We'll be using the actual data
(ACDADSO) and plan data (PCDADSO) that we created in Section 4.
1 Go to modeling environment and click your CompositeProvider, as
shown in Figure 76.
a CompositeProvider
^ ^ ^ C P 4 A D S O ^ o n ^ ) s it^ r o v id e ^ o ^ D S O ^ J

Figure 7 6 Choose M odeling Environment

70
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta 5

2 On the next screen, select the Scenario tab to display the screen shown
in Figure 77.
<gi Scenario: CP4ADSO

Graphical [
/GDui \ Source Target
( Union )
|y a b Iv "
ffi < S > [Ul] (0+0+0)

General | Scenario; j Output

Figure 77 M od elin g Environment for CompositeProvider

3 On the left side of the Scenario tab, select the union item (Ul) and click
the Add icon as shown in Figure 78.

<0 Scenario: CP4ADSO

( a

COU1 — \
m
Union <30
[Add^l

Figure 78 Add aDSO to CompositeProvider

4 When you click Add, the Add Provider dialog screen appears. On this
screen, you can search for your two aDSOs: ACDADSO and PCDADSO
(see Figure 79).
5 Select the InfoProviders listed in Matching Items to display the screen
shown in Figure 80.
6 Next, create the field assignments of the aDSOs for the CompositePro­
vider. Under the Scenario tab, on the left side, select the Ul union
again. On the right side of the screen, right-click ACDADSO and select
Create Assignments (see Figure 81).

71
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta 5

Figure 79 Add and Search for InfoProvider

S c e n a rio : C P 4 A D S O

Graptvcal

& [pcdadso] plancost o*afcaoso


0 & [DATA] 0 * 4 ftetfe ( : M
£ [OCLRTYPE] Currency Type
A [OfISCRCR3) Posing c*«*S
A [OfISOBAR) F«cal year
S & [KEYS] Key f*kfc (6+0)
X 3 [OCOSTCENTER] Cost Center
£ [OCO.AREA] Centreing area
| i f [OCUARENCY] Currency ley
X [OOe.CROJf:: ; Return <em
A [OfISCPfP ] FttcaJ year / perod
A [OfISCVARNT] fiscal year vanan

Figure 8 o Union N ode with Added aDSO in CompositeProvider

a3 S c e n a rio : C P 4 A D S O

Source

mb
b
£ [o : >_AREA]Contro»ngare4
0 & (CUf P] Currency <: * 0 )
£ [OCURTYPE] Currency Type
0 & [TIME] time 4*0)
A (OfISCPER] fiscal year / perod
>ER3] Postng period
A [OfISCVARNT] fiscal year variant
A [CflSCYEAR] fiscal year
0 & (UNIT) un*s (2*0)
i f [OCUftRENCY; Currency key
i f [OUMT] Ur* o f measure

Figure 81 Create Assignments for Each aDSO in CompositeProvider

72
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta 5

7. When you click Create Assignments for ACDADSO, your screen should
look like Figure 82. It shows the assignments that you made in previous
steps between the actual cost aDSO and CompositeProvider.
I Graphical 1

S o u rc e T arg et

It 0 e F

Q 2 M T ACDADSO] Actual Cost Details (0 + • H I^ B B < S )[U l](0 + 9 )


B [CCTR] Cost Center (0+2) B & [CCTR] Cost Center (0+2)
K - [0CO5TCENTER] Cost C e n te r----------- -— f - i p [OCOSTCENTER] Cost Center
S [OCO_AREA] Controllng a r e a ---------------- ---------- — - S [OCO_AREA] Controlling area
& & [CURR] Currency (0+1) E - f e [CURR] Currency (0+1)
1 & [OCURTYPE] Currency Type----------------------------- -------- S [OCURTYPE] Currency Type
B & [TIME] tm e (0+4) B & [TIME] time (0+4)
[OFISCPER] Fiscal year / period------------------------ j— j~- £ [OFISCPER] Fiscal year / period
[0FISCPER3] Posting period Z*‘ [OFISCVARNT] Fiscal y ear variant
:... £ [OFISCVARNT] Fiscal year variant — 4 - i ? [0FISCPER3] Posting period
1... £ [OFISCYEAR] Fiscal y e a r ------------------------ — L- £ [OFISCYEAR] Fiscal year
B & [UNIT] units (0+2) B & [UNIT] units (0+2)
; Z ? [0CURRENCY] Currency key — Z ? [OCURRENCY] Currency key
/ i [0UNIT] Unit of m easu re----------------------- --------------- / £ [OUNIT] Unit of m easure

Figure 82 Assignm ent Results for ACDADSO

8 Perform the same actions for PCDADSO (see Figure 83).


Graphical

C © ui S o u rc e T arg et
Union
r D 0 h
B <S)[U l] (9+0)
B - & [CCTR] Cost Center (2+0)
£ Remove Assignments
-
ACDADSO
& [OCOSTCENTER) Cost Center
DataStore Object (.. ■—£ [0FISCPER3] Posting period S [OCO_AREA] Controlling area
? £
Actual Cost Detail?

[OFISCYEAR] Fiscal year E & [CURR] Currency (1+0)
B - & [KEYS] Key Fields (6+0) :... S [OCURTYPE] Currency Type
t_ i PCD A D SO <3° S [OCOSTCENTER] Cost Center B & [TIME] ttn e (4+0)
1_ DataStore Object (.. S [OCO_AREA] Controlling area j |£ [OFISCPER] Fiscal year /period
Plan Cost Details a... Z?[OCURRENCY] Currency key i & [OFISCVARNT] Fiscal year variant
j-S [ODB.CRDJND] Returns item !£ [0FISCPER3] Posting period
[OFISCPER] Fiscal year /period ■—£ [OFISCYEAR] Fiscal year
£ [OFISCVARNT] Fiscal year variant B & [UNIT] units (2+0)
h £ [OCURRENCY] Currency key
Z ? [OUNIT] Unit of measure

Figure 8 3 Creating Assignments for PCDADSO aDSO in CompositeProvider

73
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta | 5

9 . The screen shown in Figure 84 appears for PCDADSO. This is the final
mapping or assignment for the aDSO PCDADSO.
Graphical
S o u rc e T a rg e t

p m0 F
B U [PCDADSO] Plan Cost Details aOSO (0+9) B <3D [u i] (i+ 9 )
0 & [DATA] Data Fields (0+3) (3 & [CCTR] Cost Center (0+2)
& [OCURTYPE] Currency Type - f " J P [OCOSTCENTER] Cost Center
I £ [0FISCPER3] Posting period & [OCO_AREA] Controling area
- [OFISCYEAR] Fiscal y e a r------------- 0 & [CURR] Currency (0+1)
0 & [KEYS] Key Fields (0+6) j— - K J [OCURTYPE] Currency Type
£ [OCOSTCENTER] Cost C e n te r------ (3 & [TIME] time (0+4)
& [0CO_AREA] Controling a r e a ------ £ [OFISCPER] Fiscal year / period
j d [OCURRENCY] Cu-rency k e y ------- |— f™J p [OFISCVARNT] Fiscal y ear variant
& [0D6_CRD_INDj Returns item — -f-£ [0FISCPER3] Posting period
[OFISCPER] Fiscal year / period — — I— L £ [OFISCYEAR] Fiscal year
/V (OFISCVARNT] Fiscal year variant E £> [UNIT] units (1+1)
— d [OCURRENCY] Currency key
~ d [OUNIT] Unit of m easure
0 & [KEYS] Key Fields (0+1)
-------- K J [0D6_CRD_IND] R etu rm item

Figure 8 4 A ssignm ent Results for PCDADSO

1 0 . Switch to the Output tab. Under the Cost Center folder, right-click
OCOSTCENTER and select Navigation Attributes (see Figure 85).
Com positeProvider Fields ▼ General

Field Type: (Characteristic T |

I VtewFiefd | Associated Object N am e: | OCOSTCENTER


^ ^M C C T R ]C o stC e n te r^
Oescnption: | Cost Center
—^ manage uroups... |-------
FA] Controlng area ▼ A ssociation
0 & [CURR] Currency M l Nov.jdl O'i AM.ntxtrS
With: |InfoOb)ect (OCOSTCENTER £ Browse...
£ [OCURTYPE] Currency Type Ccrrpound InfoObjects
0 ^ [TIME] time Move to Group... O Usage of System-Wide Unique Name:
£ [OFISCPER] Fiscal year / period OFISCPER
£ [OFISCVARNT] Fiscal year variant b*OFISCVARNT 0 Direct Usage of Associated Object by Name: OCOSTCENTER
A ' [OFISCPER3] Postng percd 4>CFISCPER3
£ [OFISCYEAR] Fiscal year OFISCYEAR ► Data Type
0 & [UNIT] urrts
▼ Characteristic-Specific Properties
d [OCURRENCY] Currency hey d OCURRENCY
d [CUNIT] Urrt of measure d OUNIT Constant Value:
0 [KEYS] Key Fields
/ F [COB.CRDJND] Returns item XC06_CRD_IND Authorcation Relevance: \~

P User Confirmed Referential Integrty

General Scenario | Output

Figure 8 5 Add Navigation Attribute OCOSTCENTER

74
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta 5

11. When you select Navigation Attributes, the Navigation Attributes


screen appears. Select all the checkboxes and click OK. This selects the
field names for navigation attributes (see Figure 86).

Figure 8 6 Select Field Nam es for Navigation Attributes

12. Before you activate the CompositeProvider, you need to make sure to
verify that the navigation attributes that you added are present in
the CompositeProvider. To do so, go to the O utput tab and look for
OCOSTCENTER under the Cost Center folder of View Field area (see
Figure 87).

Filter p a tte rn

View Field
0 £ > [CCTR] C o s t C e n te r
TCENTERl Cost Center
[OCO_AREA] Controlling a re a
0 & [CURR] Currency
& [OCURTYPE] Currency Type
□ & [TIME] time
£ ' [OFISCPER] Fiscal year / period
Z* [OFISCVARNT] Fiscal y ear variant
Z* [OFISCPER;:] Posting period
£ [OFISCYEAR] Fiscal year
0 & [UNIT] units
Z f [OCURRENCY] Currency key
Z2f [OUNIT] Ur*t of m easure
0 £ » [KEYS] Key Fields
& [ODB_CRD_IND] R eturns item

General Scenario | O u tp u t!

Figure 8 7 Navigation Attributes Appear under Their Respective V iew Folders

75
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta 5

13. Perform a data preview of the CompositeProvider by choosing the


S h o w P r e v i e w button (see Figure 88).

x
[show Preview |

Figure 8 8 Click Show Preview to Perform Data Preview o f CompositeProvider

In the next section, we will enhance a CompositeProvider.

5.2 Enhancing a CompositeProvider


The CompositeProvider that we just created is completely based on
aDSOs. However, a customer may want to enhance a CompositeProvider
by, for example, adding an SAP HANA calculation view to it.
In this section, we will walk through this type of example. To keep the
previous activity we've done separate and intact, we've made a copy of
the CompositeProvider CP4ADSO that we used in previous sections
(renaming it DEMO_CPU). This allows us to work freely with the Com­
positeProvider without worrying about making errors or changes to the
orginial CompositeProvider. In addition to this, we will create another
CompositeProvider to create a combined view of the CompositeProvider
and a calculation view.
To begin enhancing our CompositeProvider, we first need to adjust our
current CompositeProvider (DEMO_CPU) so that we can make it usable
in another CompositeProvider. Follow these steps:
1 In the SAP BW Modeling perspective of SAP HANA Studio, go to the
G e n e r a l tab of your CompositeProvider and select the T h i s C o m p o s ­

i t e P r o v i d e r C A N BE A D D E D TO A N O T H E R C O M P O S I T E P R O V I D E R checkbox.

2 Save your changes and then activate the CompositeProvider.

3 Create a new CompositeProvider (DEMO_CPU_NEW) with the R o o t


O p e r a t i o n set to U n i o n . Follow the same process for creating a Com-

76
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta 5

positeProvider as you did in the Creating a CompositeProvider with a


Union section.
When you have finished, you can add and combine your CompositePro­
vider with the SAP HANA calculation view.

Note
are used to consume other analytic views, attribute views,
C a lc u la tio n v ie w s
calculation views, and base column tables. These are used to perform com­
plex calculations that are not possible w ith other types of information views.

Enhancing a Com positeProvider w ith a Calculation V iew of Type


Dimension

In this section, we will add calculation views to our CompositeProvider


for the transactional and master data. We will then add each of them to
our CompositeProvider. Our first calculation view is a calculation view of
type dimension and is based on cost center master data. Follow these
steps to create this calculation view:
1 Log on to SAP HANA Studio and right-click your package (Demo; in
which we want to create the calculation view), then select New • Cal­
culation View ....

2 On the New Information View screen, fill out the details of the calcu­
lation view using the information in Figure 89. Make sure the calcula­
tion view type is Graphical and that the Data Category is DIMEN­
SION. A calculation view of type dimension ensures the following:
The default node is a projection node.
The calculation view is not available for reporting.
The output nodes are for attributes only, not for measures (no hier­
archy because this is for master data).
The view is consumable only with SQL.
3 Click Finish when complete.

77
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta 5

Figure 8 9 Filling in Details for Calculation View with Data Category Dimension

4 Projection nodes in calculation views improve performance by narrow­


ing the data set. The semantics node is created automatically. The pro­
jection node is the default node of calculation view of type dimension;
it appears when you click F i n i s h (see Figure 9 0 ) .

Figure 90 Projection Node and Semantics Node

78
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta 5

5, Add table CSKS (Cost Center Master Data) as the base table of the project
node. To do this, select the Add Objects icon (see Figure 91).

Figure 91 Add Base Table CSKS in Projection Node

6 In the Fin d popup screen, provide the table name in the T y p e t h e


o b j e c t n a m e t o s e a r c h f o r field and it will locate the table. Click OK to

add (see Figure 92).

7. When you add the table, a warning appears that says No colum ns

a d d e d This implies that we need to mark the fields we


to the o u t p u t .

want to have as the output (see Figure 93).

79
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta 5

—"U---HTFffl
JSemantics wMANDT
KOKRS
KOSTL
Baa Projection DATBI
vtr”cSKS ||______________ BUKRS
o c o lu m n s a d d e d t o t h e o u tp u t!
I - .W E P A ir

Figure 9 3 Warning for No Columns Selected as Output

8 To mark the fields, you can just double-click the dots in front of the
fields (see Figure 94) or choose Add All To Output in the Details pane
(see Figure 95).
S c e n a rio <±>* © ♦ D e ta ils

<1 v ...
(3*... <0 "T R A IN IN G ".C S K S ▼

(2) JSemantics • M ANDT


• KOKRS
Jo in
• KOSTL
8 Pi -
ECProjection v DATBI
U n io n
• BUKRS
I® v “CSKS
O • PRCTR
P ro je ... •V E R A K

a?
A g g r-
VERAK USER
TXJCD

£\
R an k

Figure 9 4 Add Columns to Output by Clicking Them Individually

TT "T R A IN IN G '.C S K S
D a ta P re v ie w
M ANDT
wKOKRS R e p la c e w ith D a ta S o u rc e ...
•K O S T L
A d d All T o O u t p u t
D A TBI
BUKRS S h o w D e s c rip tio n
PftCTR
VERA K
>/ S h o w C o m p le te N a m e

D isp lay ►
vVE R AKU SER
TXJCD X R em ove

P r o p a g a t e t o S e m a n tic s

E xtract S e m a n tic s

S e lec t All T a b le s

S e le c t All Jo in s

D e s e le c t All

P r o p e rtie s

Figure 95 Add All To Output Option

80
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta | 5

9 Define the KOKRS (CO Area) and KOSTL (Cost Center) fields and key
attributes. This allows you to keep them as primary keys, which you
will use in the Adding a Calculation View to a CompositeProvider sec­
tion. To define these keys, click the semantics node in the S c e n a r i o
pane (see Figure 96).
Scenario ®+ 9* Details
<1
Columns(9) View Properties Hierarchies Parameters,/Variables
<0
Local
CD
Join
1 * 3 t 5) ° g :!9j Z*, ' B C D * ' A. ▼
s -------- O ------- |
Union " Projection Type Key Name Label Aggregation Variable Semantic Type Label Column Hidden
““ CSKS 1 1 □ MANDT MANDT □
■ 4 □ KOSTL KOSTL □
Proje...
n0 & 4 □ KOKRS KOKRS □
Aggr- 4 □ DATBI DATBI □
□ BUKRS BUKRS □
£1
Rank □ PRCTR PRCTR □
J 4 □ VERAK VERAK □
□ VERAK... VERAK.U... D
□ TXJCD TXJCD □
] 4

Figure 9 6 Click Semantics in Scenario Pane

10. Select the Key checkboxes for the fields for which you want key attri­
butes (see Figure 97).
Type Key N am e L ab el A g g r e g a tio n V a ria b le S e m a n tic T y p e L abel C o lu m n H id d e n

□ M AN DT M ANDT □
4 0 KOSTL KOSTL □

L i KOKRS KOKRS | [ ]

1 * □ DATBI DATBI □
4 □ BUKRS BUKRS □
4 □ PRCTR PRCTR □
4 □ VERAK VERAK □
4 □ VERAK... VERAK_U... □
□ TXJCD TXJCD □

Figure 9 7 Add Key Attributes

11. Click the S a v e a n d A c t i v a t e icon to save your calculation view of type


dimension.
12. To monitor the activation, review the job log. The job log is located at
the bottom of the screen under the J o b L o g tab (see Figure 9 8 ) .

81
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta | 5

J o b L o g S3 ' H is to ry P ro g re s s

C u rren t H is to ry

Jo b T y p e S y s te m U. S u b m it te d A t S ta tu s
( A c tiv a tio n _ HDB S. W e d A pr 06 17:23:26 CEST 2 0 1 6 C o m p l e t e d s u c c e s s fu lly

Figure 9 8 M onitor the Activation

13. Once the calculation view of type dimension is active, you can preview
the data and see the raw data. To do this, select O p e n i n D a t a P r e v i e w
E d i t o r from the dropdown menu (see Figure 99).

@ IM - (» l © < - ^ [D ® ^ ^

O p e n in D a ta P re v ie w E ditor

E3 O p e n in SQL E d ito r

Figure 9 9 Click Open in Data Preview Editor

14. On the next screen, select the Raw Data tab to see the exact data with­
out formatting or filtering (see Figure 100).
ill Analysis nr Distinct values “ Raw Data i Show

• 4; 11 rows retrieved 47 ms O Execute * Add filter -

MANDT KOKRS KOSTL DATBI BURKS GSBER WERKS VERAK VERAK.USER PRCTR
100 003 000002310 Dec 31, 9999 003 SEK ABC 000002310
100 003 000002360 Dec 31, 9999 003 SEK DEC 000002360
100 003 000002320 Dec 31,9999 003 SEK PAT 000002320
100 003 000002460 Dec 31, 9999 003 SEK CAT 000002460
100 003 000002860 Dec 31,9999 003 SEK SAT 000002860
IOO 003 000002760 Dec 31, 9999 003 SEK HAT 000002760
100 003 000003360 Dec 31,9999 003 SEK VINAY SINGH 000003360
100 003 000003380 Dec 31, 9999 003 SEK Y MEHTA 000003380
100 003 000001360 Dec 31, 9999 003 SEK P TALWADE 000001360
100 003 000008360 Dec 31, 9999 003 SEK FRANK ST 000008360
100 003 000007360 Dec 31, 9999 003 SEK SANJEEV KE... 000007360

Figure 1 00 Data Preview for Calculation View

This completes our calculation view creation based on the master data.
Let's now move on to creating a calculation view for transactional data.

82
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta 5

Enhancing a Com positeProvider w ith a Calculation V iew of Type Cube


w ith Star Join

Unlike the calculation view in the previous section, now we want to cre­
ate a calculation view based on transactional data. This means we need to
create a calculation view of type cube with star join.This makes it manda­
tory to have at least one column as a measure and another column as an
aggregation node. Let's run through the process of creating a calculation
view of type cube with star join:
1 Log on to SAP HANA Studio and right-click your package (in which you
want to create the calculation view). In the context menu that appears,
select N e w • C a l c u l a t i o n V i e w .
2 On the N e w I n f o r m a t i o n V i e w screen, fill in the details of the calcula­
tion view. Make sure the calculation view type is G r a p h i c a l and that
the D a t a C a t e g o r y field is set to CUBE. Then select the W i t h S t a r J o i n
checkbox to make this a star join node. Click F i n i s h (see Figure 101).

Figure 101 Create a Calculation View with Data Category Cube

83
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta 5

3, Add a projection node, as shown in Figure 102.


S cenario ©* © ♦

< *•!
<0J
(5) _l Semantic*
Join
■ 4 ■
Union , + ' s,ar Jo,n

Proje... ■ a

Q ° | Projection]
Aggr.TT
a
Rank

Figure 102 Semantic and Star Join Created; Drag and Drop Projection Node

4 Add table Ocostcenter to the projection node as the base table for the
calculation view. Click the Add O b j e c t s + icon and find the table Ocost­
center to add (see Figure 103).

Figure 103 Add the Base Table

5 Enter the table name in the Find dialog window, as shown in Figure
104. Click OK to perform the search operation.

Pro|cctK>n_1

© Find l-l°M
T y p e t h e o b je c t n a m e t o s e a r c h fo r

M a tc h in g ite m s:

0BW:BIA:OCOST CENTER (SAPCIA)


L®OBW:BIA:OCOSTCENTER_F4 (SAPCIA)

B SAPCIA

Figure 104 Find the Base Table

84
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta 5

6 Once you have searched for and added the table, find the Details pane
of table Ocostcenter, as shown in Figure 105.
S c e n a rio © ♦ ©t D e ta ils

<1

••• <o " "S A P C IA ".O BW :BIA:OCO STC ENTER ▼

<2> - S e m a n tic s ^OBUS_AREA_KEY


J o in
T -O C O M P _C O D E _K E Y
OCOSTCENTER_KEY
8 + }' 0 OCOSTCENTER.SID
U n io n
- OCO.AREA.KEY
& OCO_AREA_S1D
P ro je ... OlOGSYS.KEY

a?
A g g r...
OOBJ_CURR_KEY
OPROFIT_CTR_KEY

3
R an k S* Proje ction_1
OPROFIT_CTR_SID
ORESP.USER.KEY
ORT_LOCATIO_KEY
v QEfW.0A;QCQSTC£. O RT.LOCATIO.SID
----- -O------

Figure 10 5 Find Details Pane o f Table Ocostcenter

7. Mark the fields you want to have as output. In this example, as shown
in Figure 106, mark all of them. To do this, either click the dots in front
of the individual fields or choose the Add All To Output option in the
Details pane.

"S A P C IA ".O BW :BIA:OCO STCENTER ▼


O B U S AREA KEY
O C O M P .C O D E .K E Y
OCO STCEN U RK EY
O C O S T C E N T E R S ID
O C O .A R EA .K EY
OC O A R E A .S ID
O lO G S Y S .K E Y
O O B J.C U R R .K E Y
O P R O E IT.C T R .K EY
O P R O E IT .C T R .S ID
ORESP.USER.KEY

( ORESP_USER_KEY
T y p e : NVARCHAR

Figure 1 06 Add Column to Output

Draw a connection from the Projection.! node to the star join node as
shown in Figure 107.

85
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta | 5

Figure 107 Add Projection N ode to Star Join N ode

Com bining O ur Calculation Views

We will now combine both of our calculation views (DEMO_CVDIM_


MD01 [calculation view of type dimension] and DEMO_CVSTAR_TD01
[calculation view of type cube with star join]). Follow these steps:
1 Add the previously created calculation view based on master data
(DEMO_CVDIM_MD01) to the star join node ofyour DEMO_CVSTAR_
TD01 calculation view. As shown in Figure 106, click the Add Objects
icon and then enter the name of the calculation view "DEMO..." into
the search bar of the Find dialog window. Click OK to perform the
search operation.

Figure 108 Add Calculation View DEMO_CVDIM_MD01 to Star Join

86
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta | 5

2 Mark the columns that you want to have as the output by either select­
ing the dots in the front of the individual column names or choosing the
A d d A l l To O u t p u t option in the D e t a i l s pane (see Figure 109).

|a P r o je c t io n ..!
v O B U S .A R E A .K E Y OBUS_AREA_KEY
O C O M P .C O D E .K E Y OCOMP_CODE_KEY
OCOSTCENTEFt.K EYOCOSTCENTER.KEY
O C O ST C EN TER .SID O C O ST C EN TER SID
O C O .A R EA .K EY OCO_AREA_KEY
O C O .A R E A .S ID O C O .A R E A .S ID
^ O L O G S Y S .K E Y OLOGSYS.KEY
O O B J.C U R R .K E Y OOBJ_CURR_KEY
O P R O F II CTR.K EY OP R O F IT.C TR .K EY
O P R O F IT .C T R .S ID O P R O r iT .C T R .S D
w O R T.LO C A TIO .K EY OR T.LOC ATIO.KEY
O R F S P U S F R KEY ORESP_USER_KEY
O R T .IO C A T IO .S ID OR T_LO C A Tl6_SID

Figure 1 09 Add Columns to Output

3, You now have two columns from the two different calculation views in
the D e t a i l s pane. The next task is to connect the different fields. For
this example, connect OCO_AREA_SID from Projection.! to KOKRS
(the primary key you defined as CO.AREA) and the OCOSTCENTER.
KEY in Projection.! to the KOSTL (the primary key you defined as
COST CENTER) using a referential join (see Figure 110).
4 & Columns
DEMOnDEMO CVDIM MD01 " OCOMP.CODE.KEY: Projection. I.OCOMP.Cl
06US.AREA.KEY O0USAREAJ EY
VMANDT MANOT ° OCOSTCENTER.SO: P'sectionJ.OCOSTCEt
OCOMP.CODE.KEY i K OMP.CODE KEY
OCOSTCENTER.KEY0C O :JC FNTER.KFY ** KOKRS KOKRS jj OCO.AREA.SID: Projection. I.OCO.AREA.SIl
OCOSTCENIER.SIDOCOSTCENTER.SID ' irKOSTL KOSTL “ OLOGSYS.KEY: Projection. UX.OCSYS.KEY
* OCO.AREA.KEY OCO.AREA.KEY >DATBI DAT8 I “ OOBJ.CURR.KEY: Projection_1.OOBJ.CURR.
OCO.AREA.SID OCO.AREA.SID * BURKS BURKS [ OPROFIT.CTR.KEY Projection. 1. OPROffT.C
OlOGSYS KEY 01 OGSYS.KFY ' * GSBER GSBER ' [ OPROFIT.CTR.SID Projection. J. OPROftT. C
OOBJ CURR KEY OOBJ CURR KEY %-WERKS WERKS " ORT LOCATIO KEY ProjectionJ. ORT l CCA
OPROEII.CTR.KEY OPROFIT.CTR.KEY vVEftAK VERAK
OPROHT.CTR.SID OPROFIT.CTR.SID ^VERAK.USER
vPRCTR
VERAK.USER
PRCTR
h Properties
■ m-
ORI EOCAIIO KEYORTJOCATIO.KFY
ORESP USER KEY ORESP USER KEY J General
ORI IOCAIIO.SID ORT LOCATIO SID
I Property Value
Left Ele... Projection.l...
Right EL. DEMO::DEM...
Join Type Referential
: jr : j u .i ...______________________

Figure 110 Join Columns with Referential Join Types

4 Ifyou have any difficulty setting the joins or dragging and joining them
to the right table, you can double-click the join to open the E d i t J o i n
screen, where you can more easily define your joins (see Figure 111).

87
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta 5

m E d it J o in
_ □ x

E d it J o in

E d it j o i n d e fin itio n

L eft T a b l e R ig h t T a b le

Is! P r o j e c t i o n .! | v || :i«j D E M O ::DEM O _CV DIM _M D 01 v

L e ft C o lu m n R ig h t C o lu m n

OBUS_AREA_KEY — MANDT
O C O M P.C O D E.K EY M kokrs

OCOSTCENTERJCEY KOSTL
OCOSTCENTER.SID ^ DATBI
O C O .A R EA .K EY ------ BURKS
OCO_AREA_SID w GSBER
OLOGSYS.KEY WERKS
OOBJ.CURR.KEY ^ VERAK
OPROFIT_CTR_KEY VERAK.USER
O PR O FIT.C TR .SID ftB PR C TR
OR T.LOCATIO.KEY
ORESP_USER_KEY
ORT_LOCATIO_SID

P ro p e rtie s

J o in T y p e : R e fe re n tia l V C a rd in a lity : V

□ D y n a m ic J o in L a n g u a g e C o lu m n :

T e m p o r a l P r o p e rtie s

T e m p o r a l C o lu m n : ___________v j F ro m C o lu m n :

T e m p o r a l C o n d itio n : ______________ v j T o C o lu m n : v

V a lid a te J o in | | OK [ C ancel

Figure 111 Define Joins

Creating Calculated Columns

Calculated columns enable values to be calculated at runtime. In this sec­


tion, we will create three calculated columns for our calculation views:
FISCYEAR, FISCPER3, and FISCPER. We'll start with FISCYEAR. Proceed
with the following steps to create the FISCYEAR calculated column:

88
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta 5

1 Select the star join node, and then on the screen that will appear choose
the checkbox for star join, as you did previously. Then go to the O u t p u t
area. Right-click the C a l c u l a t e d C o l u m n s folder in the O u t p u t area
and select N e w C a l c u l a t e d C o l u m n .
2 On the C a l c u l a t e d C o l u m n page, place the logic/expression on the
basis of which the column should be calculated. On this screen, define
the N a m e (F1SCYEAR), D a t a T y p e (NVARCHAR), and C o l u m n T y p e
(Attribute) (see Figure 112).

Figure 112 Expression for Calculated Columns

89
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta | 5

3 In the E x p r e s s i o n tab, enter the expression that is the basis for your cal­
culated column using the Expression Editor. In this example, the calcu­
lated column will be calculated based on posting data. Therefore, use
the expression leftstr(“PSTING_DATE” ,4), as shown in Figure 112 to
express this.
4 For FISCPER3, follow the same steps, but with the following different
conditions:
N a m e : FISCPER3

E x p r e s s i o n tab formula: “0”+midstr("PSTND_DATE” , 5,2) :

5 Create another calculated column with the following conditions:


N a m e : FISCPER

E x p r e s s i o n tab formula: •‘FISCYEAR”+”FISCPER3”

6 Now that you've created your calculated columns, assign the measures
and attributes to them. You can do this using the A u t o A s s i g n option.
Go to the semantic node, and in the D e t a i l section, select the A u t o
A s s i g n button (see Figure 113).

Figure 113 Assignment of Measures and Attributes via Auto Assign Button (1)

Notice that the columns are already assigned as measures or attributes.


Columns of type Q u a n t i t y and A m o u n t are assigned measures; the
remaining columns are assigned as attributes.

90
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta | 5

Local

Show: All
________ d
g^ / - 4 -
z

Type Key Label Aggregation Variable Semantic Type Lab«l Column Hidden Value Help Column Conversion Functions
i

□ OCOM... OCOMP_... □
— □ OCOS... OCOSTCE- Sum □
— □ oco,... OCO.ARE... Sum □
□ OlOGS... OLOGSYS.... □
□ OOBJ_... 0O8J.CU... □
□ OPROF... OPROFIT_._ □
□ OPROF... OPROFIT_._ Sum □
□ ORT.L... ORT.LOC... □
4
□ ORESP... ORESP.US... □
tUH □ ORT.L... ORT.LOC... Sum □
□ FISCY... FISCYEAR □
□ FISCP... FISCPER3 □
— LL n

Figure 114 Assignment of M easures and Attributes via Auto Assign Button (2 )

Select the S a v e a n d A c t iv a t e icon.


Your new calculation view is now ready to be used in the CompositePro-
vider.

Adding a Calculation V iew to a Com positeProvider

As previously discussed, we will use a copy of our previously created


CompositeProvider (CP4ADSO) from Section 5.1 and rename it DEMO_
CPU. To add the calculation view of type star join (DEMO_CVSTAR_
TD01), follow these steps:
1 Navigate to the S c e n a r i o tab, select the Union item (Ul), and click A d d
O b j e c t s . In the F i n d dialog window, type in the name of the Compos­

iteProvider (DEMO_CPU) and click OK. Do the same to search and add
the calculation view (DEMO_CVSTAR_TD01).
2 The basic structure is ready now. For the final step, assign the fields
from the calculation view to the CompositeProvider. Figure 115 shows
the search and field assignments for the CompositeProvider.
3 Perform the field mappings shown in Table 6.

91
U s in g a D S O s t o C o m p a r e A c t u a l a n d P la n D a ta | 5

Graphical

ccui Target
Urwon
r .1 ae 0 F a a
0 “ 1(OEMO.CPU] Plan / Actual Costs (0+25) 3 <B> (Ul) (0+25)
E ■ TP] Cost Center ►-») 3 ^ ICCTft] Cost Center :o*4)
-1} OCMO CPU
B ................ .........t t i f i N X l L Afm' "^Cortrolngarea
C o t T p o s l e P r o v i d e r
[UOO_COSTC_OeUS_AP£A] NAV Busmess X 5 IJOO.COST'.] UOOCost Center
UOOttsn /Actual C [UOOCOSTC_OCOMP_COC€] NAV: Ccrr©: ----------;— - L [OetrS.AREA] WAV: Business area
X 5 [OCOMP_COOE] NAV: Company code
DEMO_CVSTAR_TD01 3 ^ [CO.OOC] CO Document (:*-♦>
c a t c u > a t t o n v « w
f [OCO.DOC.WO] CO Document Number
m0 8 Cost Cert X 5 [- --' 1T£M •• ) Use Item of CO Oocune
A [OOOC.OATH Document Date

Figure 115 Field M apping to Enhanced CompositeProvider with Calculation View Star Join

Source Field (Calculation View) Target Field (CompositeProvider)


CO_DOC_NO OCO_DOC_NO
CO_ITEAA_NO OCO_ITEM_NO
FISCVARNT OFISCNARNT
COSTELMNT OCOSTELMNT
CURTYPE OCURTYPE
VTDETAIL OVTDETAIL
VTYPE 0 VTYPE
METYPE OMETYPE
DOC_DATE ODOC.DATE
PSTN D_D ATE OPSTND_DATE
DB_CR_IND ODB_CR_IND
VTSTAT 0 VTSTAT
VALUATION OVALUATION
VERSION OVERSION
QUANTITY OQUANTITY
UNIT OUNIT
AM OUNT OAMOUNT
CURRENCY OCURRENCY
FISCPER OFISCPER

Table 6 Field Mapping b etw een Calculation View and CompositeProvider

92
W h a t ’ s N e x t? 6

Source Field (Calculation View) Target Field (CompositeProvider)


FISCPER3 0FISCPER3
FISCYEAR OFISCYEAR
CO_AREA OCO.AREA
COMP.CODE OCOMP_CODE
BUS.AREA OBUS_AREA
COSTCENTER OCOSTCENTER

Table 6 Field M apping b etw een Calculation View and CompositeProvider (Cont.)

4 After mapping these fields, save and activate your DEMO_CPU_NEW


CompositeProvider.
5 You can see the data preview from the S h o w P r e v i e w tab in SAP HANA
Studio.
You have successfully enhanced your aDSO-based CompositeProvider!
This brings us to the end of our E-Bite. You have learned the necessary
steps to create and use aDSOs.

6 W h a t's N e x t?

aDSOs are just one of the perks of running SAP BW on SAP HANA, and
one of the many InfoProviders available in SAP BW. When running SAP
BW on SAP HANA, it's important to understand the changes that will hap­
pen within core processes such as reporting, data modeling, and adminis­
tration. For data modeling in particular, many changes occur when SAP
HANA comes into the picture, beyond the speed and power of aDSOs.

93
W h a t ’ s N e x t? 6

Recommendation from Our Editors

Looking to learn more about migrating and using SAP BW


on SAP HANA? If you're interested in learning more about
how SAP HANA is a game changer for SAP BW, visit
www.sap-press.com/3609 and check out Im p le m e n t in g
SAP B W on SAP H A N A \

In addition to this book, our editors picked a few other SAP PRESS pub­
lications that you might also be interested in. Check out the next page to
learn more!

94
M o r e fro m SAP PRESS

SAP B W 7 .4 — Practical Guide: Tackle all of the common tasks you'll


encounter when working with SAP BW, from creating objects, to extract­
ing and transforming data, to mastering the BEx tools.
8 5 2 pages, 3 rd edition, pub. 0 4 /2 0 1 5
E-book: $ 5 9 .9 9 | P rin t: $6 9 .9 5 | Bundle: $ 7 9 .9 9
w w w .sap -p ress.com /3 7 3 3

SAP N e tW e a v e r B W and SAP BusinessObjects:Learn everything you


need to know regarding SAP BW data modeling and retrieval, and the
optimal use of reporting tools from SAP (BEx and BusinessObjects).
7 9 5 pages, pub. 1 1 /2 0 1 1
E-book: $ 6 9 .9 9 | P rin t: $ 7 9 .9 5 | Bundle: $ 8 9 .9 9
w w w .sap -p ress.com /2 6 0 8

SAP HANA Advanced D ata M odeling: With step-by-step instructions and


sample coding, this book will teach you how to build and design predic­
tive, simulation, and optimization models in SAP HANA. From informa­
tion views to AFL models, you'll learn to scale for large datasets and per­
formance tune your models to perfection.
3 9 2 pages, pub. 1 0 /2 0 1 5
E-book: $ 6 9 .9 9 | P rin t: $ 7 9 .9 5 | Bundle: $ 8 9 .9 9
w w w .sap -p ress.com /3 8 6 3
S A P P R E S S E - B it e s
SAP PRESS E-Bites provide you w ith a high-quality response to your specific project
need. If you're looking fo r detailed instructions on a specific task; or if you need to
become fam iliar w ith a small, but crucial sub-com ponent o f an SAP product; or if you
w ant to understand all the hype around product xyz: SAP PRESS E-Bites have you cov­
ered. A uthored by the top professionals in the SAP universe, E-Bites provide the excel­
lence you know from SAP PRESS, in a digestible electronic form at, delivered (and con­
sumed) in a fraction of the tim e!

Palekar, Patel, Shiralkar


B u ild in g Planning A p p lic a tio n s w ith SAP BW In te g ra te d P lanning
ISBN 9 7 8 -1 -4 9 3 2 -1 3 6 1 -0 | $ 9 .9 9 | 9 7 pages

Brogden, et al.
C reating D ocum ents and Q ueries in SAP BusinessObjects W e b In telligence
ISBN 9 7 8 -1 -4 9 3 2 -1 3 5 4 -2 | $ 9 .9 9 | 56 pages

H illary Bliss, Bruce Labbate


T ext A nalytics w ith SAP
ISBN 9 7 8 -1 -4 9 3 2 -1 3 4 3 -6 | $ 1 2 .9 9 | 102 pages

The Author of this E-Bite


Vinay Singh is an SAP solution architect for business analytics at
BASF. He has more than 11 years o f experience in SAP data
warehousing and business intelligence, during which he has
w orked on m u ltiple SAP im plem entation projects at SAP Labs,
Adobe, and more. He is a lecturer fo r the SAP University Alliance
program, teaching classes on SAP HANA, and is a regular speaker
at various technical events.