Wednesday, March 9, 2022

File upload in BW/4HANA Web Cockpit

In BW/4 based BW systems there is a new feature included in its Web Cockpit. Data from files can be uploaded directly to the BW object like aDSO without any need to model data transformation. The upload is just done directly to the target BW object. I think such a thing was missing in the BW for a very long time. We do not need to bother our self anymore with  creating custom transformation just load the test data in Dev or Quality systems any more. Even if the object is supposed to be loaded by end user we do not need to prepare custom web applications (either in BSP, web dynpro etc. technologies) in order to provide this possibility to the end user.

The BW/4 Web Cockpit can be started from SAP GUI via t-code BW4WEB. Afterwards navigate to FIORI app called DataStore Objects - Manage Requests located under Data Administration part of the cockpit. Once you are there find an aDSO object that you want to load the data into and go to its Manage part. In top right corner, part of the web page there is a Further Actions drop down menu and item called Upload Data.

On the next page, you can browse for a file with the data. Supported file types are following MS Excel files: *.XLS, *.XLSX and CSV. It is also possible to generate a template – a CSV file that has a header line and a structure of the target aDSO object having all field names of the DataStore object.

After the source file is entered the BW systems recognizes it columns and presents it to the user. Further adjustments can be done concerning mapping of file’s columns into the objects (fields/IOs) of the target aDSO object. The BW system can also perform actions like Propose Mapping (for every column it is possible to manually assign fields using either a dropdown menu or an input field), Constant Values (a constant value can be assigned to a field), Cleansing Defaults (change the settings for the check by the back end). 


The data can be checked by hitting the Check button in very right down corner. The real upload happens by hitting an Upload button in the same part of the web page. Once the data from the file is uploaded there is a below message displayed.



Data load request is generated in the target aDSO afterwards a type of File upload.

While using this file upload function I run into an issue within decimal of uploaded key figure. In my file, I had a dot set as decimal separator. It seems that decimal separator sign is taken from SAP BW user’s default settings maintained in t-code SU01. It only worked for me in case my user had a comma set as a decimal separated in the SU01. Once I had a dot set; it did not work. There is a Note “2921556 - SAP BW/4HANA cockpit - manage DataStore - changing of decimal numbers during file upload” but my system has that implemented. Thus, it didn’t help to resolve this. Anyhow, it is a minor problem that can be workarounded.

Technically function is implemented in ABAP classes like below:

CL_RSL_ASTG_MAIN ADSO Upload Main

CL_RSL_ASTG_SOURCE ADSO Upload Source

That are called from CL_BW4_MANAGE_DATASTORE* classes like CL_BW4_MANAGE_DATASTORES_FILEM DataStore File Mappings

 Table RSL_ASTG_SET e.g. stores an settings from previous uploads for the same file.

 

More information:

Online documentation

Support site component: BW4-UI (valid for all BW/4HANA Web Cockpit parts)

No comments: