Skip to Content
0
Former Member
Dec 01, 2006 at 07:58 PM

Hi, Can I simply this code.. according to performance

44 Views

Hi,

Could you any one help me in simplyfying or arranging in right way...

LOOP AT GT_CRED WHERE USERNAME IN SO_ERNAM AND

UDATE IN SO_ERDAT.

IF ( GT_CRED-TABNAME = 'EKKO' ) OR ( GT_CRED-TABNAME = 'EKPO' )

OR ( GT_CRED-TABNAME = 'EINKBELEG').

IF ( GT_CRED-FNAME = 'WAERS' ) OR ( GT_CRED-FNAME = 'EKGRP' )

OR ( GT_CRED-FNAME = 'PROCSTAT' ) OR ( GT_CRED-FNAME = 'NETWR' )

OR ( GT_CRED-TABNAME = 'EINKBELEG' ).

  • To pick the PO number

GT_OUT-EBELN = GT_CRED-OBJECTID+0(10).

  • To pick the PO Line items

IF GT_CRED-TABNAME = 'EINKBELEG'.

GT_OUT-EBELP = GT_CRED-TABKEY+10(5).

ELSE.

GT_OUT-EBELP = GT_CRED-TABKEY+13(5).

ENDIF.

  • To pick the change date, User name, Table name & Field Name

GT_OUT-ERDAT = GT_CRED-UDATE.

GT_OUT-ERNAM = GT_CRED-USERNAME.

GT_OUT-TABNAME = GT_CRED-TABNAME.

GT_OUT-FNAME = GT_CRED-FNAME.

  • To Pick Old & New value If the Currency is changed

IF GT_CRED-FNAME = 'WAERS'.

GT_OUT-OLDWAERS = GT_CRED-F_OLD+0(3).

GT_OUT-NEWWAERS = GT_CRED-F_NEW+0(3).

  • To pick New value if the Purchasing Group is changed

ELSEIF GT_CRED-FNAME = 'EKGRP'.

GT_OUT-OLDGRP = GT_CRED-F_OLD+0(3).

GT_OUT-NEWGRP = GT_CRED-F_NEW+0(3).

ENDIF.

  • To Pick Old & New value If the Version is changed

IF GT_CRED-FNAME = 'PROCSTAT'.

GT_OUT-OLDVN = GT_CRED-F_OLD+0(5).

GT_OUT-NEWVN = GT_CRED-F_NEW+0(5).

ENDIF.

  • To Pick Old & New value If the Order value is changed

IF GT_CRED-FNAME = 'NETWR'.

GT_OUT-OLDAMT = GT_CRED-F_OLD+0(16).

GT_OUT-NEWAMT = GT_CRED-F_NEW+0(16).

ENDIF.

APPEND GT_OUT.

CLEAR GT_OUT.

ENDIF.

ENDIF.

ENDLOOP.

Regards

Reddy