Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

FM in background task with function module that was not remote enabled.

dave_szurszewski
Discoverer
0 Kudos
194


Hello All,

Code was moved to production that was calling a non remote enabled FM in background task.    By the time the error was caught over 15000 abends occurred.    These 15000 background calls are now in tables ARFCSSTATE and ARFCSDATA but cannot be processed successfully.   We plan to set the offending function module to remote function and transport.    My question is,  since it is a few days since these calls went into error what affect does it have on the logical unit of work?  is it possible we will be updating with old data?

Thanks in advance,  Dave

1 ACCEPTED SOLUTION

paul_bakker2
Active Contributor
0 Kudos
64

Hi,

Yes, you will be updating with old data - of course! But that may not be a bad thing, if the abends stopped all subsequent updates as well.

You might want to replicate these types of errors in Test (I assume the abends also happen there) and see what happens when you try to re-execute the ARFC updates after the fix.

It's amazing that this FM issue wasn't noticed in the Test system. Or was a transport missed when it moved to Production?

cheers

Paul

4 REPLIES 4

paul_bakker2
Active Contributor
0 Kudos
65

Hi,

Yes, you will be updating with old data - of course! But that may not be a bad thing, if the abends stopped all subsequent updates as well.

You might want to replicate these types of errors in Test (I assume the abends also happen there) and see what happens when you try to re-execute the ARFC updates after the fix.

It's amazing that this FM issue wasn't noticed in the Test system. Or was a transport missed when it moved to Production?

cheers

Paul

0 Kudos
64

Hi Paul,

Yes, it was amazing.   This occurred due to flawed test scenarios.    The call to the in background task FM was in material master enhancement spot.    transactions MM01 and MM02, also BAPI_MATERIAL_SAVEDATA runs through the same enhancement.

Testers ran MM01 and MM02 these completed without error, the background call abended but is not apparent to the user.  They moved to production and a mass update program that calls BAPI_MATERIAL_SAVEDATA was used to update 15000 materials.    High number of abends catches everyones attention!   The program and all calls to BAPI_MATERIAL_SAVEDATA completed without error.  Now we have 15,322 entries that the system is trying to process!

We are setting up the scenario in the Test system and verifying results prior to moving the fix to Production.   I will post our results

Regards, Dave

0 Kudos
64

Well checking SM58, ST22, WE06 and SM21 during integration tests is not a bad idea, no alert management in system, and nobody checked that final data was wrong in database, no  test scenario writing activity?

Then it depends on what you tried to do in the theorically RFC enabled FM, if that's just new records (e.g. add some plant to material) or filling customer table then no problem, else some data may no longer be changed or have already been changed with more recent value, e.g. once movement or purchase order is created on material reference.

Regards,

Raymond

0 Kudos
64

Setting function module remote enabled resolved the issue.   As the FM was used to update a few characteristics in classification based on basic data fields there was no issue with incorrect or old data.  we have maintenance reports that were used to correct the data.

Regards, Dave