Skip to Content
avatar image
Former Member

What happens with custom enhacements or "Z Code" after an update?

Hi community

I have one doubt, we have performed an update in our SAP CRM System from sp7 to SP18.

Right now we are in phase of "test" and we are getting some dumps and errors but the majority of this Issues are related with customs enhacements or "Z code" so we are doing the necesary to fix code to solve problems.

My question is if before the update could we have done something to save or protect this enhacements or "Z Code" to avoid this errors after update?

I mean developers are saying that this situation of fix code (just related with enhacements or Z Code) after update is not normal and I'm not sure if this is true.

If someone here have some experience with this scenario could help us to understand what is the normal process about this kind of situations?

Should we have performed a previous activity before update to avoid errors with custom or z enhacements?

It is a normal process to fix code Z that not match anymore with standard code after update?

Does exist a tool, report, service etc, that help to find and solve bugs or issues with custom enhacements or Z code, consequence of update?

Best regards


Add comment
10|10000 characters needed characters exceeded

  • First of all, what kind of dumps do you have? and the reason? (It would be interesting to hear from your developers what they have to say!)

  • Couldn't pass a chance to shamelessly promote my old blog on the subject. In general no, it's not normal to get many errors. I'd be curious what exactly caused the errors in your case.

  • Former Member

    This is an example:

    we are getting next dump:

    Error in the ABAP Application Program The current ABAP program "CL_BSP_PAGE_BASE==============CP" had to be terminated because it has come across a statement that unfortunately cannot be executed.

    The following syntax error occurred in program "CL_CPG_MAIN_OPOVERVIEW_IMPL===CP " in include "ZMKTG_CAMPANAS================E " in line 22: "Field "LR_CMP" unknown

    So the problem is with the class named: CL_CPG_MAIN_OPOVERVIEW_IMPL===CP this class has a method named: EH_ONSAVE, if we check sintax of this program is failing, before the update this method was working correctly, this method has an enhacement example:

    after the update a standard variable named: lr_cmp dissapeared and the Enhacement was using it that's the reason why now the standard method with enhacement is failing, so now we have to adecuate the code to solve this situation.

    Question here is what's the best practice to avoid this situations after an update?

    Best Regards

    eh-onsave.png (41.5 kB)
  • Get RSS Feed

3 Answers

  • Best Answer
    avatar image
    Former Member
    Jan 18, 2017 at 07:24 PM

    Hi Alfredo,

    Normally any update/upgrade brings in new functionalities and many changes. We should do an impact analysis before doing any update/upgrade.

    Especially for custom objects, we have many third party tools which do an impact analysis before we do an upgrade and process ends with corrections to all impacted objects (post technical upgrade activity). So we extract all custom objects before upgrade and we use these tools to fix them and create a TR (Ex), and then import this TR immediate after technical upgrade this is how we bring in system to near zero issues after upgrade. And these tools will definitely have their own cost to use.


    Harish Karra

    Add comment
    10|10000 characters needed characters exceeded

  • Jan 18, 2017 at 07:45 PM

    All documentation aside, regression tests will ultimately point out if code such as Enhancements and Modifications are still active / executed. You developers and testers should be aware that some testing will always be involved.

    EDITED : Is this the right "Primary Tag"? Could you please change it to an Software Lifecycle / Enhancement / Upgrade related Tag?

    Add comment
    10|10000 characters needed characters exceeded

  • Jan 25, 2017 at 10:44 PM

    Shouldn't we see these kind of errors in the log of the ABAP load regeneration if we run SGEN with mode "regenerate existing loads" ?

    Add comment
    10|10000 characters needed characters exceeded