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

loop

Former Member
0 Likes
762

HI,

i AM GENERATING BDC FOR LINE ITEMS IN ME21,

I am using loop within loop , it is giving error "it_header is a table without header line and has no component x_data,

Plz tell me how this error can be removed . I have to take item part seperately within internal table for line item . Below is the part of the code.

TYPES :  BEGIN OF STR2 ,
          EMATN(18),      "Material Number.
          MENGE(13),      "Qyantity.
          NETPR(11),      "Net Price.
          WERKS(4),       "Plant.
          EBELP(5),       "Item Number.

        END OF STR2.
DATA : IT_ITEM TYPE TABLE OF STR2,
    WA_ITEM TYPE STR2.

     TYPES :  BEGIN OF STR1 ,
           LIFNR(10),      "Vendor A/c No.
           BSART(4),       "A/c Type.
           BEDAT(10),       "Date of creation of PO.
           EKORG(4),       "Purchasing Organisation.
           EKGRP(3),       "Purchasing Group.
            BUKRS(4),
          x_data TYPE STR2,
                    END OF STR1.

DATA : IT_HEADER TYPE TABLE OF STR1,
        WA_HEADER  TYPE STR1.


 loop at it_header into wa_header .
 v_count = v_count + 1.

  PERFORM BDC_DYNPRO      USING 'SAPMM06E' '0100'.
  PERFORM BDC_FIELD       USING 'BDC_CURSOR'
                                'EKKO-EKGRP'.
  PERFORM BDC_FIELD       USING 'BDC_OKCODE'
                                '/00'.
  PERFORM BDC_FIELD       USING 'EKKO-LIFNR'
                                '3730'.
  PERFORM BDC_FIELD       USING 'RM06E-BSART'
                                'nb'.
  PERFORM BDC_FIELD       USING 'RM06E-BEDAT'
                                '17.05.2010'.
                      MOVE 1 TO v_indx.
       loop at    it_header-x_data  INTO  wa_header-x_data .
*       x_data1 .

      CONCATENATE 'EKPO-EMATN(' v_indx ')'  INTO v_fnam.

  PERFORM BDC_FIELD       USING v_fnam wa_header-x_data.
*  'EKPO-EMATN(01)'v-fnam
*                                'MSA-2000'.

     CONCATENATE 'EKPO-MENGE(' v_indx ')'  INTO v_fnam.
endloop.

Moderator message: please use more descriptive subject lines and code tags from now on.

Edited by: Thomas Zloch on May 17, 2010 4:33 PM

1 ACCEPTED SOLUTION
Read only

former_member214857
Contributor
0 Likes
730

Hi

you can change it_header definition:

DATA : IT_HEADER TYPE TABLE OF STR1 WITH HEADER LINE,

WA_HEADER TYPE STR1.

It should fix this message

Best regards

Carlos Machado

4 REPLIES 4
Read only

Former Member
0 Likes
730

Hi sranjna,

replace line:

loop at it_header-x_data INTO wa_header-x_data .

with:

loop at it_header INTO wa_header.

reagards

Rea

Read only

Former Member
0 Likes
730

Hi,

Replace the line:

loop at it_header-x_data INTO wa_header-x_data.

By:

loop at wa_header-x_data INTO wa_item.

      • don´t use it_header-x_data inside the loop. use wa_item!

Best regards,

Leandro Mengue

Edited by: Leandro Mengue on May 17, 2010 5:14 PM

Read only

former_member206439
Contributor
0 Likes
730

Try this and check it once.

DATA : IT_HEADER TYPE TABLE OF STR1 NITIAL SIZE 0,
        WA_HEADER  TYPE STR1.

Read only

former_member214857
Contributor
0 Likes
731

Hi

you can change it_header definition:

DATA : IT_HEADER TYPE TABLE OF STR1 WITH HEADER LINE,

WA_HEADER TYPE STR1.

It should fix this message

Best regards

Carlos Machado