Sei sulla pagina 1di 43

SAP NetWeaver 7.

40 SP8
BW Integrated Planning (BW-IP) / Planning Application Kit (PAK)
Enhancements
SAP SE

Content
Remove General Restrictions in PAK

FOX Enhancements
Attribute and Short Text Solution
Support User Flexibility

Improve Usability and Support: Debugging Scripts


Further Information

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

Remove Further PAK Restrictions


When we released the planning applications kit with BW on HANA, we had a
number of limitations. We removed a lot of these in earlier support packages. The
main remaining limitations are either removed now with SAP Business Warehouse
7.4 SP8 or will remain, due to differences in the execution layer. The table below
provides a list of the most recently removed limitations.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

Remove General Restrictions in PAK

Remove General Restrictions in PAK


Removed Restriction

HANA Revision

BW Support
Pack

SQL Exit: Characteristic relationships (CR) and data slices (DS) with ABAP fallback (Note
1956085)

Rev 67

7.30 SP 12

Characteristic relationships: based on hierarchies (Note 1984344)

Rev 67

7.30 SP 12

MIN/MAX Restriction
Currency Conversion
Unit Conversion

Rev 74
Rev 75
Rev 75

7.4 SP8
7.4 SP8
7.4 SP8

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

History and Outlook for Planning Improvements on


SAP HANA with Regard to Classic BW-IP
Feature

HANA Revision

BW Release/
Support Pack

Notes
Disaggregation Performance
Improvements with BW 7.4
SP8 + Rev 74 in case of all
and from source

PAK enabling with basic planning functions copy, repost,


delete, revaluate, disaggregation with reference and basic
FOX

SPS 04 = Rev 28

7.30 SP5

PAK enabling with disaggregation in the query

SPS 04 = Rev 28

7.30 SP5

FOX String operations


FOX CURC
Data Slices
Logging BADI

Rev38
Rev40
Rev40
Rev40

7.30 SP 9
7.30 SP 9
7.30 SP 9
7.30 SP 9

1792782
1778939 and 1792782
1803016
1802658

PF 0RSPL_DELETE CR

SPS 05 = Rev 45

7.30 SP 9

1778939

PAK for DSO Planning

SPS 05 = Rev 45

7.30 SP 9

1799168

PF 0RSPL_REPOST_CR

Rev53

7.30 SP 10

DISTR WITH KEY

Rev 60 + Rev 74

7.30 SP 10

1855154
1821899. Improvements with
BW 7.4 SP8 + Rev 74

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

History and Outlook for Planning Improvements on


SAP HANA with Regard to Classic BW-IP
Feature

HANA Revision

BW Release/
Support Pack

Notes

SQL Exit PF

Rev67

7.30 SP 10

1861395 18703421870369

SQL Exit CR and DS

Rev67

7.30 SP 10

1861395, 1870342, 1877182,


1874412

Logging BADI for DSO


Physical Delete
SQL Exit CR and DS with ABAP Fallback
CR-Based Hierarchies
MIN/MAX Restriction
Currency Conversion
Unit Conversion

Rev 40
Rev 64
Rev 67
Rev 67
Rev 74
Rev 75
Rev 75

7.30 SP 10

2014 SAP SE or an SAP affiliate company. All rights reserved.

7.30 SP 11
7.30 SP 12
7.30 SP 12
7.4 SP8
7.4 SP8
7.4 SP8

1956085
1984344
2011651

Public

New Flexible Use Cases


Feature

BW Release/
Support Pack

HANA Revision

Planning with PAK on Hana View

Rev 64

7.4 SP5

Unified BPC on PAK Planning

SPS 07

7.4 SP5

Planning on Composite Provider

Rev 72

7.4 SP8

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

Remove General Restrictions in PAK


