Skip to Content

A beginner’s guide to your first BI model in NW2004S

Well, If you are reading these lines, you must have heard the buzz around BI in Netweaver 2004S. You might even browsed the “BI in SAP NetWeaver 2004s” forum, and now you are ready to jump into the (deep) water and build your first model in NW2004S. This comprehensive blog post is aimed to help you to get started and minimize the potential frustrations along the way.

I assume that (1) you either have access to a NW2004S sandbox  system at your company or you have downloaded and installed the nice NW2004S ABAP Sneak Preview system (load it at Load NW2004S Sneak Preview)  and (2) that you have at least some theoretical experience with previous versions of BW .

Ok, so let’s get started.

Our goal is to build and populate a DSO (DataStore Object, the new ODS) that will display Flights data. More specifically, data will be sourced from the SFLIGHT table available in our NW2004S system. The SFLIGHT table is part of the SAP Flight data model (A simplified modeling of an airline flight booking system available in every SAP system).


First let’s check whether the SFLIGHT table in our system is populated with data.

o Execute transaction SE16 and type SFLIGHT in the table name.
o Click on the green checkmark and click on “Number of entries”.
o If the number of entries is 0, we can safely assume that the SAP Flight tables weren’t populated.


Populate the SAP Flight tables (skip this step if you found some data in table SFLIGHT in the previous step).

o Execute transaction BC_DATA_GEN and click on the Execute icon.


o The SAP Flight data model will be now populated with demo data. This will take around 10 minutes (depends on your system’s resources).Note that in case that data is currently available in the SAP Flight tables, it will now be suppressed by the auto-generated data.
o Let’s now look into the SFLIGHT table data model (transaction SE11):



We will now build the InfoObjects required in our data model. For the sake of convenience, we will build only 6 InfoObjects ( 4 characteristics and 2 key figures).

o Execute transaction RSA1, from the left navigation pane, click on “InfoObjects”.
o Right Click on the upper node in the InfoObjects tree and click on “Create InfoArea”
o Create an InfoArea with technical name ZFLIGHT and description “Flights”.
o Right click on the new created InfoArea and create two InfoObject Catalogs (that will be used to contain your custom InfoObjects). Activate your InfoObjects Catalogs using the path InfoObject Catalog>> Activate :
o Flights Characteristics – ZFLIGHT_CHAR
o Flights Key Figures – ZFLIGHT_KF
o Right click on the “Flights Characteristics” InfoObject Catalog and click on “Create InfoObject” to create the following Characteristics with the following Char id, description, data type and length:

ZCARR_ID – Carrier ID, CHAR, 2
ZCONNID – Connection ID, NUMC, 4
ZFLDATE – Flight Date, Reference Characteristic: 0calday
ZPLANTYPE – Plane Type, CHAR, 10

o Right click on the “Flights Key Figures” InfoObject Catalog and click on “Create InfoObject” to create the following Key Figures with the following id, description and data type:

ZPRICE Flight Price, Amount, Unit/Currency: 0currency
ZPAYMENTSUM Flight Total Income, Quantity, Number

o Make sure you activate each of the InfoObjects
o Refresh the InfoObjects tree to make sure all InfoObjects are listed under their InfoObject Catalog


Build your DataStore Object (DSO)

o Execute RSA1 and click on InfoProviders tab
o You’ll notice the “Flights” infoarea. Create and Activate your DataStore under that Infoarea. Name it Flight DataStore (technical name – ZFLIGHTS).
o In the DSO settings, set the Type of DataStore object to be “Write Optimized”. This type of DataSource consists only of one table of active data (thus, there is no need to activate requests after loading them). This allows for faster data loads into the Enterprise Data Warehousing layer.



Create your DataSource in the NW2004S system. Our DataSource will be a generic datasource (built from transaction RSO2) that will source data from the SFLIGHT table in our BI system.

Important note: Creating a DataSource in the source system requires that you’ll provide a developer key. In case you are working on your company’s sandbox system, ask your Basis team to supply you one. In case you are following these steps in an NW2004 ABAP Sneak Preview system, you will find your developer key at When trying to apply it you will however receive an error 🙁 :



The reason is that the developer key works only for user BCUSER, and here I tried to apply it for user GILADW.

Two possible workarounds for this problem:
a. In client 001 (the BI client) Execute transaction SU01, Create a user named BCUSER , provide it with SAP_BW_ALL role and SAP_ALL profile. Then login to client 001 with the newly created user and execute the steps outlined below.
b. Login to client 000 with user BCUSER and password minisap and execute the steps outlined below.

o Execute transaction RSO2.
o Create a transaction data DataSource named ZFLIGHT_DS
o Complete the screen as shown below:


