reyemsaibot

SAP BI Blog about SAP BW/4HANA, Analysis for Office and SAP HANA - by Tobias Meyer

Autor: reyemsaibot

  • Analysis Office 2.6 SP3 is available

    Since yesterday Analysis Office 2.6 SP3 is available. You need as always a S-User to download the latest version. Here is a short overview what it might fix.

    • „Create Web Application“ button is not enabled when SAP Lumira Designer is installed (s-note 2636541)
    • Correct sorting of members of type CalendarDay or DateTime in Filter Dialog (s-note 2625487)
    • Exception after saving workbook as PDF (s-note 2633496)
    • Filter Dialog does not update Hierarchy after switch of Access Mode (s-note 2637491)
    • Grouped Crosstabs: Expanding and Filtering in the Columns does not work (s-note 2637846)
    • Inserted chart does not reflect complete data (s-note 2635814)
    • Link Dimensions: Issues with drag and drop (s-note
      2610471
      )
    • Performance Issue related to many Shared Strings in Workbook (s-note 2638243)
    • Restart option missing (s-note 2633506)

    An overview what’s new will be released soon. If you find something interesting, please feel free to post a comment.

    author.


    I am Tobias, I write this blog since 2014, you can find me on twitter and youtube. If you want you can leave me a paypal coffee donation. You can also contact me directly if you want.

  • SAP BW Assign navigation attribute to InfoObject

    In my current project we run into an issue that we have to match navigation attributes from one ADSO to an infoobject of another ADSO. The old feature of a MultiProvider was to Identify (assign).

    SAP BW Assign infoobject to MultiProvider
    SAP BW Assign infoobject to MultiProvider

    So I searched for the correlating setting in BW Modeling Tools for Composite Provider and I found nothing in my SAP BW 7.4 SP17. After a little research I found that a SAP BW 7.5 has this
    information. It is hide under „Show unassigned Navigation Attributes„.

    Eclipse: Show Unassigned Navigation Attributes
    Eclipse: Show Unassigned Navigation Attributes
    Eclipse: Assign Navigation Attributes to InfoObject
    Eclipse: Assign Navigation Attributes to InfoObject

    If you show the unassigned navigation attributes, you can assign them to a normal InfoObject like the old MultiProvider. But a SAP BW 7.4 has no such setting.

    Eclipse: No Show Unassigned Navigation Attributes
    Eclipse: No Show Unassigned Navigation Attributes
    Eclipse: No navigation attributes to assign
    Eclipse: No navigation attributes to assign

    I found this Wiki entry, which
    descibes exactly what I need. At the end there is an information which is important if you use Advanced Data Store Objects. You have to read the s-note 2215947. The solution is to build one CompositeProvider (HCPR)
    with your ADSO and its navigation attributes.

    Eclipse: Activiate Navigation Attribute on Output tab
    Eclipse: Activiate Navigation Attribute on Output tab

    Then activate the setting „This CompositeProvider can be added to another CompositeProvider“and add the first CompositeProvider to a new CompositeProvider. Now you are able to assign the
    navigation attributes to a characteristic in the output of the new CompositeProvider.

     

    I hope this can help someone to solve a similar problem.

    author.


    Hi,

    I am Tobias, I write this blog since 2014, you can find me on twitterfacebook and youtube. I work as a Senior Business
    Warehouse Consultant. In 2016 I wrote the first edition of . If you want you can leave me a paypal coffee
    donation. You can also contact me directly if you want.




  • Book about BW Backend tips & tricks

    I hope you can help me, to find out if there is any interesting about a book that covers BW Backend topics. I think about a book which covers SAP HANA, AMDP/ABAP, BW Administration and so on.
    Thanks for your time.

    Powr.io content is not displayed due to your current cookie settings. Click on the cookie policy (functional and marketing) to agree to the Powr.io cookie policy and view the content. You can find out more about this in the Powr.io privacy policy.

    author.


    I am Tobias, I write this blog since 2014, you can find me on twitter and youtube. If you want you can leave me a paypal coffee donation. You can also contact me directly if you want.

  • BW Modeling Tools: Create a CompositeProvider

    If you want to create a Composite Provider in the BW Modeling Tools, you have to choose New >> Composite Provider in the context
    menu of your InfoArea or File >> New >> Composite Provider.

    Create new Compositeprovider
    Create new CompositeProvider

    After you choose the CompositeProvider, a new dialog appears which allows you to define the InfoArea, Name, Description and if you want to copy it from another CompositeProvider (HCPR). You can
    add it straight to your favorites if you want.

    Define Compositeprovider (HCPR)
    Define Compositeprovider (HCPR)

    After you defined a name and the description, you can click Next to get the dialog to select part providers.

    Select PartProvider for CompositeProvider
    Select PartProvider for CompositeProvider

    You can choose between Join Providers and Union Providers. Either all Part Providers are treated like InfoCubes in MultiProviders or you choose Join Providers to join your Part Providers
    like an Infoset.

    Add PartProvider
    Add PartProvider

    Use the search to find your part provider. After you found it, click OK and Finish. You now see the General tab of your Composite Provider.

    General Tab of your CompositeProvider
    General Tab of your CompositeProvider

    On the General tab you can configure settings of your CompositeProvider. You can decide if you want to create an External SAP HANA View, to use your CompositeProvider with a
    Calculation View for example. You can also define if your CompositeProvider can be added to another CompositeProvider. This will be decribed in this blog post. You can define the common runtime properties and the runtime profile properties.

    Scenario tab of your CompositeProvider
    Scenario tab of your CompositeProvider

    The Scenario tab is the main thing when you create your CompositeProvider. You have to assign your source fields to your target fields. Like the above an 1:1 Mapping or you can assign a constant
    value via the context menu of your target.

    Assign constant value
    Assign constant value

    Or you can use the context menu to edit a field and its properties.

    Edit field properties
    Edit field properties

    Or you can just remove the assignment and a false field. It is your choice 😉 If you select your part provider in the source panel, you receive the following context menu.

    Show Unassigned Navigation Attributes
    Show Unassigned Navigation Attributes

    If you choose Show Unassigned Navigation Attributes, you can see the navigation attributes of an InfoObject and assign it to a characteristic directly. This topic is different for BW
    7.4, so I cover this in a separate post. The following screenshot shows how it looks like when you have BW 7.5.

    See unassigned navigation attributes
    See unassigned navigation attributes

    You can also rename and delete or create the groups of your target so you can find your fields easily in your query.

    Manage groups of your CompositeProvider
    Manage groups of your CompositeProvider

    The next part is the Output tab. On the output tab you can define several things for an InfoObject. Select an InfoObject and the following screen appears.

    Output tab of your CompositeProvider
    Output tab of your CompositeProvider

    You can for example associate a field based ADSO with InfoObjects to receive master data and authorizations. Or if you have an InfoObject with navigation attributes, you can select them bei
    clicking on an InfoObject and select the context menu.

    Select navigation attributes
    Select navigation attributes

    This is how you create a CompositeProvider with Eclipse. This may change in future releases. If you have some questions, post them into the comment section below.

    author.


    I am Tobias, I write this blog since 2014, you can find me on twitter and youtube. If you want you can leave me a paypal coffee donation. You can also contact me directly if you want.

  • SAP Analysis Office Book is available

    Since last week the new version of my book SAP Analysis Office – The Comprehensive Guide is now available. You can find it only here
    in my shop. The book is based on Analysis Office 2.6 and covers
    now all about:

    • Customizing Analysis Office including file system settings
    • The basic stuff with Analytics Cloud
    • The advanced stuff like Table Design and Group Members
    • The API and formula functions
    • Troubleshooting and so on

    The table of content can be found here. If you have any questions feel free to
    write them into the comments.

     

    One question from me:

    Is it ok, that there is only Paypal as payment method or do you need more? Just write it in the comments and I will see what I can do.

    author.


    I am Tobias, I write this blog since 2014, you can find me on twitter and youtube. If you want you can leave me a paypal coffee donation. You can also contact me directly if you want.

  • What’s new in Analysis Office 2.6 SP2

    Analysis Office 2.6 SP2 is available since two weeks. There are only some slight changes to Analysis Office 2.6 SP1. You are now able to set the selection type for the formula
    SAPSetFilterComponent to MEMBERSELECTORBYRANGE. So you can use it to define the filter dialog with range option as standard.

     

    Also a new selection type for the VBA API SAPCallMemberSelector is now available. It is called MULTIPLEBYRANGE, which allows you to select a range of members for
    filtering. So if you found new functions, feel free to write them down in the comments.

    author.


    I am Tobias, I write this blog since 2014, you can find me on twitter and youtube. If you want you can leave me a paypal coffee donation. You can also contact me directly if you want.

  • Analysis Office 2.6 SP2 is available

    Since two days the new version of Analysis Office 2.6 is available. You need as always a S-User to download the latest version. Here
    is a short overview what it might fix:

    • AO 2.x: Table Design Formulas causes crash on initialze of Design Rules Tab if no applicable Data was found (s-note 2609841)
    • Analysis Office: Existing workbook in favorites folders on BIP will not be overwritten (s-note 2614892)
    • Analysis Office: Grouping crosstabs from different worksheets throws an exception (s-note 2614536)
    • Analysis Office: System alias of a query defined on BIP server is overwritten (s-note 2616663)
    • Filter Component results in error with Manual Calculation Mode (s-note 2605076)
    • Filter on Characteristics used in Restriction is lost after additional characteristic is used (s-note 2614466)
    • No drop down to select the date for between condition (s-note 2615430)
    • Undo operation for restriction fails (s-note 2606838)

    A overview what’s new will be available next week. If you find something interesting, please feel free to post a comment.

    author.


    I am Tobias, I write this blog since 2014, you can find me on twitter and youtube. If you want you can leave me a paypal coffee donation. You can also contact me directly if you want.

  • Analysis Office Restrictions

    Here is a short post about something I just found and never used until now. You can create restrictions in Analysis Office by either
    using the context menu of a measure or via the ribbon menu entry under Calculations >> Add Restrictions. It will display a new dialog where you can define your restrictions.

    Analysis Office Add new restriction
    Analysis Office Add new restriction

    You have to define a name, a based on measure and your selection(s). After you defined your parameters, click OK and a new column will be added to your crosstab.

    Crosstab with Restriction
    Crosstab with Restriction

    As you can see the restriction just show I have defined on my selection in the dialog above. I hope this could help someone.

    author.


    I am Tobias, I write this blog since 2014, you can find me on twitter and youtube. If you want you can leave me a paypal coffee donation. You can also contact me directly if you want.

  • What’s new in Analysis Office 2.6 SP1

    Analysis Office 2.6 SP1 is available since last week. When you look at the What’s new guide from SAP, you see nothing spectacular new. You have now a new file system setting called
    AlwaysDoApplicationSteps. You can use this setting to write entries into the table RSDDSTAT_OLAP afer each action without the need to close Analysis Office.

     

    There is also a new style called SAPDataRemoved, to format cells whose data was removed with the workbook property Remove Data Before Saving. Also you have now more
    options for scheduling a workbook on the BI platform

     

    That’s it. As you can see it is not much new. I think the most what was done is bug fixing.

    author.


    I am Tobias, I write this blog since 2014, you can find me on twitter and youtube. If you want you can leave me a paypal coffee donation. You can also contact me directly if you want.

  • SAP BW Decode String during Import

    In my current project I have a file to import, which only delivers me a string with a length of 1000. I also get a description what is in this file. Like the following points:

    • Customer from 1 to 10
    • City from 11 to 50

    The file looks like: 0000123456London………………………. So I have a file and a description how to decode this file. Now I need to find a way to separate this information into
    InfoObjects. I build a Z-Table which contains the decode information.

    Z-Table to decode information
    Z-Table to decode information

    The content look like the following example.

    Z-Table content
    Z-Table content

    After I filled all my necessary information into the table, I started to write my code in an expert routine. First I need some variables and internal tables.

    1
    2
    3
    4
    5
    6
    7
    DATA: lt_table0 TYPE TABLE OF z_dec,
          ls_table0 LIKE LINE OF lt_table0,
          lt_table1 TYPE TABLE OF z_dec,
          ls_table1 LIKE LINE OF lt_table1,
          lv_start  TYPE i.
    
    FIELD-SYMBOLS: <fv_source> TYPE any.
    

    After the variable declaration, we have to select our data and sort the internal tables.

     

    1
    2
    3
    4
    5
    SELECT * FROM z_dec INTO TABLE lt_table0 WHERE recordtype = 0.
    SELECT * FROM z_dec INTO TABLE lt_table1 WHERE recordtype = 1.
    
    SORT lt_table0 BY startfrom ASCENDING.
    SORT lt_table1 BY startfrom ASCENDING.
    

    Now we loop over the SOURCE_PACKAGE and loop over our internal table to assign all values.

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    LOOP AT SOURCE_PACKAGE ASSIGNING <source_fields>.
      IF <source_fields>-field1(1) = 0.
       LOOP AT lt_table0 INTO ls_table0.
       "First I need to find the start of my information
         lv_start = ls_table0-startfrom - 1.
         "Now I assign the infoobject to my result structure
         ASSIGN COMPONENT ls_table0-infoobject OF STRUCTURE RESULT_FIELDS TO <fv_source>.
         "Here I write the value of string into the corresponding infoobject
         <fv_source> = <source_fields>-field1+lv_start(ls_table0-length).
       ENDLOOP.
    
       "Here we append the RESULT_FIELDS to the RESULT_PACKAGE.
       APPEND RESULT_FIELDS TO RESULT_PACKAGE.
      ELSEIF <source_fields>-field1(1) = 1.
        LOOP AT lt_table1 INTO ls_table1.
          "First I need to find the start of my information
          lv_start = ls_table1-startfrom - 1.
          "Now I assign the infoobject to my result structure
          ASSIGN COMPONENT ls_table1-infoobject OF STRUCTURE RESULT_FIELDS TO <fv_source>.
          "Here I write the value of string into the corresponding infoobject
          <fv_source> = <source_fields>-field1+lv_start(ls_table1-length).
        ENDLOOP.
        "Here we append the RESULT_FIELDS to the RESULT_PACKAGE.
        APPEND RESULT_FIELDS TO RESULT_PACKAGE.
      ENDIF.
    ENDLOOP.
    

    So when we now see the import file, which looks like the following.

    Import File
    Import File

    The result looks like the a normal import.

    Result after import
    Result after import

    You can download the whole source code from github. If
    you have questions, feel free to ask.

    author.


    I am Tobias, I write this blog since 2014, you can find me on twitter and youtube. If you want you can leave me a paypal coffee donation. You can also contact me directly if you want.