Skip to Content
avatar image
Former Member

Exit of IDOC PEXR2002 to change the data in the segment E1IDKU3-PAIUZAWE

Hi Experts,

I have a requirement in which I need to change the value in the field PAIUZAWE of segment E1IDKU3.

Basic type of IDOC is PEXR2002 and Message type is PAYEXT.

For eg: if the value in the field is 'PP', I need to change it to '110' in the payment file generated at the application server path.

Thanks for your response.



Add comment
10|10000 characters needed characters exceeded

  • Follow
  • Get RSS Feed

2 Answers

  • Jan 13, 2012 at 08:41 AM

    EXIT_SAPLIEDP_902 is the user exit to add/modify segments in PAYEXT IDoc. This is called for each payment sent in the IDoc.

    You can read and modify the segment like below within this user exit

    LOOP AT edidd_table WHERE segnam = 'E1IDKU3'.
      CLEAR ls_e1idku3.
      ls_e1idku3 = edidd_table-sdata.
      IF ls_e1idku3-paiuzawe = 'P1'.
        ls_e1idku3-paiuzawe = '101'.
      edidd_table-sdata = ls_e1idku3.
      MODIFY edidd_table.

    For more info on how to debug and such see my post here -> [User exits in F110 and how to debug them|error-generating-idoc-transaction-f110-segment-e1i]

    Add comment
    10|10000 characters needed characters exceeded

    • DATA: ls_e1idku3 TYPE E1IDKU3.

      I just notice E1IDKU3-PAIUZAWE is a two character field. So my friend even if you can update the value will get truncated to two digits.

      You either need to create an IDoc extension and extend this segment with a 3 digit field to hold the value or you need to instruct your EDI / translation team to translate this value to 101 in the translator,

  • avatar image
    Former Member
    Jan 13, 2012 at 08:46 AM

    Hi Ajay,

    There are 4 inbound function modules to process this idoc type. Based on the Inbound function module you are using you have to find an exit which will suit your requirement.

    For FM BKK_IDOC_PAYEXT_INPUT use the exit---->'EXIT_SAPLFBQ1_001'.

    Add comment
    10|10000 characters needed characters exceeded