BW-IP_PAK Enhancements with SAP NetWeaver 7.40 SP8.pdf

38
SAP NetWeaver 7.40 SP8 BW Integrated Planning (BW-IP) / Planning Application Kit (PAK) Enhancements SAP SE

Transcript of BW-IP_PAK Enhancements with SAP NetWeaver 7.40 SP8.pdf

  • SAP NetWeaver 7.40 SP8 BW Integrated Planning (BW-IP) / Planning Application Kit (PAK)

    Enhancements

    SAP SE

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 2 Public

    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. 3 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.

  • Remove General Restrictions in PAK

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 5 Public

    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 Rev 74 7.4 SP8

    Currency Conversion Rev 75 7.4 SP8

    Unit Conversion Rev 75 7.4 SP8

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 6 Public

    History and Outlook for Planning Improvements on

    SAP HANA with Regard to Classic BW-IP

    Feature HANA Revision BW Release/

    Support Pack Notes

    PAK enabling with basic planning functions copy, repost,

    delete, revaluate, disaggregation with reference and basic

    FOX SPS 04 = Rev 28 7.30 SP5

    Disaggregation Performance

    Improvements with BW 7.4

    SP8 + Rev 74 in case of all

    and from source

    PAK enabling with disaggregation in the query SPS 04 = Rev 28 7.30 SP5

    FOX String operations Rev38 7.30 SP 9 1792782

    FOX CURC Rev40 7.30 SP 9 1778939 and 1792782

    Data Slices Rev40 7.30 SP 9 1803016

    Logging BADI Rev40 7.30 SP 9 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 1855154

    DISTR WITH KEY Rev 60 + Rev 74 7.30 SP 10 1821899. Improvements with

    BW 7.4 SP8 + Rev 74

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 7 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 Rev 40 7.30 SP 10

    Physical Delete Rev 64 7.30 SP 11

    SQL Exit CR and DS with ABAP Fallback Rev 67 7.30 SP 12 1956085

    CR-Based Hierarchies Rev 67 7.30 SP 12 1984344

    MIN/MAX Restriction Rev 74 7.4 SP8 2011651

    Currency Conversion Rev 75 7.4 SP8

    Unit Conversion Rev 75 7.4 SP8

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 8 Public

    New Flexible Use Cases

    Feature HANA Revision BW Release/

    Support Pack

    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. 9 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. 10 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

    Product SalesOrg. Country Ammount

    1066 CH10 CH 8333

    753 CH10 CH 9822

    333 CH10 CH 4547

    1453 CH10 CH 2399

    1492 CH10 CH 6788

    ABAP

    HANA Product SalesOrg. Country Ammount

    1066 CH10 8333

    753 CH10 9822

    333 CH10 4547

    1453 CH10 2399

    1492 CH10 6788

    SalesOrg. Country

    CH10 CH

    SalesOrg.

    CH10

    SalesOrg. Country

    CH10 CH Derive

    Lookup

    Select SalesOrg.

    Group By SalesOrg.

    Push down result

    As temporary table

    Ideal Case: Very few

    records in ABAP

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 11 Public

    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. 12 Public

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

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

    Product Product

    Group L1

    Product

    GroupL2

    Ammount

    1066 Hardware Monitor 8333

    753 Hardware Monitor 9822

    333 Hardware PC 4547

    1453 Software Games 2399

    1492 Software Tools 6788

    ABAP

    HANA Product Product

    Group L1

    Product

    GroupL2

    Ammount

    1066 8333

    753 9822

    333 4547

    1453 2399

    1492 6788

    Derive

    Select Product

    Group By Product

    Push down result

    As temporary table

    Bad Case: Lot of

    records need to be

    transferred and handled

    in ABAP

    Product

    1066

    753

    333

    1453

    1492

    Product Product

    Group L1

    Product

    GroupL2

    1066 Hardware Monitor

    753 Hardware Monitor

    333 Hardware PC

    1453 Software Games

    1492 Software Tools

    Product Product

    Group L1

    Product

    GroupL2

    1066 Hardware Monitor

    753 Hardware Monitor

    333 Hardware PC

    1453 Software Games

    1492 Software Tools

    Lookup

    Implement SQL

    Script instead

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 13 Public

    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. 14 Public

    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. 15 Public

    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.

  • FOX Enhancements

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 17 Public

    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

    Rev 74

    7.4 SP 8

    Read External reference Data

    Rev 74

    7.4 SP 8

    Syntax Highlightening

    7.4 SP8

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 18 Public

    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 non-

    key 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. 19 Public

    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. 20 Public

    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. 21 Public

    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. 22 Public

    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. 23 Public

    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 }.

  • Attribute and Short Text Solution

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 25 Public

    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. 26 Public

    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. 27 Public

    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. 28 Public

    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. 29 Public

    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. 30 Public

    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. 31 Public

    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

    List Geometry

    Cell only

    Intermediate results

    Hierarchy nodes

    Restricted key figures

    Drill down

    Length of Comments

  • Planning on CompositeProviders

  • Planning Models and their

    relationship

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 34 Public

    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. 35 Public

    CompositeProvider and Planning

    Query

    ALVL

    RealTime

    Cube

    With BW 7.4 SP8, we offer the

    CompositeProvider. You can use this to

    create a union at database level.

    DSO

    Cube

    CompositeProvider BW7.4 SP8

    Real-Time

    Cube

    Analytical View

    UNION

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 36 Public

    CompositeProvider and Planning

    Real-Time

    Cube

    Analytical View

    UNION

    *Temporary restriction: Forecast

    calculations are only available with

    the BW-IP model.

  • Improve Usability and Support:

    Debugging Scripts

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 38 Public

    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

    7.4 SP 8

    Script to analyze the bit for characters RSPLS_DEBUGGING_SCRIPT_CHABIT 7.4 SP 8

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 39 Public

    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

  • Further Information

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 41 Public

    Further Information

    Further Information

    Frank Klingls blog

    http://scn.sap.com/community/data-warehousing/business-planning/blog/2014/09/08/further-improvements-on-

    sap-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.

    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.