Technical Articles
How-to… Load a File into SAP NetWeaver BI Integrated Planning (Part 1)
Update (August 2014):
Version 3 of the how-to guide and solution has been released. Please see the blog at
https://blogs.sap.com/2014/08/13/how-to-load-a-file-into-bw-integrated-planning-version-3/
Note: The old version 2 is not compatible with SAP BW 7.4 or higher. If you are planning to upgrade to 7.4, you will have to install version 3!
Hello Everyone,
it has finally arrived. The brand new how-to paper for loading files into BI Integrated Planning is available!
Download
Version 2.1 of the solution has been released. Please see How-to… Load a File into SAP NetWeaver BI Integrated Planning (Part 2) for download.
Business Scenario
If you are using SAP NetWeaver BI Integrated Planning you quite often have the requirement to load external data into your planning application. Typically data is loaded into SAP NetWeaver BI using the data staging functionality. However, you are looking for an easier way to upload data from a file that can be performed by business planners.
The how-to paper describes a solution that allows business planners to load a file directly into their planning application using a web browser. The following screen shows the user interface. The planner is prompted for the file name and simply chooses “Upload”. The system will load the file and validate its content. If there are no errors the planner can save the changes. The newly loaded data is immediately available in planning applications and queries.
Screen Shots
The first screen shot shows the starting point for the upload. The variable – in this case “Planning Version” – are rendered based on variables you define in the filter. Typically you would include some organizational criteria like cost center, too. Then simply enter the selection criteria, pick a file name to load, and click “Upload”.
Now the system will load the file from the PC and process it with a planning function. This includes various consistency checks and optional conversions. Also all characteristics relationships will be processes at this time (validation and derivations). In the log you can see how many records where loaded.
Finally, you can choose to “Save” the changes or “Undo” the load in case of you want to start over.
Additional Features
- Various file formats: tab-delimited, fixed length, or XML
- Various code pages: Unicode, UTF-8, UTF-16, and other code pages
- Option for overwriting of or appending to existing data including delta mode
- Text files with or without header line
- Conversion of numbers and dates according to user settings
- Conversion of characteristic value according to conversion routine (for example ALPHA conversion or external to internal material numbers)
- Conversion of amounts according to currency format configuration
- Flexible definition of fields and field order in upload file
- Support for virus scanning (if installed with SAP NetWeaver)
After the initial implementation there are no program changes required in order to use these features. All options can be configured using the Planning Modeler.
Your Feedback
I hope you enjoy the new solution. In case of problems, please shoot me an e-mail. If you have requests for enhancements or ideas for additional features please post them as comments to this blog.
Bug Fixes
Previously published program errors have been fixed in version 2.1 of the solution. Please see How-to… Load a File into SAP NetWeaver BI Integrated Planning (Part 2) for additional information.
Best,
Marc Bernard
@marcfbe



