cancel
Showing results for 
Search instead for 
Did you mean: 

why OSS Notes needs to make manual changes, other than SNOTE ?

Former Member
0 Kudos

Hi SAP Gurus,

Please, let me know the reasons for the Manual application of the OSS Notes.

what would be the impact on the other systems in the system landscape., i am sure the same changes will propagated to other systems in the landscape.

Basically i would like to know the reasons/situations for manual application of OSS Note .

Thanks in Advance

Regards

Vijay

Accepted Solutions (1)

Accepted Solutions (1)

TomCenens
Active Contributor
0 Kudos

Dear Kumar

Automatic changes through snote are changes that are done on applications (programming code). If the note cannot find the blocks defined, it might be possible you still have to manually check the coding and put the correct lines in the correct place.

The correction instructions work with blocks, possible blocks:

1) Context block

A context block defines the position in the coding where the next block (either delete block or insert block) is located

2) Delete block

A delete block can occur right after a context block and is stated to be deleted

3) Insert block

A insert block can occur right after a context block and is stated to be inserted

If a block cannot be found, the correction instruction will not be applied automatically and a yellow or even red sign will appear when you process the note in snote.

In that case you will have to maintain it manually.

For example (just example coding is not complete abap coding)

REPORT RSDB4060 MESSAGE-ID D4 LINE-SIZE 100 NO STANDARD PAGE HEADING.
*---------------------------------------------------------------------*
* RSDB4060                                                            *
*                                                                     *
* Main part of transaction DB02 on AS/400                             *
*                                                                     *
* Initial screen is dynpro 0110 with pf-status 0100 and titlebar 001. *
*                                                                     *
* The information displayed on dynpro 0110 is collected by function    *
* module DB02_DB4_GET_INFO. How this works is documented in the       *
* function module documentation.                                      *
*                                                                     *
*                                                                     *
*---------------------------------------------------------------------*
DATA: DB02_DISPLAY_INFO LIKE DB02INFDB4,    "displayed info on dynp 0110
      OK_CODE LIKE SY-UCOMM,           "function selected on dynpro
      SUBRC   LIKE SY-SUBRC.

*
START-OF-SELECTION.
  IF SY-DBSYS(3) <> 'DB4'.
    MESSAGE I040(D4) WITH SY-REPID.
    EXIT.
  ENDIF.
  PERFORM GET_DISPLAY_INFO CHANGING DB02_DISPLAY_INFO SUBRC.
  IF SUBRC = 8.       "consistency checkfailed, exit transaction
    EXIT.
  ENDIF.

END-OF-SELECTION.
  CALL SCREEN '0110'.

Now an oss note has to following blocks

CONTEXT BLOCK

IF SY-DBSYS(3) <> 'DB4'.

MESSAGE I040(D4) WITH SY-REPID.

EXIT.

ENDIF.

DELETE BLOCK

PERFORM GET_DISPLAY_INFO CHANGING DB02_DISPLAY_INFO SUBRC.

IF SUBRC = 8. "consistency checkfailed, exit transaction

EXIT.

ENDIF.

In above case, snote will search for the context block inside the program coding. Once found, the insert or delete block (in this case delete block) will be applied on the coding.

Note that the delete block also has to be the exact same coding that is present. Obviously, coding that does not exist cannot be deleted and in that case you would have to edit it manually.

The result will be:

REPORT RSDB4060 MESSAGE-ID D4 LINE-SIZE 100 NO STANDARD PAGE HEADING.
*---------------------------------------------------------------------*
* RSDB4060                                                            *
*                                                                     *
* Main part of transaction DB02 on AS/400                             *
*                                                                     *
* Initial screen is dynpro 0110 with pf-status 0100 and titlebar 001. *
*                                                                     *
* The information displayed on dynpro 0110 is collected by function    *
* module DB02_DB4_GET_INFO. How this works is documented in the       *
* function module documentation.                                      *
*                                                                     *
*                                                                     *
*---------------------------------------------------------------------*
DATA: DB02_DISPLAY_INFO LIKE DB02INFDB4,    "displayed info on dynp 0110
      OK_CODE LIKE SY-UCOMM,           "function selected on dynpro
      SUBRC   LIKE SY-SUBRC.

*
START-OF-SELECTION.
  IF SY-DBSYS(3) <> 'DB4'.
    MESSAGE I040(D4) WITH SY-REPID.
    EXIT.
  ENDIF.
END-OF-SELECTION.
  CALL SCREEN '0110'.

It is possible the coding does not match at all, in that case it is very likely that other oss notes need to be applied first. To find those you can use the missing coding line and try searching in http://service.sap.com/notes to find the relevant note that has to be applied.

Changes like creating a new field, customizing settings, those are done manually using the explanation given in the note.

For example you have a dev --> acc --> prod environment

You have a note that states you need to do manual actions and then a correction instruction that can be applied using snote you need to do the following:

First apply the manual change in dev (depending on what type of change a transport request might be created)

Next apply the notes correction instructions using snote (this will prompt for a transport request, create a new transport request)

Now in acc you will need to either apply the manual changes again (in case they are not maintained in a transport request) and then import the transport request that was created by applying the correction instructions.

The same as acc is done for production.

Kind regards

Tom

Answers (0)