Application Development and Automation 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: 
Read only

Read IDOC segment with qualifier

Former Member
0 Likes
1,816

Hi,

I need to read data into a workArea from a IDOC segment which has Qualifiers for it.

The IDOC or BASIC type is DELVRY03.

Segment E1EDT13.

Qualifier 006

Thx in advance

Mac

1 ACCEPTED SOLUTION
Read only

nabheetscn
SAP Champion
SAP Champion
0 Likes
1,365

Use EXIT_SAPLV56K_002 for outbound idoc to modify the same

Nabheet

DATA:

lx_e1edt13 TYPE e1edt13.

FIELD-SYMBOLS:

<fs_idoc_data> LIKE LINE OF idoc_data.

LOOP AT idoc_data ASSIGNING <fs_idoc_data> WHERE segnam = 'E1EDT13'.

lx_e1edt13 = <ls_idoc_data>-sdata.

IF lx_e1edt13-qualf = '006'.

  • your code

  • or get the data into internal table as per your requiremnt

ENDIF.

ENDLOOP.

6 REPLIES 6
Read only

nabheetscn
SAP Champion
SAP Champion
0 Likes
1,366

Use EXIT_SAPLV56K_002 for outbound idoc to modify the same

Nabheet

Read only

0 Likes
1,365

Hi,

I am not asking to locate the exit.

I already done with it.

But need to get a value from a particular field of a segment which has qualifiers for it.

Regards

Mac

Read only

0 Likes
1,365

CAn you please quote your requirement with a detailed example mentioning what do u want to do.

Read only

0 Likes
1,365

Hi Mac,

try this:


DATA:
  ls_e1edt13      TYPE e1edt13.

FIELD-SYMBOLS:
  <ls_idoc_data>  LIKE LINE OF idoc_data.


LOOP AT idoc_data ASSIGNING <ls_idoc_data> WHERE segnam = 'E1EDT13'.
  ls_e1edt13 = <ls_idoc_data>-sdata.

  IF ls_e1edt13-qualf = '006'.
* your code
  ENDIF.
ENDLOOP.

Best regards,

Oliver

Read only

Former Member
0 Likes
1,364

Hi,

use FM: IDOC_READ_COMPLETELY

Ram.

Read only

Former Member
0 Likes
1,364

DATA:

lx_e1edt13 TYPE e1edt13.

FIELD-SYMBOLS:

<fs_idoc_data> LIKE LINE OF idoc_data.

LOOP AT idoc_data ASSIGNING <fs_idoc_data> WHERE segnam = 'E1EDT13'.

lx_e1edt13 = <ls_idoc_data>-sdata.

IF lx_e1edt13-qualf = '006'.

  • your code

  • or get the data into internal table as per your requiremnt

ENDIF.

ENDLOOP.