Skip to Content

BPC 10.1 (BW 7.5 SP05) : Restore journals package does not read everything

Nov 08, 2017 at 05:59 PM


avatar image

Hi BPC experts,

As the title implies, I used DM package "Restore Journals" but it does not load everything from the uploaded flat file. I have solved my previous issue in this post by implementing sap notes :

Below is the flat file (in JRN format and opened from a TXT format) :

SAP_IFRS,Consolidation,000001,0000000001,Import nr 1,TRUONG,,,,S,-1,,-1,-1,,,,,,AE02,INPUT,LC,S_NONE,2016.12,ACTUAL,E500070,F15,I_NONE,00000001,22223.0000000,,
SAP_IFRS,Consolidation,000001,0000000001,Import nr 1,TRUONG,,,,S,-1,,-1,-1,,,,,,AE02,INPUT,LC,S_NONE,2016.12,ACTUAL,E500091,F01,I_NONE,00000002,,22223.0000000,
SAP_IFRS,Consolidation,000001,0000000002,%COPYTO #1%Import nr 1,,,,0 ,S,-1,,-1,-1,,,,,,AE02,FS_ADJ,LC,S_NONE,2016.12,ACTUAL,P726010,F20,I_NONE,00000001,2221.0000000,,
SAP_IFRS,Consolidation,000001,0000000002,%COPYTO #1%Import nr 1,,,,0 ,S,-1,,-1,-1,,,,,,AE02,FS_ADJ,LC,S_NONE,2016.12,ACTUAL,P729000,F30,I_NONE,00000002,,2221.0000000,
SAP_IFRS,Consolidation,000001,0000000003,Import test,TRUONG,,,,S,-1,,-1,-1,,,,,,LU02,FS_ADJ,LC,S_NONE,2016.12,ACTUAL,P804000,F20,I_NONE,00000001,2222.0000000,,
SAP_IFRS,Consolidation,000001,0000000003,Import test,TRUONG,,,,S,-1,,-1,-1,,,,,,LU02,FS_ADJ,LC,S_NONE,2016.12,ACTUAL,P801000,F30,I_NONE,00000002,,2222.0000000,
SAP_IFRS,Consolidation,000001,0000000003,Import test,TRUONG,,,0 ,S,-1,,-1,-1,,,,,,LU02,FS_ADJ,LC,S_NONE,2016.12,ACTUAL,L001050,F20,I_NONE,00000001,2222.0000000,,
SAP_IFRS,Consolidation,000001,0000000003,Import test,TRUONG,,,0 ,S,-1,,-1,-1,,,,,,LU02,FS_ADJ,LC,S_NONE,2016.12,ACTUAL,L001060,F30,I_NONE,00000002,,2222.0000000,
SAP_IFRS,Consolidation,000001,0000000004,Import test,TRUONG,,,,S,-1,,-1,-1,,,,,,AE02,INPUT,LC,S_NONE,2016.12,ACTUAL,A101000,F80,I_NONE,00000001,33.9000000,,
SAP_IFRS,Consolidation,000001,0000000004,Import test,TRUONG,,,,S,-1,,-1,-1,,,,,,AE02,INPUT,LC,S_NONE,2016.12,ACTUAL,A000100,F30,I_NONE,00000002,,33.9000000,
SAP_IFRS,Consolidation,000001,0000000005,XXX,TRUONG,,,0 ,S,-1,,-1,-1,,,,,,AE02,FS_ADJ,LC,S_NONE,2016.12,ACTUAL,E900100,F20,I_NONE,00000001,5.0000000,,
SAP_IFRS,Consolidation,000001,0000000005,XXX,TRUONG,,,0 ,S,-1,,-1,-1,,,,,,AE02,FS_ADJ,LC,S_NONE,2016.12,ACTUAL,P900000,F30,I_NONE,00000002,,5.0000000,

There are several issues :

