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: 

Enhancements: Why is it asking for an Access Key?

Former Member
0 Kudos

Hi All,

I need your input(s) for "verification":

I have transaction code VF0F.

SAPLV60A > LV60A002:


ENHANCEMENT-POINT BEDINGUNG_PRUEFEN_002_01 SPOTS ES_SAPLV60A STATIC.
*$*$-Start: BEDINGUNG_PRUEFEN_002_01------------------------------------------------------------$*$*
ENHANCEMENT 32  OIC_SAPLV60A.    "active version
DATA: T-INVCYC LIKE TVFK-OIINVCYC1,
      V-INVCST LIKE VBUP-OIINVCST1,
      ALL-INV  TYPE C.
"START OF CHANGE 
       IF SY-TCODE EQ 'VF01'.
          IF     FPLT-FKARV EQ u2018ZG2u2019
        AND  FPLT-FAKSP EQ u201802u2019.
                 LEAVE LIST-PROCESSING.
          ENDIF.
       ENDIF.
"END OF CHANGE 
ENDENHANCEMENT.

What I did:

1. Click the WhirlPool button (Enhance)

2. Edit > Enhancement Operations > Show Implicit Enhancement Operations

3. Right Click on ENHANCEMENT 32 OIC_SAPLV60A and select Enhancement Implementation then change Implementation

4. I was able to add my logic needed

Issue: When I click on Activate Enhancements, it's asking me for an Access Key.

Correct me if I'm wrong, so does this mean that I'm not authorize to do changes on Enhancements OBJ?

Is it OK to Change that particular enhancement point right?

Thanks All.

1 ACCEPTED SOLUTION

GrahamRobbo
Active Contributor
0 Kudos

Hi Jamie,

I think the problem you are having is because you are trying to enhance an enhancement implementation.

In the code sample you posted there is an ENHANCEMENT-POINT statement. This is part of the original code placed there by the developer to identify an explicit place where enhancement implementations can be placed.

Following this is the code snippet...

ENHANCEMENT 32  OIC_SAPLV60A.    "active version
DATA: T-INVCYC LIKE TVFK-OIINVCYC1,
      V-INVCST LIKE VBUP-OIINVCST1,
      ALL-INV  TYPE C.
ENDENHANCEMENT.

...which is an enhancement implementation. This has been placed there by another development team. You have attempted to change this enhancement by adding your code to it. The reason you are being asked for an access key is because you are trying to change this enhancement implementation - not because you are trying to change the original program.

Rather than changing this enhancement implementation you should be creating your own enhancement implementation.

Cheers

Graham Robbo

3 REPLIES 3

Former Member
0 Kudos

Hi All,

Checking this wiki [Create Implicit Enhancement|http://wiki.sdn.sap.com/wiki/display/ABAP/HowToDoImplicitEnhancement], I was able to it properly in FM POPUP_TO_INFORM


FUNCTION POPUP_TO_INFORM.
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""$"$\SE:(1) Function Module POPUP_TO_INFORM, Start                                                                                A
*"----------------------------------------------------------------------
*"Lokale Schnittstelle:
*"       IMPORTING
*"             TITEL
*"             TXT1
*"             TXT2
*"             TXT3 DEFAULT SPACE
*"             TXT4 DEFAULT SPACE
*"----------------------------------------------------------------------

  RSTABL-TITLE  = TITEL.
  RSTABL-TXT1 =   TXT1.
  RSTABL-TXT2 =   TXT2.
  RSTABL-TXT3 =   TXT3.
  RSTABL-TXT4 =   TXT4.

  CALL SCREEN 201 STARTING AT 1 3
                  ENDING   AT 80 8.

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""$"$\SE:(2) Function Module POPUP_TO_INFORM, End                                                                                A
*$*$-Start: 9999--------------------------------------------------------------------------------$*$*
ENHANCEMENT 1  ZTEST.    "inactive version
*
ENDENHANCEMENT.
*$*$-End:   9999--------------------------------------------------------------------------------$*$*
ENDFUNCTION.

but in LV60A002(TRAN VF01), when I create Implicit Enhancement, the declaration type I created does not appear as what's happening in the FM above which I just did.

Thanks.

GrahamRobbo
Active Contributor
0 Kudos

Hi Jamie,

I think the problem you are having is because you are trying to enhance an enhancement implementation.

In the code sample you posted there is an ENHANCEMENT-POINT statement. This is part of the original code placed there by the developer to identify an explicit place where enhancement implementations can be placed.

Following this is the code snippet...

ENHANCEMENT 32  OIC_SAPLV60A.    "active version
DATA: T-INVCYC LIKE TVFK-OIINVCYC1,
      V-INVCST LIKE VBUP-OIINVCST1,
      ALL-INV  TYPE C.
ENDENHANCEMENT.

...which is an enhancement implementation. This has been placed there by another development team. You have attempted to change this enhancement by adding your code to it. The reason you are being asked for an access key is because you are trying to change this enhancement implementation - not because you are trying to change the original program.

Rather than changing this enhancement implementation you should be creating your own enhancement implementation.

Cheers

Graham Robbo

davestevenson01
Explorer
0 Kudos

I had a similar scenario where I was trying to create an explicit enhancement, and it asked me for an object access key. In my case, I'd made the mistake of not starting my enhancement name with a 'Z'. And therefore I was needing the access key as I was creating an object in the SAP namespace.