For more information on transformations see: Transformations

o     Right click the ZFLIGHT_DS datasource and select “Create Transformation”.

o     Specify the ZFLIGHTS DSO as the transformation target

o     Map the transformations as specified below:


o Activate the transformation object


Create and execute a DTP.

The DTP is a runtime object used in order to transfer data from persistent objects in BI. For more information on DTPs see: Data Transfer Process

o     In RSA1, go to the InfoProvider tab, right click the ZFLIGHTS DSO and select “Create Data Transfer Process”

o     The source and targets objects will be filled automatically

o     Click on the green checkmark

o     Activate the DTP

o     From the Execute tab, click on “Execute”

o     When prompted whether you want to Change the load method, select yes.


Verify your Data reached the DSO Active table

o Right click your ZFLIGHTS DSO, select manage, go to the contents tab, click on “Active Data” and preview your SFLIGHT data in the DSO.


Keller H, Sascha Krugger, ABAP Objects, An Introduction to programming SAP applications.

BI350 course material –  NW2004S

You must be Logged on to comment or reply to a post.
  • Hi Gilad,

    nice job. I have been looking for something like this for quite a while: something that gives you a concise overview of how to get data from a source system into a BI InfoProvider.

    Unfortunately I am stuck at step 7: When I create the transformation, I cannot enter the mapping. The reason is that the ZFLIGHT_DS data source looks like your screenshot, but the “Rule Group: Standard Group” window is empty, ie. does not contain any fields. When I highlight a row in the ZFLIGHT_DS window and drag it to the “Rule Group” window, a dashed line appears. But it disappears again, when I release the mouse over the “Rule Group” window. Can you tell me what’s wrong ? (I know this is a pretty elementary question, but then again: the title of your blog is “A beginner’s guide”…. 🙂

    Are you planning to continue this blog ? It would be pretty interesting to see how to create a simple InfoCube in the same way.

    Thanks & Regards,

    • Thanks Heiko. It’s a bit difficult to troubleshoot from here but we’ll try together.

      I would recommend that you:
      1. Delete the transformation that you created in step 7.

      2. Re-Activate the DataSource and ODS.

      3. Recreate the transformation. It should be possible to make the required links with no problems.

      Let me know,

      • Hi guys,

        thanks for your input (I know how difficult it is to pinpoint a problem only based on a short description).
        Unfortunately, no progress so far:

        I have deleted the transformation, re-activated DataSource and DSO and created a new transformation, but the target window in the transformation is still empty. What I forgot to mention in the first place: when I right-click on the DataSource and select Create Transformation, I get a popup saying “Cannot generate proposal”.

        Has step 6 been successful ? As far as I can tell, it has. When I right-click on the DataSource RightClick and choose “Manage” and then “PSA Maintenance”, I see my 403 flights. So I guess this means that step 6 has been executed correctly, right ?

        I am working with NW04s, btw.

        Any help is greatly appreciated.

        • Hello Heiko,

          I think you need to add the info-objects you created in step 3 to the DataStore (step 4). Just right click on Data fields and “InfoObject Direct input” now add the Zflight objects.

          for me it worked fine!

          • Hi Daan,

            I am working on NW04, i was trying with this Blog and i got the data upto PSA, and now came across the same problem of no proposal while creating the transformation. can you please help me where can I find, ” InfoObjects Direct Input” step 4, to add objects to DSO.


          • 1)From RSA1 open the “InfoProvider” tab.
            2)Right Click your ODS and select ‘Change’
            3)Now you have the possibity to search of your Infoobject Catalogs (icon with two cubes and two triangles.
            4)Now select the Infoobject Catalog ZFLIGHT_CHARS.
            5)Drag the ZCARRID and ZCONNID to the Key Fileds Section of the ODS (in the right).
            6)Drag the ZFLDATE and ZPLANTYPE to the Data Fields.
            7)Now click on the Infoobject Catalog selection again.
            Select the ZFLIGHT_KF and drag the two Key Figures to the DSO data fileds.
            8)Activate the DSO.

            Now you should be fine. If for some reason you are not, delete and recreate the transformation.

            I will need to update the blog with these steps.


          • How do you insert ZCARRID and ZCONNID to the Key Fileds Section of the ODS ???

            When I choose my DSO type to be Write-Optimized, I can only see Technical Key (Generated), Semantic Key, Data Fields, Navigation Attribute and Indexes.

            Only if I change my DSO type to Standard or Direct Update will I be able to see the Key Field.

          • Hi,
              I did all these steps . For me the problem is i am unable to get the values from source system..
            I checked all connections are active .I am able to get the structure of table but not getting values..
            Can someone please help regarding this.

            Thanks in Advance

          • )From RSA1 open the “InfoProvider” tab.
            2)Right Click your ODS and select ‘Change’
            3)Now you have the possibity to search of your Infoobject Catalogs (icon with two cubes and two triangles.
            4)Now select the Infoobject Catalog ZFLIGHT_CHARS.
            5)Drag the ZCARRID and ZCONNID to the Key Fileds Section of the ODS (in the right).
            6)Drag the ZFLDATE and ZPLANTYPE to the Data Fields.
            7)Now click on the Infoobject Catalog selection again.
            Select the ZFLIGHT_KF and drag the two Key Figures to the DSO data fileds.
            8)Activate the DSO.

            Now you should be fine. If for some reason you are not, delete and recreate the transformation.

            I will need to update the blog with these steps.


  • did you check whether step 6 was correct?
    You should have data in the PSA, i tried it also but i don’t succeed in having data in the PSA.

    I suspect it has something to do with the communication between BI-system and the SAP 001 system (assuming you are working with netweaver 2004s). Do we have to create a new source system first?

    • Hi Daan,

      The execution to the Infopackage in Step 6 will bring the data into the PSA. If you look closely into the “Processign” tab of your InfoPackage you’ll notice that the only option available is “Only PSA”. That means than when you’ll execute the InfoPackage it will update the data from the source system to the PSA, but won’t update subsequent data targets.
      As far as communication to other systems, well, in this exercise you are actually pulling data from the NW2004S system itself.In RSA1>>Source Systems>> BI , you should have an entry (with a yellow icon) for your BI system. That’s the system you should use. If the entry isn’t thyere you won’t be able to execute step 5.

      Hope it helps, if not ask more,


      • hi Gili,

        thanks for your quick answer! I poked around (and even reinstalled sap) and found out that in the extraction monitor a transactional RFC was not yet carried out. Don’t know why but using the menu Environment/Transactional RFC/In The Datawarehoude en execute (with right click) the package was received in BI.

        i will now continue with step 7 of your guide!


        • hi Daan,
          I think I have got the same problem as not being able to get data in PSA but unfortunately I could not understand your solution. Could you please describe in detail and if possible, propose steps to achieve this?

          Nice informative blog. I really apprecaite that and hope to get more step by step guides in future.


  • Hi Gili,

    with your and Daan’s help I finally was able to complete your beginner’s guide. Thanks a lot.

    Now I am ready to continue my BI quest: I’ll try to set up an InfoCube and load data into it and then I’ll try to do some reporting on my DSO and my InfoCube. Lots of stuff to be explored. If only I had some beginner’s guides for these things …… 😉


  • I dont seem to get the configuration that you defined for the ZPAYMENTSUM key figure.It says quantity and number, so i am not sure which one to choose as you can only choose one. Can anyone clarify this part please?
    • Thanks for pointing out this.
      You can use Number or Amount (although when using amount you’ll need to assign a currency).

      Make sure you add the Infoobjects to the DataStore in step 4 (This is not explicitly mentioned).


  • hello gil,

    I am unable to see the data in PSA and more over in my processing tab i see not just psa but many other options like data target and all that.
    and when trying to create DTP the source system i snot selected automatically and I was confused which one to provide as a source too.

    • Khanna,

      After executing step 6 succesfully you should have data in you PSA. In order to check it you should go to your DataSources page in RSA1. Under your source BI system, you should be able to find your datatource (name should be Flights). Highligh the datasource, right click and click on Manage. You will see the requests loaded in the PSA.
      If you don’t see any requests there, run your Infopackage again.


  • Very detail and clear. Good job!

    I have a question related to the DSO Key Field. How important to use a DATE as one of the key when build a DSO? What the differences if I missed Date in the key field but put it under the Data Field?


  • The ABAP sneak preview version does not contain a mark for BI Java SDK.  But the Netweaver 2004s sneak preview version contains it.  So which one should I download if I want to use BI?
    • Hi,

      In order to access the Admin Workbench you need to install the ABAP sneak preview. In case you want to use the Bex Designer and Bex Analyzer, you’ll need to install also the BI front end.
      The Java Version is required for the Bex Web, Integrated Planning, Visual Composer etc’. So in case you don’t install it you won’t be able to use those, but still be able to build any BI model, populate it with data and run a Bex query (using the Excel based Analayzer).
      Hope its clear and good luck,

  • In step 7, after specifying the transformation target and clicking on execute, I get a screen saying proposal generated.

    But when I click on execute it gives a dump and not the transformation screen

  • Hi,
    In RSO2, I cannot activate the Application Component NEW_HIER_ROOT. Kindly tell me the steps how to activate it. It says that there is no Application Component NEW_HIER_ROOT. Please tell me what to do.

    Thanks & Regards,