1) It is supposed to generate 5 journals ID (see JRN_ID). However, it only creates one (and therefore merges all the journals in one).

2) It only reads several lines, not all of them. To be more accurate, it records account P801000, L001060, E900100 and P900000 from the flat file. I do not see any kind of logic about why the system would specifically choose those lines.

3) P801000 and L001060 are entries for LU02 entity while the 2 others for AE02 entity. ENTITY Dimension is set as Header dimension in one unique journal template but BPC does not make the difference and still puts them both in one journal (even if JRN_ID separates them).

4) I also tried to create 2 journals from the web client > export journal package > clear journal table package > upload exported journals > Restore journals. The system only creates one journal ID and only reads several lines.

I cannot upgrade the system unfortunately but if someone has met this kind of issue, please share your solution.

Thank you in advance.


10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

2 Answers

Best Answer
Vadim Kalinin Nov 08, 2017 at 06:39 PM
Show 11 Share
10 |10000 characters needed characters left characters exceeded

Hello Vadim,

Thank you for those notes, it solves all the points mentioned above.

I have one question about the new behaviour though :

Let's say I imported the file in my previous message (there are 5 journal entries).

If I use another flat file to be imported, it will overwrite the previously imported 5 journals no matter what ?

I know that restore journal package is not supposed to be a classic import package but that is what the customer actually wants to have.


Just test yourself with different journal ID's!


I am asking this question because I have tested it beforehand :)

SAP_IFRS,Consolidation,000001,0000000006,Import nr 2,TRUONG,,,,S,-1,,-1,-1,,,,,,AE02,ADJ_LC_M,LC,S_NONE,2016.11,ACTUAL,E500070,F15,I_NONE,00000001,22223.0000000,,
SAP_IFRS,Consolidation,000001,0000000006,Import nr 2,TRUONG,,,,S,-1,,-1,-1,,,,,,AE02,ADJ_LC_M,LC,S_NONE,2016.11,ACTUAL,E500091,F01,I_NONE,00000002,,22223.0000000,
SAP_IFRS,Consolidation,000001,0000000007,Import nr 3,TRUONG,,, ,S,-1,,-1,-1,,,,,,AE02,ADJ_GC_M,LC,S_NONE,2016.12,ACTUAL,P726010,F20,I_NONE,00000001,2221.0000000,,
SAP_IFRS,Consolidation,000001,0000000007,Import nr 3,TRUONG,,, ,S,-1,,-1,-1,,,,,,AE02,ADJ_GC_M,LC,S_NONE,2016.12,ACTUAL,P729000,F30,I_NONE,00000002,,2221.0000000,
SAP_IFRS,Consolidation,000001,0000000008,Import test4,TRUONG,,,,S,-1,,-1,-1,,,,,,LU02,FS_ADJ,LC,S_NONE,2016.12,ACTUAL,P804000,F20,I_NONE,00000001,2222.0000000,,
SAP_IFRS,Consolidation,000001,0000000008,Import test4,TRUONG,,,,S,-1,,-1,-1,,,,,,LU02,FS_ADJ,LC,S_NONE,2016.12,ACTUAL,P801000,F30,I_NONE,00000002,,2222.0000000,
SAP_IFRS,Consolidation,000001,0000000008,Import test4,TRUONG,,, ,S,-1,,-1,-1,,,,,,LU02,FS_ADJ,LC,S_NONE,2016.12,ACTUAL,L001050,F20,I_NONE,00000001,2222.0000000,,
SAP_IFRS,Consolidation,000001,0000000008,Import test4,TRUONG,,, ,S,-1,,-1,-1,,,,,,LU02,FS_ADJ,LC,S_NONE,2016.12,ACTUAL,L001060,F30,I_NONE,00000002,,2222.0000000,
SAP_IFRS,Consolidation,000001,0000000009,Import test4,TRUONG,,,,S,-1,,-1,-1,,,,,,AE02,INPUT,LC,S_NONE,2016.12,ACTUAL,A101000,F80,I_NONE,00000001,33.9000000,,
SAP_IFRS,Consolidation,000001,0000000009,Import test4,TRUONG,,,,S,-1,,-1,-1,,,,,,AE02,INPUT,LC,S_NONE,2016.12,ACTUAL,A000100,F30,I_NONE,00000002,,33.9000000,
SAP_IFRS,Consolidation,000001,0000000010,XXXX,TRUONG,,, ,S,-1,,-1,-1,,,,,,AE02,FS_ADJ,LC,S_NONE,2016.12,ACTUAL,E900100,F20,I_NONE,00000001,5.0000000,,
SAP_IFRS,Consolidation,000001,0000000010,XXXX,TRUONG,,, ,S,-1,,-1,-1,,,,,,AE02,FS_ADJ,LC,S_NONE,2016.12,ACTUAL,P900000,F30,I_NONE,00000002,,5.0000000,