SQL Exit CR and DS with ABAP Fallback
Implementing SQL Script is frequently still an issue in projects due to a lack of knowledge of the new scripting
language SQLScript. The SQL procedures are also often written in a sequential way -using cursors - which
shows no performance improvement with respect to ABAP. To overcome this obstacle, we offered a way to still
leverage the old ABAP exits for characteristic relationship and data slices in case of low cardinality. You might
be a sales planner in France for example, and you plan on 100,000 records in your sales organization FR10
(being in your filter) which on the other hand derives for each record the country CH (for Switzerland). You then
only have one active characteristic relationship for 100,000 records in the planning buffer. This is a low
cardinality case, where Note 1956085 helps. Further examples are described in Note 1956085 itself. The
advantage is that we can read only the fields relevant for the characteristic relationship or data slice in an
aggregated way from HANA. In our example therefore, only the column for sales organization with one single
value CH10 is retrieved from the data in HANA. This is very fast. For this one record, the check in ABAP is fast
too. The result sales organization CH10 and country CH is then pushed back to HANA and used to derive the
correct country for all 100,000 records in HANA.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

Remove General Restrictions in PAK: ABAP Fallback for CR and DS


If characteristic relationships (CR) or data slices (DS) run in cases of low cardinality, the SQLScript names can be
left empty The ABAP fallback is then used

Example of low cardinality: CR which derives the country from the SalesOrganisation, where the user works on a
dedicated sales org
SalesOrg.

Derive

CH10

SalesOrg.

Country

CH10

CH

Ideal Case: Very few


records in ABAP

Push down result


Select SalesOrg.
Group By SalesOrg.

As temporary table

ABAP
HANA

Product

SalesOrg.

Country

Ammount

1066

CH10

8333

753

CH10

333

SalesOrg.

Country

Product

SalesOrg.

Country

Ammount

CH10

CH

1066

CH10

CH

8333

9822

753

CH10

CH

9822

CH10

4547

333

CH10

CH

4547

1453

CH10

2399

1453

CH10

CH

2399

1492

CH10

6788

1492

CH10

CH

6788

2014 SAP SE or an SAP affiliate company. All rights reserved.

Lookup

Public

10

Remove General Restrictions in PAK


Basically very fast and with the same performance as when implementing the coding with SQLScript.
The opposite would be true for a high cardinality however, like deriving the correct product category or brand for
each product. Assuming that the 100,000 records have around 1000 different products, we would then already
read 1000 records from HANA to derive in ABAP, and push back 1000 records to HANA. This might still be ok,
but takes more time.
.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

11

Remove General restrictions in PAK: ABAP Fallback for CR and DS


Example 2 Bad Case with High Cardinality: Product derives product group levels
Product
1066
753

Derive

333
1453
1492

Product

Product
Group L1

Product
GroupL2

1066

Hardware

Monitor

753

Hardware

Monitor

333

Hardware

PC

1453

Software

Games

1492

Software

Tools

Bad Case: Lot of


records need to be
transferred and handled
in ABAP

Push down result


Select Product
Group By Product

As temporary table

ABAP
HANA

Product

Product
Group L1

Product
GroupL2

Ammount

Product

Product
Group L1

Product
GroupL2

1066

Hardware

Monitor

753

Hardware

Monitor

Implement SQL
Script instead

Product

Product
Group L1

Product
GroupL2

Ammount

1066

Hardware

Monitor

8333

1066

8333

753

9822

333

Hardware

PC

753

Hardware

Monitor

9822

333

4547

1453

Software

Games

333

Hardware

PC

4547

1453

2399

1492

Software

Tools

1453

Software

Games

2399

1492

6788

1492

Software

Tools

6788

2014 SAP SE or an SAP affiliate company. All rights reserved.

Lookup

Public

12

Remove General Restrictions in PAK


Internal tests show that the number of characteristic relationships read can be as high as 10,000 records, but
the best trade-off has to be checked at project level. We therefore recommend starting with the ABAP
workaround by implementing Note 1956085 and returning empty values for the parameters
E_PROCEDURE_NAME_CHECK and E_PROCEDURE_NAME_DERIVE in the method
IF_RSPLS_CR_EXIT_HDB~GET_SQLSCRIPT_INFO.
You should then check the performance and see if a lot of time is spent during the read process, ABAP check
and push back to HANA. If this is the case, you should still follow this method and implement a SQLScript
procedure.
To be on the safe side, you could of course always implement a SQLScript procedure straight away.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

13

Remove General Restrictions in PAK


MIN/MAX restriction
With SAP Business Warehouse 7.4 SP8 or Note 2011651, we lifted the restriction on using non-input enabled
key figures of standard aggregation MIN or MAX in PAK. It is now possible, as in classic BW-IP, to have key
figures with standard aggregation MIN and MAX in the aggregation level. As in classic IP however, they are not
input enabled, so they can only be used for reporting purposes, and no planning values can be entered.

