วิธีการประกาศ Internal Table it_fldtab เป็นดังนี้
DATA: wa_fld(72) TYPE C,
it_fldtab LIKE TABLE OF wa_fld.
จากนั้นให้นำชื่อ Column ที่ต้องการ Select ใส่เข้าไปใน it_fldtab ดังนี้
wa_fld = 'VBELN'.
APPEND wa_fld TO it_fldtab.
wa_fld = 'VBTYP'.
APPEND wa_fld TO it_fldtab.
wa_fld = 'AUDAT'.
APPEND wa_fld TO it_fldtab.
จาก Code ข้างต้น เราเลือก Column ที่ชื่อ VBELN คือ เลขที่ Sale Order, VBTYP คือ ประเภทของเอกสาร, AUDAT คือ วันที่ของเอกสาร
จากนั้นก็ Query ข้อมูลตามเงื่อนไขที่ได้กำหนด
SELECT (it_fldtab) INTO CORRESPONDING FIELDS OF TABLE it_vbak
FROM VBAK WHERE ERDAT = '20050105'.
เมื่อ Query ข้อมูลเสร็จก็ทำการเขียนข้อมูลออกมา
IF SY-SUBRC = 0.
LOOP AT it_vbak.
write:/ it_vbak-vbeln, it_vbak-vbtyp, it_vbak-audat.
ENDLOOP.
ENDIF.
Completed Code:
TABLES: VBAK.
DATA: it_vbak TYPE TABLE OF vbak WITH HEADER LINE,
wa_fld(72) TYPE C,
it_fldtab LIKE TABLE OF wa_fld.
wa_fld = 'VBELN'.
APPEND wa_fld TO it_fldtab.
wa_fld = 'VBTYP'.
APPEND wa_fld TO it_fldtab.
wa_fld = 'AUDAT'.
APPEND wa_fld TO it_fldtab.
SELECT (it_fldtab) INTO CORRESPONDING FIELDS OF TABLE it_vbak
FROM VBAK WHERE ERDAT = '20050105'.
IF SY-SUBRC = 0.
LOOP AT it_vbak.
write:/ it_vbak-vbeln, it_vbak-vbtyp, it_vbak-audat.
ENDLOOP.
ENDIF.
No comments:
Post a Comment