cancel
Showing results for 
Search instead for 
Did you mean: 

"500 SAP Internal Server Error" while execuing the Write back badi

Former Member
0 Kudos

Hello Experts,

I am writing a write back badi to disaggregate the amount to be saved at parent to its leaf nodes.

When I am doing so the logic is working perfectly fine, and the amount is getting disaggregated to its leaf node but for some reason the badi is getting triggered for the second time and then giving some ABAP dump.

Working on BPC 10.0

Below is the message pop up

Internal Server Error

Details are as below

500 SAP Internal Server Error

ERROR: Data objects in Unicode programs cannot be converted. (termination: RABAX_STATE)

Thanks in advance for the help.

Regards

Rohan

Accepted Solutions (0)

Answers (2)

Answers (2)

former_member186338
Active Contributor
0 Kudos

Hi Rohan,

You have to ensure that your write back badi process only parents and properly clear ct_data for parents at the end.

Vadim

P.S. Base members have to pass the badi code unchanged...

Former Member
0 Kudos

Hello Vadim,

I have cleared the Ct_ARRAY table of the data posted at parents and only data with bas member is present.

At the same time when the BADI in default logic is getting triggered for the second time CT_ARRAY is holding data at base members which is same which I had populated in the first run of the BADi.

Why this second run of BADI.

Regards

Rohan

former_member186338
Active Contributor
0 Kudos

Hi Rohan,

First data is written to cube - the first run of write back badi.

Then default.lgf will read scope of the incoming data and calculations in script logic will write data second time - second run of write back!

Please show your default.lgf!

Vadim

Former Member
0 Kudos

Hello Vadim,

Are you saying i dont have to call the badi in Default.lgf?

I will share with you my default logic in some time...

I had one more doubt, cant i make my write back badi Input template specific. As i have 3 Input templates in the said model and i want this particular write back badi to trigger only when one if the input template is used to save data.

Regards

Rohan

former_member186338
Active Contributor
0 Kudos

You can't call write back badi in the script - it's automatically called at each data write to the cube!!!

"I had one more doubt, cant i make my write back badi Input template specific. As i have 3 Input templates in the said model and i want this particular write back badi to trigger only when one if the input template is used to save data." - bad idea, write back badi is not template specific! It has to use the same logic for all templates etc...

Vadim

Former Member
0 Kudos

Hello Vadim,

thanks for suck quick response.

Default.LGF for the said Model is blank.

Secondly, is there anyway to use any other type of BADI for INput template specific logic.

Regards

Rohan

former_member186338
Active Contributor
0 Kudos

Hi Rohan,

You have to rethink you requirements

Write back badi is a single logic for all models defined in badi filter.

Default.lgf is a single script per model.

If you want to differently process data send by different templates you can use DM package launched by some button by user in the specific template.

Vadim

Former Member
0 Kudos

Thanks a lot...... I was also thinking on the same lines.....

Regards

Rohan

former_member186338
Active Contributor
0 Kudos

In many cases it's also possible to have specific write back logic applicable only to some members selected by property etc... For example we use write back badi to round data saved to cube based on custom property ROUNDING...

Vadim

former_member200327
Active Contributor
0 Kudos

Hi Rohun,

Do you have DEFAULT.LGF for that Model. If you do it will go through that BADI again.

Regards,

Gersh