Currency and UNIT Conversion


As of revision 74.01, it is now possible to leverage the currency and unit conversion functionality down in HANA.
We therefore also enabled the standard planning function types 0RSPL_CURR_CONV and
0RSPL_UNIT_CONV for PAK. In these cases, we therefore do not need the workaround any more to read the
plan buffer data in the ABAP application server, to execute the planning function then on the ABAP layer and to
push back the result to HANA. This should improve performance where these planning function types are used.
For currency conversion also, a modeling workaround was possible before SP8 by using FOX and the CURC
statement. As of SAP Business Warehouse 7.4 SP8, this workaround is not needed any longer.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

14

Remove General Restrictions in PAK


Characteristic Relationships Based on Hierarchies
We removed the restriction on characteristic relationships based on hierarchies (RSPLS_MTYPE = H). This
was an issue for a long period, since BW hierarchies are not known in HANA. We were able to implement the
same trick as above for the ABAP fallback however in order to facilitate a fast and effective way of using BW
hierarchies.

Remaining Restrictions
One remaining restrictions is the forecast planning function type 0RSPL_FORECASTING. Here, we envision
using SQLScript and embedding the predictive analytic library (PAL) there. Of course, this is already possible in
any customer project.
For details, see SAP Help and watch this video.
The other restriction are due to transient or virtual data and so on, where we generally lack information on the
HANA side.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

15

FOX Enhancements

FOX Enhancements
With Support package 8, the FOX functionality was improved for IP. Once the HANA engine has also
adopted these enhancements, they will also be available in PAK. The main purpose of this is to make
customer exits using SQLScript unnecessary. In particular, the translation from a sequential
implementation of an ABAP exit to SQLScript results in a performance boost in most projects only if
the SQLScript is programmed using direct SQL algebra expressions rather than sequentially.

Removed Restriction

HANA Revision BW Support Pack

Internal Table

Read External reference Data

Rev 74

7.4 SP 8

Rev 74

7.4 SP 8

Syntax Highlightening
7.4 SP8

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

17

FOX Enhancements
Internal Tables
In BW-integrated planning, you can now define and use internal tables:
TABLE INTTAB { YEAR TYPE 0CALYEAR KEY, NUMBER
TYPE F, COSTCENTER TYPE 0COSTCENTER }.
Internal tables consist of fields. All data types which are permitted for variables can be used for these fields. A type
followed by KEY is a key field. Tables are sorted by key fields. There has to be at least one key field and one nonkey field. Only one entry can be made per key in the table.
Tables can be filled by assigning a value:
INTTAB.{NUMBER,2011} = 25.
INTTAB.{ COSTCENTER, 2013 } = 00004711.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

18

FOX enhancements
Values can be accessed as follows:
{ 0VCPL_INT, 2013 } = INTTAB.{ NUMBER, 2013 }.
The following special functions are available for internal tables:
Determine
number of rows: CNT = LINES( INTTAB )
Specify if
value exists: CNT = EXISTS( INTTAB.{ 2013 } ). The variable CNT is type I;
it is set to the value 1 if the entry exists, or set to 0 if the entry
does not exist
Delete specific
value: DELETE( INTTAB.{ 2014 } )
Delete all
values: CLEAR INTTAB

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

19

FOX Enhancements
FOREACH loop

for values: FOREACH YEAR IN INTTAB.


The FOREACH var IN INTAB then works similarly to the existing FOREACH IN REFDATA/SELECTION or
VARIABLE. Please follow the Loop Construct documentation in F1 help.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

20

FOX Enhancements
Read external reference data
In BW-integrated planning, you can now read data from any aggregation level. This data is declared using the
InfoProvider statement.

Example:
INFOPROVIDER DSO_REF.
The following expression is used to access the InfoProvider:
{ 0VCPL_INT, 2013 } = DSO_REF.{ 0VCPL_QUAV, YEAR}.
The name of the InfoProvider and a period (.) are inserted in front of the curly brackets when the InfoProvider is
accessed.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

21