thanks for the great blog. Unfortunately the How To... document is damaged, can you please check it?
Thanks + best regards,
Balint
I tried a couple times. Both PDF and ZIP file are ok. If you can't download them, send me an email.
Marc
today the download is working fine, I dont know what was the problem last time... Thanks for your quick response!
Best regards,
Balint
Hello arc
obviously the configuration has been changed somewhere. Check the planning function and planning function type definition. If you can't figure it out, import the transport again. This will restore the original definitions.
Marc
Thanks for quick response.I did that but still it is not working.
I debug the program and I found what is the reason.But I don't know solution.
My upload interface calling this function module
RSPLSSE_PLSEQ_EXECUTE offcourse every planning executed through this function module.
Import parameters
I_SEQNM = My Planning sequence
I_FAST_ENQUEUE = 'X'. Becz of this parameter it is giving error. I think my understanding it has to pass this parameter I_FAST_ENQUEUE = ' '
then it will work.
Thanks in advance.
Please help me in this regards.
I executed function module SE37 passing
I_FAST_ENQUEUE = 'X'.It's giving same error.
I executed function module
I_FAST_ENQUEUE = ' '.
It's fine.
Regards,
Kishore
the i_fast_enqueue flag should not make a difference since there's only one step in the planning sequence (or have you added something else?). Please apply either latest SP 14 or at least the following notes 1031572, 1020747, 1001470, 1004496, 1005626 which fix issues with the IP controller. If it still does not work, please open a customer message.
Regards
Marc
Marc
Here is my anlysis:-
I imported your BRD Request & I was able to load data into cube at that time BI Patch was 13. we imported Patch 14 two days back. Now I'm testing it is giving error.
I'm not sure about this weather the problem occured becz patch 14 or something else.
I did open customer message. Could you please check it.
Thanks & Appreciate for all your help.
Regards,
Kishore.
Marc
It is working fine.
Thanks a lot & Really appreciate for your help.
Regards,
Kishore.
Here is my anlysis:-
I imported your BRD Request & I was able to load data into cube at that time BI Patch was 13. we imported Patch 14 two days back. Now I'm testing it is giving error.
I'm not sure about this weather the problem occured becz patch 14 or something else.
After transported and activated the planning function type ZRSPL_FILE_UPLOAD, I tried to activate the service ZRSPLF_FILE_UPLOAD by SICF but unfortunately it was not available under the path.
To get that where I have to run HTTP service.
Marc
Thanks for reply, Is it same transaction(SICF)
to create service, because in this transaction it only accepting 15 char name, or I have to create it in SE80.
After transport, I activated both ZCL_RSPLF_FILE_UPLOAD and ZRSPL_FILE_UPLOAD. After that I didn't get zip_encode, zip_conva,....zip_skip in RSA1 to enter master data.
you have to import the transport from the how-to paper. It includes all objects you need... except the HTTP service, which you have to transport or create in QA and PROD separately.
Marc
I transported those two .BIR files, but I can't able to create HTTP service. In SICF screen there are 5 tabs SERVICE DATA, LOGON DATA....ADMINISTRATION, where I have to include the HTTP SERVICE code. more over in SICF screen it accepting only 15 char as service name. Can you tell me in detail how to create HTTP SERVICE.
Thanks
I transported those two .BIR files, but I can't able to create HTTP service. In SICF screen there are 5 tabs SERVICE DATA, LOGON DATA....ADMINISTRATION, where I have to include the HTTP SERVICE code. more over in SICF screen it accepting only 15 char as service name. Can you tell me in detail how to create HTTP SERVICE.
Thanks
I transported those two .BIR files, but I can't able to create HTTP service. In SICF screen there are 5 tabs SERVICE DATA, LOGON DATA....ADMINISTRATION, where I have to include the HTTP SERVICE code. more over in SICF screen it accepting only 15 char as service name. Can you tell me in detail how to create HTTP SERVICE.
Thanks
Marc
Thanks for quick response.
Can you tell me what screen I have to go for run program. Is it SE24. I have to run program as method.
I run the program in SE80, still i didn't get the zrsplf_file_upload under webdynpro.
I got it now.
But one more question, Where can I excute Web Dynpro Application. Is any special installation required for that.
When I test the Web Dynpro Aplication, It giving the following error.
Note
The following error text was processed in the system DB1 : WebDynpro Exception: ICF service node for application /sap/public/bc does not exist
The error occurred on the application server emgbwdev1_DB1_01 and in the work process 0 .
The termination type was: RABAX_STATE
The ABAP call stack was:
Method: RAISE of program CX_WD_GENERAL=================CP
Method: HANDLE_REQUEST of program CL_WDR_UCF====================CP
Method: IF_HTTP_EXTENSION~HANDLE_REQUEST of program CL_WDR_MAIN_TASK==============CP
Method: EXECUTE_REQUEST of program CL_HTTP_SERVER================CP
Function: HTTP_DISPATCH_REQUEST of program SAPLHTTP_RUNTIME
Module: %_HTTP_START of program SAPMHTTP
I got every thing correct now.
When i test the service, i get below error.
The following error text was processed in the system BWS : WebDynpro Exception: ICF service node for application /sap/public/bc/icons does not exist
The error occurred on the application server scrhbws_BWS_01 and in the work process 0 .
The termination type was: RABAX_STATE
The ABAP call stack was:
Method: RAISE of program CX_WD_GENERAL=================CP
Method: HANDLE_REQUEST of program CL_WDR_UCF====================CP
Method: IF_HTTP_EXTENSION~HANDLE_REQUEST of program CL_WDR_MAIN_TASK==============CP
Method: EXECUTE_REQUEST of program CL_HTTP_SERVER================CP
Function: HTTP_DISPATCH_REQUEST of program SAPLHTTP_RUNTIME
Module: %_HTTP_START of program SAPMHTTP
Thanks
Ramesh
And exactly where in the URL you put that variable?
I'm getting the same error, but I'm configuring my server to work the Web Dynpros, Business Explorer, etc. This error comes when I'm trying to execute a web application.
I'd appreciate your help.
Thanks in advance.
After transported and activated the planning function type ZRSPL_FILE_UPLOAD, I tried to activate the service ZRSPLF_FILE_UPLOAD by SICF but unfortunately it was not available under the path.
Could you pls. recommend?
V
what happens if you launch the URL in the browser? Do you get an error? Send me an email if you can't figure it out.
Marc
First thanks a lot for developing this file upload. It's coming just at the right time for us and we're looking forward to start file uploads in BI IP soon.
We experienced the same issue as V (service not available after import). If I try to call the URL of the Webdynpro the error msg is as follows:
WebDynpro Exception: ICF service node for application /sap/public/bc/webdynpro/ does not exist.
Could you please give some advice?
Thanks and best regards
Viktor
https://wiki.sdn.sap.com/wiki/display/Snippets/BI-IP+File+Upload+-+Create+HTTP+Service
Regards
Marc
PS: I will include the service in the transport for the next release of the how-to.
We tried to implement the loading of flat file through BEx, but unfortunately I’m experiencing some problems. We followed your How to file.
Instead of changing the standard class ZRSPL_FILE_UPLOAD, I created a new one ZZRSPL_FILE_UPLOAD, deleted the code beneath IF_RSPLFA_SRVTYPE_IMP_EXEC~EXECUTE method and placed your code.
After that I created a new function type and associated the class previously created.
Made everything in planning modeller and created a button to call my planning sequence.
The problem is that I’m not able to choose the file to upload. I guess this happens because I have one parameter in function type called FILENAME.
The system keeps asking for the predefined file, defined in planning functions tab.
Do you have any clue for this?
Best regards
We are following the steps given my Marc (https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/6671) to upload a flat file in BI IP.
We are not able to import the *.BIR files into Cofiles and Data folder. Please let us know how to upload the *.BIR files into these folders. Which T.codes to use and what will be the directory of our BI system.
regards,
Lokesh
Kudos of thanks for this wonderful piece of work. I could not find ".CSV" as the file format supported by this method. Am I missing something? If not, it would be great to have ".CSV" as one of the compatible file formats for this utility.
Best Regards
Abhijit
CSV format sounds simple but is actually a tricky beast. Field values can be in quotes and can contain the field separator as well. Also CSV in the US is different from Germany for example (comma vs. semi colon). I will put it on the wish list. Thanks for the suggestion.
Marc
Great work thanks. I am looking forward to implement this IP uploads via web.
Thanks.
Regards:
BK
As V I don't find the service ZRSPLF_FILE_UPLOAD in SICF. In SE80 the web dynpro is available.
Could you help?
Best Regards
F
Marc
it's work really fine!!!
But, how to upload using BI bex planning?
Regards
Stefano
You can call the Web Dynpro from you BEx workbook. Please see section 4.10.
Version 2 of the how-to will allow for better integration into BEx Analyzer. I'm working on it.
Regards,
Marc
I have see the possibility to insert the web link using a macro in BEX but what I was referring to is that will be really useful to have the possibility to execute te upload using only bex.
I'm tryng to modify your class interface (ZCL_RSPLF_FILE_UPLOAD) to upload the file directly from bex without using the web dynpro for the input parameters. My problem is that I'm able to pass the path in wich the file I want to upload is stored but the system is unable to read the content of the file.
Can you give me some help?
Regards
Stefano
yes, it's not that easy ;-). Send me your email address and I will send you a beta of version 2.
Marc
my e-mail is
stefano_contran@sap-consulting.it
Hi,Dan
Marc
I looked at the note 1070655, which talks about SPS 15. Is there a workaround if I'm not able to apply this?
thanks
Srikant
the note is only relevant and needs to be applied if you have BI SP 14. The correction is going to be included in BI SP 15.
Marc
Hi MarcSrikant
open a customer message and have it forwarded it to me.
Marc
I have applied note 1070655 as per your reply, and the initial error I was receiving has been fixed, unfortunately I am now receiving another error:
System error in program CL_RSR_FIPT_VAL2SID_PREFETCH and form BEFORE_TRANSFORM-01- (see long text)
Thanks
Daniel
the error is raised because the system can't find a SID for a characteristic value. Field N_IOBJNM in the dumps contains the name of the characteristic. Check this characteristic with RSRV and fix the master data issues that come up.
Regards
Marc
Thanks for the pointer, it is working perfectly now. I was missing fiscal variant in my .txt file and the format of 0fiscper was not correct.
Thanks for you help.
Daniel
I have all of my planning sequences set up and they are all loading fine, but one thing I have just noticed is that the planning packages don't seem to be closing i.e. I have set it so that the users can run a process chain once they have finished loading .txt files, the program I am using to close the open planning packages is: RSAPO_CLOSE_TRANS_REQUEST_ALL3 but the packages in the cube are showing yellow and not available for reporting.
If I run the program again it will show the same upload cube packages as being closed even though no data has been uploaded into them, but when I check again they are still yellow.
Thanks
Daniel
just to get the wording right, you are not talking about planning packages but requests in the InfoCube. Don't use the program or similar function modules. Use the standard process types for switching between planning and loading. These will close the request.
Marc
Sorry, yes I mean requests in the infocube. The problem I have is that the users run a process chain via a BSP, they don't have access to the backend, so the program is currently a step in the process chain which runs to close all open requests in a cube. I really need to be able to keep this step automated.
Thanks
Daniel
if you use the process types it is fully automated and doesn't even require custom coding.
Marc
PS: If you like to discuss this further, please use the BI Planning forum since it's not related to the how-to guide. Thanks.
We are following the steps given my you to upload a flat file in BI IP.
We are not able to import the *.BIR files into Cofiles and Data folder. Please let us know how to upload the *.BIR files into these folders. Which T.codes to use and what will be the directory of our BI system.
regards,
Lokesh
REgards
Marc
I'm not sure if I understand your suggestion. The upload file contains only some columns of data. What exactly should be in the "template"? Also please send me an example of a file with "format errors".
Thanks,
Marc
1) I have query layouts on WAD. Now i need to provide file upload function on WAD for the query. The user will have two options: a) to input plan values manually or b) use our file upload. We have provided a hyperlink on the WAD for the file upload. When we click on the hyperlink and upload a file, we get a message that the infocube is locked. Since the WAD layout is already open, we are not able to upload the file. To solve this locking issue, we are now using two WAD templates. One separately for this file upload. Is there any solution for this?
2)I have a query layout on WAD. I am using this file upload function. Beside this function, i need an option to download to Excel. In the WAD, we have given the characteristic dropdown option to user to select row values of the report. Now, some users require to download this template report from WAD to excel and do planning offline. Then they will use our file upload function to upload the planned values. The end user will use only excel format for both upload and download. Please suggest some solution for this?
1) In this case the system has to lock the InfoCube since the file upload would overwrite the input-ready query. It's either input query or file upload. You can't do both at the same time.
2) I might include a corresponding download function in a future version of the how-to solution.
Marc
What you just mentioned is really something we're looking forward to. I mean the Download functionality. How soon would you be able to provide this solution?
We're trying to provide a similar solution to a client. We have already started work on this and were hoping you could give us some leads on where we could start. Maybe even share a beta version of what you have already developed :):)
Thanks
Srikant
the download function is almost done. Send me your email address and I will send you a beta for testing and feedback.
Marc
Can you please send it to me nlokeshn@yahoo.co.in
We need it very urgently.
Great job...thank you very much.
Lokesh Nandula
Hi Marc<br/><br/>My id is <srikanth.gandlur@gmail.com><br/>[or... srikanth_gandlur@satyam.com.]<br/><br/>I'm rubbing my hands to take a look.<br/><br/>Thanks<br/>Srikant
The download functionality works very well. The only 'problem' is, we get the output in html form and we would need to save it into txt. When I click "Click here to download file", i should be able to get a "save as" prompt and then be able to save [as txt, csv, or xls] to my local m/c, rather than getting the data on a web page.
Thanks for the solution!
Srikant
regarding your locking problem (in BEX) we just added a button to go from edit mode to display mode. Then we don't experience locking problems ...
regards
D
Thanks. The upload is working fine. But, I want to validate the data in the flat file with that of the master data tables and generate an error log file. I want to pass the error log file to the client for making required changes. Where should I write the code for these validations and error file generation?
Thanks in advance,
Kamireddy.
the data is automatically validated against master data just like in other planning functions. If you want further validations, you can configure characteristic relationships.
Regards
Marc
First of all great How-To & Blog.
I didnt have any trouble getting the file upload working.. The only issue I have is that using the example file provided my function only loads 3 records & not the 4 that are in the file.
Any ideas on this ? We are on SP11
thanks
Mark
thanks for the compliment. I'm not aware of bugs related to this. Are you sure that the records are unique? If not they are aggregated by the function.
Marc
I checked and the records are all unique.
It seems that the key figure value of the 3rd record is doubled to 46.90 in the cube.
the third record:
001K42007DS1000 EUR 23.45
the 4th record is ignored:
001K42007DS2000 USD 67.89
I outputted all of the messages and i can see that the function reads 4 records but only generated 3. Is there a way I can debug the function ?
thanks
mark
Marc
I followed all the steps, updated the class with bug fixes. I am trying with same file provided, I get "You have to enter variables before you execute", even after entering 1 or 001.
You help i appreciated.
Thanks
Ramesh
I have a load where I had a variable on company code, the load worked fine except it didn't lock the fiscal period data. I then added a variable onto Fiscal Period (single value, mandatory), I used the select dropdown to choose the one I wanted but it then came up with the error above.
Why does one variable work fine and not the other?
Thanks
Angela
BI locks the data selection based on the variables that are used in the planning sequence. These are the same locks as working with plan queries.
You can see what is locked in transaction RSPLAN > Lock Server > Locks. Please see note 928044 for more info.
I'm not aware of issues with the variables. If you can't get it to work, send me an email.
Regards
Marc
I have read that the upload application is also possible for BEX. I have seen the VBA code.
Is it correct to assume that if you click on the button a web browser will open with the screenshot you have given? I'm not so familiar with VB.
Also what is the estimated time for implementing this new feature? I would like to propose it for my customer.
Dries
Marc
We have setup roles to restrict the users at Profit Centre level (based on hierarchy authorisations). This works well for all the other Integrated Planning functions but not for File Upload. Despite the user is restricted to specific Profit Centres, he can upload them all.
I run a security trace for the analysis authorisations (RSECADMIN) and I can see that is checking ":" for Profit Centre, that is why is allowing the user to run it.
Are you able to help?
Thanks for your time.
Kind regards,
Carolina
you bring up an important point. For all characteristics that are marked as authorization relevant and are used in the upload you must create a variables and use it in the filter for the planning sequence.
Regards
Marc
we tried to implement your upload functionality. We followed the different steps and included the bug fixes as well. When we want to launch the URL in an internet explorer session we get message "requested resource not found".
Hereby the URL used:
http://sapscmbid.vpkgrp.int:50100/sap/bc/webdynpro/sap/zrsplf_file_upload?sap-language=EN&planning_sequence=FILE_SEQ&show_messages=WEXA
Do you know what we did wrong? We would like to finish this by the end of this week ...
kind regards
Dries Paesmans
Delaware consulting Belgium
+32 477 700613
try the following WebDynpro test application:
/sap/bc/webdynpro/sap/wdr_test_config?sap-language=EN
There's probably a problem in your general config not related to the upload. Please open a customer message.
Regards
Marc
I wanted to have some customization for my appln.. So I tried to copy the Class and the web interface... The standard as it is working perfectly but the copied version do not..
I know there is some piece that I am missing... Appreciate your help.
Thanks,
Omprakash
the web dynpro has a reference to the ABAP class. Go to SE80 > Web Dynpro > Select the root node of your WD Application and change the "Assistance Class" to the copy of the file upload class.
Regards,
Marc
Thank you very much for your quick reply... Have already done that...
Basically it is not reading the data ... The application initial screen is coming up and nothing else happens after I hit the upload button... Just says 0 records read, 0 records generated...
Thanks,
Om
Marc
I did all that perfectly.... The sequence that has the standard works well and the seq that i created returns all 0 records...
0 records read, 0 generated, 0 changed, 0 deleted
Omprakash
oguhan@yahoo.com
We managed to activate the upload function. However this time when we try to upload a txt file (tab delimited), the system does not upload any record. We only get message xxx records read, 0 generated, 0 changed. I've read a similar issue on this blog but didn't the solution. I'll send you the flat file by e-mail.
I also entered an incorrect value in the file to test and noticed no error is generated. I've read that all values are checked, so I presume the system does not get to reading the file?
D
I found the issue, my template was not corresponding to my function (one characteristic was missing). -> The function works now, the records are uploaded.
However I have one last question: I notice that zero records are not considered. If I upload records with value zero, nothing happens. I would like to upload zero records for two reasons:
1) if a user uploaded incorrect values and saved, we could set them back with the same tool.
2) I'm very interested in having his functionality for creating new combinations (instead of the generate combinations function). with an upload file the user easily can create its own valid and new combinations.
D
BI-IP does not conside records where all key figures are zero. One workaround is to add a dummy key figure in the aggregation level. Set this key figure to a value <> 0 in the execute method of the ABAP class (so it doesn't have to be in the file).
Marc
in which method should we add this? Is it IF_RSPLFA_SRVTYPE_IMP_EXEC~EXECUTE and where would you add it within the method?
Dries
Yes, put it right after MOVE-CORRESPONDING
is possible to do load a flat file in BPS 6.0 using SAPGUI??
I don't find the structure /1sem/_yth_data_.....
best regards
sure you can do this. There's a separate how-to guide for BPS file upload.
https://www.sdn.sap.com/irj/sdn/howtoguides
Marc
I already this How To in another versions (3.1, 3.5), but in my actual version (6.0) when I active de functions I receive this message:
The type "/1SEM/_YTH_DATA_110ZBPS_MKT" is unknown.
How I can solution this problem?
Marc
Omprakash
we Implemented your upload function for uploading records as well as generating new combinations. Both functions now work fine.
I had just one question. During the upload one can upload and undo. My question is can the upload results before saving be displayed in the workbook itself (on which the upload funcion has been added). I notice it can only be displayed in the workbook if the data has been saved. I presume displaying the results before saving (buffer functionality) will not be possible. It would be interesting for our customer, but this is just a minor detail.
regards
Dries
we have basically the same question: after the upload of the data we would like to have it displayed directly in an input template for verification of the data. Basic idea is that the user can leave the application without saving in case of incorrect data.
We also would like to have the template on the same page as the upload function.
Would this be possible?
Thanks!
Kris
the upload runs in it's own session. Therefore you have to save before the data can be seen for example in a plan query. Maybe a future version will include a better integration.
Marc
Thanks for the prompt reply!
Can we have that new version by tomorrow?
Kidding,
Thanks again.
Kris
in the mean time I did find another SDN document describing what I need: "Upload and Download Data from BPS Web Layouts
Without Using the Excel Web Component from a Web
Browser Within the Layout".
I followed the document, but there seems to be a problem with passing the data through from the bsp-application into the BPS function. Anyone who has experience on this one?
Thanks,
Kris
I was wondering as of which SP the upload tool will be available?
Dries
Marc
PS: Please refer to the fine print in the how-to guide.
First of all, Thanks you very much for providing for File Upload and Your blog is Excellent and esp. for how to Solution its great work.
While I am uploading File upload, in my text file I am having 68 records, but it is showing 69 records ((is it taking header line also)
),
File Upload: Encoding = DEFAULT
File Upload: Overwrite data = No
File Upload: Skip header line = No
File Upload: Convert fields = No
File Upload: Convert amounts = No
69 records read, 0 generated, 68 changed, 0 deleted
After successfully loading the data in to cube.
Changed Parameter - Overwrite Data as Delta mode
After sometime, removed 67 records (Same file) and Changed only one record (Changed Fiscal year / Period) and loaded only one record, while uploading the file its shows message as given below
File Upload: Encoding = DEFAULT
File Upload: Overwrite data = Delta
File Upload: Skip header line = No
File Upload: Convert fields = No
File Upload: Convert amounts = No
69 records read, 1 generated, 0 changed, 0 deleted
Why it is showing 69 Records Read, in my text file having only one record, but it is showing 69 records read.
Loaded with new Text File (having only one record), even though it shows 69 records read, 1 generated, 0 changed, 0 deleted
Thanks,
Bhima
the number of records read does not have anything to do with the file. It's the number of records read from the InfoCube/Aggregation Level. If you change a characteristics value, this is not a delta, but a new record (=1 generated).
A record is only "delta", if you keep the char.values the same and only change the key figure values.
Regards
Marc
thanks for upload function, we implemented it for our customer and it's working fine so far. We have one question concerning the flexibility of the upload file's field definition: Our customer would like to use a classic RFBILA00 R/3 extract as upload file. In the extract there are fields that are not needed for the upload into BIIP. Is there a way to ignore these fields in the upload function?
for the current version all fields must be included in the InfoProvider.
I have enhanced the next version and it allows you to use any InfoObject in the file format. Fields that are not included in the InfoProvider will simply be ignored. The next version will be published in a week.
Marc
these are great news! We need this functionality urgently and would gladly serve as beta-tester for you 😉
Can you send me an email once the new version is available?
We appreciate your help, greetings from Germany!
Martin
I'm trying to load a file to a multiprovider [with cubes for different "cities"] . I have two variables on the filter - version and one for city code. I get this error:
! Errors while executing sequence File Upload - Cost Center ( ZCC010101 )
! Context information for the other messages
! Selection for characteristic Version: Single value 1
! File Upload: Field conversion error. Field/Line: 0VERSION
! File Upload: Field conversion error. Field/Line: 0COSTCENTER
! File Upload: Field conversion error. Field/Line: 0COSTELMNT
! Planning function File Upload - Cost Center ( ZCC010101 ) ended with errors
Am i going wrong somewhere and what could be the problem?
Thanks
Srikant
I'm trying to load a file to a multiprovider [with cubes for different "cities"] . I have two variables on the filter - version and one for city code. I get this error:
! Errors while executing sequence File Upload - Cost Center ( ZCC010101 )
! Context information for the other messages
! Selection for characteristic Version: Single value 1
! File Upload: Field conversion error. Field/Line: 0VERSION
! File Upload: Field conversion error. Field/Line: 0COSTCENTER
! File Upload: Field conversion error. Field/Line: 0COSTELMNT
! Planning function File Upload - Cost Center ( ZCC010101 ) ended with errors
Am i going wrong somewhere and what could be the problem?
Thanks
Srikant
I can't say for sure, but it seems that your city code selection is not working. Otherwise you would see another message like "Selection for characteristic City Code: Single value xyz". However, the errors indicate that the values in your file do not match the file format. Pleas double check. If you can work it out, open a customer message with logon info and have it forwarded to my name.
Marc
Thanks for the excellent blog.
We have a problem implementing this, When a user tries to upload a file they aren't able to if another user is in BI( Even if the second user dose not excutes any planning funtion ).
Can you please put some light on this. Why BI is locking the data.
Thanks,
Arshad
BI locks the data selection based on the variables that are used in the planning sequence. You have to make sure that users are not using the same variable values at the same time or they will be locking each other.
These are the same locks as working with plan queries. So the upload must be separate from your planning application.
You can see what is locked in transaction RSPLAN > Lock Server > Locks. Please see note 928044 for more info.
Regards
Marc
We are using the upload function to load using a filter which has variables, the user needs to enter. The filter has additional variables which are populated in I_STEP = 2. However when the web dynpro is executed the variable exit does not seem to be called. Is there any workaround for this (other than maybe defining char relationships)?
Thanks
Shailesh
WebDynpro is not "BI" 😉 Exits are not executed. I will see if I can include it in the next version.
Marc
Is there any way I can pass the variant for a planning sequence via the URL? Like "variant=" or so on. If you have a hint maybe we can try to work something out.
Thanks
Shailesh
support for select options (multiple values), variants and personalization are on the wishlist for some future development. However, it will be 2008 before I get to this.
Marc
I am using cost center file upload, Can i lock based on costctr hierachy node variable or multiple costctr variable? Even if i define the varible in the filter section, input time it accepts only char(10) which is costctr size.
Please help me on this.
Thanks
Ramesh
When I am running the URL for file upload in BI Integrated Planning, I am getting the below message ( we have created the variable on navigational attribute):
Note
The following error text was processed in the system BWD : /BI0/OICOSTCENTER__0SALES_DIST is not a valid attribute type.
The error occurred on the application server ma1ua231_BWD_00 and in the work process 0 .
The termination type was: RABAX_STATE
The ABAP call stack was:
Method: IF_WD_CONTEXT_NODE_INFO~ADD_ATTRIBUTE of program CL_WDR_CONTEXT_NODE_INFO======CP
Method: WDDOMODIFYVIEW of program /1BCWDY/780RZKQ35587UCX2RCTU==CP
Method: IF_WDR_VIEW_DELEGATE~WD_DO_MODIFY_VIEW of program /1BCWDY/780RZKQ35587UCX2RCTU==CP
Method: DO_MODIFY_VIEW of program CL_WDR_DELEGATING_VIEW========CP
Method: MODIFY_VIEW of program CL_WDR_VIEW===================CP
Method: DO_MODIFY_VIEW of program CL_WDR_CLIENT_COMPONENT=======CP
Method: DO_MODIFY_VIEW of program CL_WDR_WINDOW_PHASE_MODEL=====CP
Method: PROCESS_REQUEST of program CL_WDR_WINDOW_PHASE_MODEL=====CP
Method: PROCESS_REQUEST of program CL_WDR_WINDOW=================CP
Method: EXECUTE of program CL_WDR_MAIN_TASK==============CP
In System we are getting Short dump as:
An exception occurred which is explained in detail below.
The exception, which is assigned to class 'CX_WD_CONTEXT', was not caught and therefore caused a runtime error.
The reason for the exception is:
/BI0/OICOSTCENTER__0SALES_DIST is not a valid attribute type.
I went through your blog. Just curious to know when can we expect Version 2 of the how-to solution will support a direct upload from Excel without the need to launch a browser.
Thanks
Kamlesh Mishra
Hi Kamlesh,<br/><br/>the current solution does not support variables on attributes. You can make the following change to the WD View FILE_UPLOAD_VIEW, Method WDDOMODIFYVIEW:<br/><br/> CONCATENATE wd_assist->n_c_variable l_s_def-vnam INTO l_attr_info-name.<br/><br/>>>>INSERT<br/> Attribute?<br/> DATA: l_iobjnm TYPE rsiobjnm.<br/> CALL FUNCTION 'RSD_IOBJNM_PARSE'<br/> EXPORTING<br/> i_iobjnm = l_s_def-iobjnm<br/> IMPORTING<br/> e_iobjnm = l_iobjnm.<br/><<<INSERT<br/><br/> Get data element<br/> CALL FUNCTION 'RSD_DTELNM_GET_FOR_IOBJ'<br/> EXPORTING<br/> i_iobjnm = l_iobjnm "<<<change<br/> IMPORTING<br/> e_dtelnm = l_dtelnm.<br/><br/>Yes, version 2 supports direct upload of a TXT or XML file from the PC without launching a browser.<br/><br/>Regards<br/>Marc
Hi Marc,Kamlesh
Add the following line:Marc
I am trying to execute a second planning function/pl. sequence, to be executed after the 'Save' button on the Webdynpro application is hit. I was hoping that some 'event' could be triggered [when I hit Save] that inturn triggers a process chain to execute the second planning sequence.
Now my problem is I am not able to locate the function module or code for the Save button. Can you suggest what I could do or where I could find the Save?
Thanks
Srikant
it's here:
SE80 > Web Dynpro > zrsplf_file_upload > views > file_upload_view > method ONACTIONON_SAVE
Marc
Hi Marc,
please implement version 2.2 of the how-to and test again. The new version will be available in the next days.
Regards
Marc
When I try to upload the file in the WebDynpro I get the followig error:
The following error text was processed in the system TJB : Syntax error in program /1BCWDY/7WI32FD7PG1PT75N4AWP==CP .
The error occurred on the application server citjb07_TJB_07 and in the work process 0 .
The termination type was: RABAX_STATE
The ABAP call stack was:
Method: CONSTRUCTOR of program CL_WDR_CLIENT_COMPONENT=======CP
Method: CONSTRUCTOR of program CL_WDR_CLIENT_APPLICATION=====CP
Method: CREATE_APPLICATION of program CL_WDR_CLIENT_APPLICATION=====CP
Method: EXECUTE of program CL_WDR_MAIN_TASK==============CP
Method: IF_HTTP_EXTENSION~HANDLE_REQUEST of program CL_WDR_MAIN_TASK==============CP
Method: EXECUTE_REQUEST of program CL_HTTP_SERVER================CP
Function: HTTP_DISPATCH_REQUEST of program SAPLHTTP_RUNTIME
Module: %_HTTP_START of program SAPMHTTP
Do you have an idea?
Thanks
Regrads,
Danijela
this is not enough info to determine what's wrong. Please send me the complete dump via email.
Regards
Marc
I have exactly same problem as Daniela mentioned earlier.
Could you please suggest how to solve this issue?
Best Regards,
Pawel
please check part 2 of the blog, section "bug fixes #3".
Regards
Marc
We have a requirement wherein we need to pass a lot of constant values during file upload.(Eg: Fiscal Year variant, Controlling area, etc) which will not be part of the upload file. These values are common for all the users.
Could you pls specify is there a way to handle this out without making any code changes? In which method do we need to write the code for it(if necessary) ?
Thanks & Best Regards
Shyam
1) Please download and install the latest version (see part 2 blog)
2) Set the constant values as selection criteria in the filter
Regards
Marc
Thanks for the solution.
I have imported the latest version 2.4 and checked it out. Behaviour is as follows:
1) Fiscal Year variant is restricted in the filter(K4) and is not part of the upload file, then the records are saved to the cube with K4 - Works perfectly.
2) Created a variable on Business Area(single value, mandatory,ready for input) and removed Business Area from the File. The records get updated to the cube with whatever value is selected for the business Area - Works fine.
4) Created a variable on Business Area( Multiple single values, ready for input) and removed Business Area from file. The system gives a message "Value of characteristic 0BUS_AREA: & is not included in the selection"
5) Created a variable on Business Area( Multiple single values, ready for input) and Business Area is part of the upload file(file contains values for 3 business areas). During the upload,if user selects 2 values of Business area, then system gives a message "Value of characteristic 0BUS_AREA: & is not included in the selection".(this error is coming because of the 3rd business area).
But if the user selects ALL the three business areas which are contained in the upload file, then it works perfectly.
Best Regards
Shyam
it works perfectly fine. If a field is not included in the upload file, the upload function will try to fill it automatically from the selection criteria. This works only if the field selection is restricted to a single value.
Secondly, all fields that are included in the file are validated against the selection criteria (filter). The upload values have to be a subset of the selection. If not, you get errors as described by you. For example, you can not upload business area 3000 if the selection was for business area 1000 and 2000 only.
Regards
Marc
Thanks for the update.
Regarding the point# 5:
If the user selects Business Area 1000 and 2000 in the selection criteria and if the file contains values for Business Area 1000,2000 and 3000, then we get the error :"Value of characteristic 0BUS_AREA: & is not included in the selection".Is this an intended behaviour? since the values selected are still a subset of the file content..
I have another question here:
I was referring to the How-to guide " How to upload a flat file in BW-BPS using the GUI approach" . Can we achieve the same functionality as described above in BPS also?
Thanks,
Shyam
yes, the selection criteria define what data will be locked and therefore what can be contained in the file.
BPS uploads work the same way.
Regards
Marc
have you thought about a next version, which supports CSV files (seperated by semicolon)? I have heard that colleagues have extended your version of the file upload. Is there an blog or any information about your future plans(next versions)?
Thanks in advance for your reply.
Best Regards,
Marcel
there are no plans to support CSV. CSV is simply not a standardized format. Please see note 1066919 for more explanation.
Regards
Marc
I have requirement to upload data from .CSV file format. What stepd ihave to follow to load the data. Imean do i need to convert the file to .TXT format and upload the file. Please suggest me ,if any procedure is there.
Regards
Ravi B
yes, save the file as txt (tab delimited). Then you can load it without problems.
Marc
I have requirement to upload csv(Comma Separated Values) into IP, is it possible to upload file or not, if yes, please provide me some reference documents or solution.
thanks in advance,
Venkatesh
The upload does not load CSV files. Please see my comment to the previous post about CSV.
Marc
which authorizations are needed to perform an upload?
I get an error saying that I need 0BI_ALL but this is an authorization which we do not want to give any user.
BR
Simon
you need to same authorizations as for running a planning function for the given aggregation level. You can create a authorization check log using transaction RSECADMIN.
Regards
Marc
Where find the ABAP Classes ZCL_RSPLF_FILE_UPLOAD
and ZCL_RSPLF_FILE_DOWNLOAD in my sistem don´t activate.
Best regards
R.A.
you have to import the transport that is included in the ZIP file. Please ask your Basis team to help you.
Regards
Marc
Thanks.
it's called "master" data for a reason ;-). You can not disable the master data check in BI-IP. However, you can of course turn off the master data table for any InfoObject. Then the system will not check it.
Regards
Marc
I have created info objects that do not have any masterdata or texts but when you load the data into the info provider that contains those objects, it still comes back with the errors saying the values for those objects are not valid. So, it therefor still does the validity check even when it is not required. If this can be corrected, this mechanism can be used to allow users to create masterdata instead of loading flatfiles via process chains etc. So it can be quite nifty if it can be resolved. Thanks again for your help.
Kind Regards.
We have been using the file upload application for some time without any problems. We are on SPS15 (BI Patch 17) and recently, we applied some SAP notes among which were the following:
Note 1121202 - Planning functions: Distribution with keys
Note 1146094 - The most current variable values in planning functions
Note 1171082 - Planning functions: Statistic events for measuring runtime
Note 1222910 - Correction of various errors in BI planning
As a result, we are now getting error RSPLS_CR 021 “Combination '&1' is invalid; Valid is '&2': Characteristic '&3'” when we use the file upload application. The combination checked is a characteristic that is part of the aggregation level and another characteristic, a navigation attribute of the first characteristic and the info cube, which however, is not part of the aggregation level.
We have other planning functions on the same aggregation level and these execute without any errors. We noticed that the file upload/download executes the planning sequence using function module RSPLSSE_PLSEQ_EXECUTE. However, the other planning functions are not part of a planning sequence and are executed as standalone planning functions with the WAD command EXEC_PLANNING_FUNCTION. We have also tested by including the planning functions into a planning sequence and executing it from the Planning Modeller and the sequence is again executed with errors and the above function module is not called.
Your help in resolving this issue will be greatly appreciated.
Thanks,
John
note 1222910 is supposed to fix the issue with RSPLS_CR 021, not cause it. Please check that the most recent version of the note is implemented.
If the issue still happens, please open a customer message so SAP support can take a look. Ideally you provide a regular planning function to reproduce the issue instead of the upload since it will be easier to debug.
Regards
Marc
Thank you for the quick response. You are right, note 1222910 fixes the problem. I thought the note was applied applied already, but it turned out that was not the case.
Regards,
John
I'm not a FPN specialist but it sounds to me like single sign-on is not configured properly between your systems. Please check the following help page.
http://help.sap.com/saphelp_nw04s/helpdata/en/43/2232900bb93fece10000000a11466f/frameset.htm
Regards
Marc
we have been using the flat file load for a while and last weekend we upgraded our BI system to 7.0 EHP1 and now the flat file load doesn't work.
The application opens, we can select the file but when we press upload it doesn't do anything.
Any hints?
Thanks
Carles
can you please clarify ,can we launch the web dynpro upload screen from a button in WAD?
Should i have to call the URL or can we call the planning sequence ?
the URL works fine in the web browser.we need to call from WAD.
Please clarify.
THANKS
NAKKEERAN
the quickest way is to use some JavaScript on the WAD button to launch the URL by hard coding the ABAP application server in the JavaScript.
If you want to avoid the hard coding, check out the following solution: https://wiki.sdn.sap.com/wiki/display/Snippets/BI+Custom+Web+Item+to+Launch+an+ABAP+Web+Dynpro
Regards
Marc
Were you able to implement - Launching Upload planning sequence in WAD ? Please, can you help me out with steps to implement the same.
Regards
Sushma
Now we're not able to define a "custom web item" as described in wiki link.
Could you please provide some step by step info about this?
Many thanks in adavance, S.
I think the documentation is quite complete with step-by-step and includes also example as well.
http://help.sap.com/saphelp_nw70/helpdata/en/47/a056340cfd3b8be10000000a421937/frameset.htm
What is missing? Where are you stuck?
Regards,
Marc
Is there a way to display -ve symbol at the start of the number instead of the end in the download file. Please let me know.
Thanks and Regards,
Phaneendra
yes, the latest version supports signs in front as well as in the end of the numbers.
Regards
Marc
Can you please suggest me how to place the -ve symbol in front of the number.
I have a requirement of download data with texts. Can I do that.
Please let me know.
Thanks for your support,
Phaneendra
please send me an email so I can give you the details.
Regards
Marc
I'm using the UPLOAD file into my WEB Planning Application with BI-IP. At the most general cases it worked very well, no problems came up...
Now we are using Characteristics relationship by exit using the CL_RSPLS_CR_EXIT_BASE class. We add some code in order to derive based on source/targe chars. The reason for this is just to derive. For eg. If you take ZROUTE as input you can derive SALES ORG and SALES OFFICE...etc..
We found that the exit never runs during the UPLOAD webdynpro call, we tried by debugging, tracing, etc but not succeeded. Can you suggest any guidence to resolve this issue?
Thanks in advance.
the upload is no different than any other planning function. The derivation exit is called for all new or changed records, if the source characteristic is in the aggregation level and the target characteristic is NOT in the aggregation level. Please double check your configuration.
Regards
Marc
when I selct the file and uploda
Sequence ZIP202AS ( ZIP202AS ) executed without errors
Planning function ZIP202AFu ( ZIP202AFU ) executed without errors
0 records read, 0 generated, 0 changed, 0 deleted
why not read data,in fact that text file have many data,
can you help me?
thanks million
regards
that is why ?
Regards
Marc
Sequence ZIP202ASD ( ZIP202ASD ) executed without errors
Planning function ZIP202AFd ( ZIP202AFD ) executed without errors
0 records read, 0 generated, 0 changed, 0 deleted
in fact ,that in my real time infocube It have many records ,why that it can not read records ?
can you help me ?
when I create a upload funcation that it also no read any records ,and no records generated ,in upload and download funcation use the same parameters and same fields .
Marc
Sequence ZIP202ASdld ( ZIP202ASDLD ) executed without errors
Planning function ZIP202AFdld ( ZIP202AFDLD ) executed without errors
0 records read, 0 generated, 0 changed, 0 deleted
this is why ?
can you help me .thanks a million
Marc
PS: Open a customer message and send me the message number via email.
you means set show_messages values WEXASI or WEXAS?
http://service.sap.com/~form/sapnet?_SHORTKEY=01100035870000082707&_SCENARIO=01100035870000000202&
Marc
Sequence ZIP202ASUpl ( ZIP202ASUPL ) executed without errors
Context information for the other messages
Selection for characteristic Calendar Year/Month: Single value 2009.06
Selection for characteristic Company: Single value AMPL
File Upload: >> Overwriting existing data...
Planning function ZIP202AFupl ( ZIP202AFUPL ) executed without errors
2 records read, 0 generated, 0 changed, 2 deleted
but when I fill compay code as same as in my text file ,system response no data read
Sequence ZIP202ASUpl ( ZIP202ASUPL ) executed without errors
Planning function ZIP202AFupl ( ZIP202AFUPL ) executed without errors
0 records read, 0 generated, 0 changed, 0 deleted
can you tell me about filter relation whith my text files data?
and how to solve this problem
example
scenario
in infocube don't have the data of 200806,
year and month is a filter,but when I open url,and input 200806 as filter values ,
system response me this error
"You have to enter variables before you execute"
then how could I solve this problem?
do you have any idea about this problem?
thanks million
regard!
wenlong
Regards
Marc
Thanks.
Ryan
do not rename the file. STMS can handle transports with the same number but from different systems.
Regards
Marc
we want to upload a flat file into BI-IP.
To make sure, that the users don't lock each other during upload, i created an exit variable.
I implemented the exit variable in filter.
Everything works fine so far.
When i start the webdynpro application, the user exit is called for i_step = 1 and i_step = 2.
For these steps also the variable name is passed into the exit. But at this time, i've not read
the upload file. This happens before selection screen will be displayed.
I modified the view, so directly after uploading
the file, i export the costcenters, that i extract from the upload file to memory id. Then i expected the exit of the variable to processed.
But the exit variable is not executed at i_step = 1 and i_step = 2, instead it is executed with i_step = 3 but the variable name is not populated, so that i can't fill the variable
properly from memory id (memory id works fine) . The result is that all the data is read and i'm not able to provide a proper lock for only the two or three costcenters i provided in the upload file.
Is there any solution for the lock issue.
Kind regards
Henner WIldeshaus
the variables are set before the planning function is executed and the file is loaded when the planning is executed. Therefore it's not possible to set the variables based on the file content.
If cost center is authorization-relevant, use an authorization variable. If not, store who can load what cost center in a custom table and read this table in your exit variable.
Regards
Marc
thanks for your last answer.
Finally i build my own webdynpro file upload, based on your template.
Everything works fine - once - but not several times.
I read my upload file, extract the costcenters and period i want to post. I transfer these values into exit variables. The locks are set according to the values in the exit variables. The data is selected properly into ~execute method into table cth_data. I import my upload data by import from memory. Data will be posted -fine so far.
Now i want to execute upload again with the next file. Now i get error message from planning function. The reason is that the exit variables are not processed again. So the planning function
will not execute exit variables with i_step = 2 if there no value given from the frontend.
The planning function gives me the error that value is not included in the selection - because
it has still the selection of the first processing.
There is an note 1249375 that describes this behaviour and provides a fix for it. The note is already in our system and i set parameter in
rsadmin according to the note. But the exit variable are executed only at i_step = 3. But i_step = 3 doesn't provide variable names anymore, it's too late. SAP says in note 1249375
it's an design error.
We opened OSS note, but the SAP employee refuses to fix 1249375, so that exit variables are processed any time a planning sequence is executed. As a reason he says we use function module RSPLSSE_PLSEQ_EXECUTE and it's not released for customers. But it doesn't have anything to woth this function module.
Can you help us to make that note working, means that exit variables are processed any time a planning sequence, that has only exit variables,
is executed.
Otherwise the user has to upload one file, close the application, open it again and uplaod next file.
Not really a good solution, i doubt that it will be accepted.
Kind Regards
Henner Wildeshaus
I did all steps in a Sandbox system, it works so far. The Web Dynpro starts and I can also Upload and Save the test data delivered in the example files.
0 records read, 6 generated, 0 changed, 0 deleted
The Request returns with 6 added and transfered Records, but when I want to view the data in the cube, I can't see any data. It is not an Authorization issue I guess, because of SAP_ALL. The System is running 7.0 SPS16.
Any Idea?
Br
Joerg
I'm trying to integrate your application in our portal but there's a problem with the URL parameters. I got an error message when I launch a preview of the iView ("Missing planning sequence as URL parameter (PLANNING_SEQUENCE"). I specified the parameters in the iView properties so they should be passed to the application.
Regards,
Pierre