I tried to use a second flat file with journal ID from 6 to 10 and changed several dimension members, it will overwrite the previous 5 imported journals.


Then it looks like the sequence for RESTORE journals is:

1. Clear all journals

2. Create new journals based on text file.

"restore journal package is not supposed to be a classic import package" - correct!

You can write you own badi in abap based on restore journal package.


P.S. Look on class: CL_UJJ_JRN_MGR



Is there a BADI name you could provide or a something similar to the requirement ? Apologies if the question seems silly but no ABAP developper is currently available...


Sorry, but without ABAP developer you can do nothing!

Show more comments

But there is something strange here : By implementing sap note 1801497, Restore journal package clears all the journals. However, if I remove the sap note setting, this "clearing" isn't done anymore but the system cannot correctly read the flat file.

Maybe the focus should be to correct the reading behaviour instead of the clearing behaviour ? (and therefore remove the setting from the sap note)


May be in future SAP will create a new note. Today you have to develop in abap.

It's not a reading issue, the replacement is done in abap code.

Vadim Kalinin Nov 09, 2017 at 05:58 PM

Just one extra question - what do you want to achieve "loading" journals from text file?

Why do you need journals at all?

Show 7 Share
10 |10000 characters needed characters left characters exceeded

Customer actually wants to load plenty of journals every day instead of going to the web client and post entries one by one.

Therefore, overwrite function from sap note 1801497 does not fit the requirement but if I remove this function, the package "restore journal" misreads the flat file as mentioned in my first message (merging all the journals ID in one, reading only some lines, etc.).


But why journals? Why not import transaction data to the cube? Use dedicated AUDITTRAIL ID for this load...


Customer has the specific requirement to keep as much details as possible on entries thanks to header description from journals and remark by line. Those details are all about IFRS adjustments.

Furthermore, one thing they absolutely want to avoid is if you have 2 entries with the same dimensions but only with a different amount, it will be aggregated and the information that there were 2 different amounts is therefore lost.


"2 entries with the same dimensions but only with a different amount" - reasonable!

To summarize:

Customer don't like to use BPC web interface to post journals and want you to develop different interface:

Excel data entry and import of text file generated from Excel template - is it correct?

Then you have to develop in ABAP.


Exactly, an excel template was made to fit the flat file structure for the package restore journal.

Thank you for confirming !

Our developer made a new class ZCL_UJJ_JRN_MGR.

How do I use it for BPC ? I am reading how to create a custom process type from

Is it the correct way ?


Look on the class: CL_UJD_BPC_JOURNAL used in process type: BPCJORNAL


It will use method: RESTORE_JRNS of class: CL_UJJ_JRN_MGR


P.S. Another option without custom process chains:

You can create a custom logic badi and launch it using script logic with standard process chain.

This badi will have a parameter: file path to import.

Inside badi code you will read file like in CL_UJD_BPC_JOURNAL RESTORE_JOURNAL

And perform import.