FOX Enhancements
In this example, 0CALYEAR is the characteristic to be changed. All characteristics to be changed, and all
characteristics that are not in the aggregation level, must be specified in curly brackets for the InfoProvider
access. The usual notation can be used to access block characteristics.
{ 0VCPL_INT, 2013 } = DSO_REF.{ 0VCPL_QUAV, YEAR| 0PLANT = PLANT }.
You cannot set values. The system can iterate using the values that are assigned to a block however.
FOREACH YEAR IN DSO_REF.
{ 0VCPL_INT, 2013 } = { 0VCPL_INT, 2013 } +
DSO_REF.{ 0VCPL_QUAV, YEAR }.
ENDFOR.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

22

FOX Enhancements
The system calculates which data it reads from the formula (like with reference data). Value PLANT01 is added to
the selection for characteristic 0PLANT for example if the formula contains the following:
{ 0VCPL_INT, 2013 } =DSO_REF.{ 0VCPL_QUAV, YEAR | 0PLANT = PLANT01 }.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

23

Attribute and Short Text Solution

Attribute and Short Text Solution


With 7.4 SP5, we introduced a new
way to store character-like key
figures or in other words to store
plain ASCII text (short text case
without master data) or
characteristics with certain allowed
values (attribute planning with
master data value) in DSO and to
use them in reporting and planning
as figures. As is the case for all
usual key figures in OLAP, this runs
with NO2 aggregation. As a result,
we show texts at a higher level if
they are equal and * if they are not
equal. The whole text processing is
as fast as for normal number-based
key figures.
2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

25

Attribute and Short Text Solution

To achieve this, we need a character to be


inserted in the data field section of
planning enabled DSO for direct update.
Once you have done this, you will see that
you can flag this characteristic as a key
figure mark in the new Characteristic as
Key Figure section.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

26

Attribute and Short Text Solution

If you are wondering why this was done


only on DSO and not on cubes, the answer
is very simple. We need after images to
store texts. You can now use them directly
in an aggregation level you create on top
of the DSO. Here, you drag them into the
key figure section of the aggregation level.
Previously, you could only drag
characteristic from the key field section of
the DSO into chars.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

27

Attribute and Short Text Solution

Normally however, you have


most of your data in
InfoCubes. So you would build
a MultiProvider and use the
DSO for character-like key
figures. Depending on how
many characteristics you have
in your DSO compared to the
InfoCube, you can store the
comment at various
aggregation levels.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

28

Attribute and Short Text Solution

Once you have modeled your aggregation


level, you can start using the text key
figures in the query. In Query Designer,
they are usually treated as key figures. You
can either have multiple comment fields in
your DSO for each relevant key figure, or
model an account model for the comments
by having the key figure as an account
dimension. You can then restrict the
comment for each key figure in Query
Designer.
Once you have done this, you can use
them in the query as shown in the first
graphic.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

29

Attribute and Short Text Solution


Below you can find a list of features and how they are implemented in this solution when compared to other
known document-based solutions. As stated above, you can store short text or comments in plain ASCII text with
a maximum length of 250 characters. This is different to the old document-based solution in BExWeb, where you
can assign any document. We now support all new clients however, including the EPM Add-On. Only the old BEx
Analyzer can display them.
The cell-based comment cannot be attached to query level or to any hierarchy levels. Due to its close integration
with OLAP, it is a very fast solution if NO2 aggregation is used. This means that you can see the comments at a
higher level if they are the same at the lower level and also make comments input-enabled and
distribute them with copy to lower levels.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

30

Attribute and Short Text Solution


Feature

Simplified Short Text

Full Comment Solution

Comment or Documents

ASCII Short Text

Word, pdf, ASCII,

Attachment Anchor

Cell

Cell, Query, Characteristic Combination


Intermediate results
Hierarchy nodes
Restricted key figures
Drill down

List Geometry

Cell only

Length of Comments

<250

Aggregated View

Shows comment if they are all equal

Visibility and Maintenance

Separate column

Excel
Comment, separate column, pop up

Versioning

Possible via data model

inside comment
With different colors
More documents

Performance

Very good

Depends strongly on complexity and list


geometry

Supported UI

Design Studio, AO, EPM, Bex Web

2014 SAP SE or an SAP affiliate company. All rights reserved.

Full length

Public

31

Planning on CompositeProviders

Planning Models and their


relationship

Planning on CompositeProviders
With SP8, we go one step further and start supporting the CompositeProvider in addition to the MultiProvider in
planning scenarios. In the first delivery with SP8, we focus on handling the known MultiProvider use cases in the
CompositeProvider too. You can also use the CompositeProvider modeled in workspaces if you only leverage
normal BW info objects in the local provider.
The following scenarios with CompositeProvider and planning are not yet supported at present:
CompositeProviders with joins where an input-enabled PartProvider is involved
CompositeProviders with key figure mapping (could result in different contexts, when involving local providers
for planning). Resolving this is scheduled as the next step.
CompositeProviders involving local providers with non-BW info objects (thus resulting in characteristic mapping
with different basis characteristic names
CompositeProviders with a navigational attribute which is not mapped for all input-enabled partial providers.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

34

CompositeProvider and Planning


Query

With BW 7.4 SP8, we offer the


CompositeProvider. You can use this to
create a union at database level.

ALVL

CompositeProvider
BW7.4 SP8

DSO
RealTime

Cube

UNION

Real-Time
Cube

Analytical View

Cube

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

35

CompositeProvider and Planning

UNION

Real-Time
Cube

Analytical View

*Temporary restriction: Forecast


calculations are only available with
the BW-IP model.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

36

Improve Usability and Support:


Debugging Scripts

Improve Usability and Support: Debugging Scripts

Debugging Scripts

Technical Name

BW Release/
Support Pack

FOX Debugging Script

RSPLFC_DEBUGGING_SCRIPT_FOX

7.4 SP 8

Analysis Report improvement for PAK

Rev 74

7.4 SP 8

Buffer Debugging Scripts and

IP: RSPLF_DEBUGGING_SCRIPT_C_DATA

PAK: RSR_DEBUGGING_SCRIPT_STORE
Script to analyze the bit for characters

2014 SAP SE or an SAP affiliate company. All rights reserved.

RSPLS_DEBUGGING_SCRIPT_CHABIT

7.4 SP 8
7.4 SP 8

Public

38

FOX Enhancements

FOX Debugger
Fox debugging via debugging
script (only available in ABAP
execution)
Script:
RSPLFC_DEBUGGING_SCRIPT
_FOX
Currently only available in ABAP
execution

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

39

Further Information

Further Information
Further Information
Frank Klingls blog
http://scn.sap.com/community/data-warehousing/business-planning/blog/2014/09/08/further-improvements-onsap-hana-optimized-planning-with-the-planning-applications-kit-in-2014

Uwe Fischers blog


http://scn.sap.com/community/data-warehousing/business-planning/blog/2013/12/23/unifying-bpc-nw-and-bw-ip
Getting Started with Business Planning
http://scn.sap.com/docs/DOC-33758

2014 SAP SE or an SAP affiliate company. All rights reserved.

Public

41

Thank you
Contact information:
F name MI. L name
Title
Address
Phone number
2014 SAP SE or an SAP affiliate company. All rights reserved.

2014 SAP SE or an SAP affiliate company.


All rights reserved.
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP SE or an
SAP affiliate company.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP SE
(or an SAP affiliate company) in Germany and other countries. Please see http://global12.sap.com/corporate-en/legal/copyright/index.epx for additional
trademark information and notices.
Some software products marketed by SAP SE and its distributors contain proprietary software components of other software vendors.
National product specifications may vary.

These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or warranty of any kind,
and SAP SE or its affiliated companies shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP SE or
SAP affiliate company products and services are those that are set forth in the express warranty statements accompanying such products and
services, if any. Nothing herein should be construed as constituting an additional warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or any related
presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation, and SAP SEs or its affiliated
companies strategy and possible future developments, products, and/or platform directions and functionality are all subject to change and may be
changed by SAP SE or its affiliated companies at any time for any reason without notice. The information in this document is not a commitment,
promise, or legal obligation to deliver any material, code, or functionality. All forward-looking statements are subject to various risks and uncertainties
that could cause actual results to differ materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking
statements, which speak only as of their dates, and they should not be relied upon in making purchasing decisions.

2014 SAP SE or an SAP affiliate company. All rights reserved.

Potrebbero piacerti anche