Skip to Content
0
Former Member
Nov 12, 2009 at 05:32 PM

Issue with ME_PROCESS_PO_CUST~FIELDSELECTION_HEADER.

634 Views

Hi,

Below is my code

method IF_EX_ME_PROCESS_PO_CUST~FIELDSELECTION_HEADER.


DATA: l_persistent TYPE mmpur_bool.

  FIELD-SYMBOLS: <fs> LIKE LINE OF ch_fieldselection.

* if the item is already on the database, we disallow to change field badi_bsgru
  l_persistent = im_HEADER->is_persistent( ).

  IF l_persistent EQ mmpur_yes.
    READ TABLE ch_fieldselection ASSIGNING <fs> WITH TABLE KEY metafield = mmmfd_cust_03.
    IF sy-subrc IS INITIAL.
      <fs>-fieldstatus = '*'. " Display
      endif.
      else.
 READ TABLE ch_fieldselection ASSIGNING <fs> WITH TABLE KEY metafield = mmmfd_cust_03.
    IF sy-subrc IS INITIAL.
      <fs>-fieldstatus = '+'. " Input
    ENDIF.
ENDIF.

The above code works fine for ME21N (sINCE l_persistent NE mmpur_yes) AND CUTOM FIELD ACTS AS INPUT FIELD

Also works fine for ME23N (sINCE l_persistent EQ mmpur_yes) AND CUSTOM FIELD ACTS AS OUTPUT FIELD

THE PROBLEM IS WITH ME22N in this case it acts as output field instead of acting as input field

please let me know if i have missed any trick in here.