วิธีที่สองที่จะกล่าวถึงนี้เราจะเขียนวิธีการดึง System Status เองเลย ซึ่งความจริงก็ไม่ยาก เพราะ System Status นั้นจะเก็บอยู่ในตาราง JEST ซึ่งเราก็จะเอา เลขที่ OBJNR ที่เราหาได้จากตาราง AUFK เข้าไปทำการ Query เหมือนกัน
SELECT STAT INACT INTO TABLE it_stat
FROM jest
WHERE OBJNR = wa_aufk-objnr.
ถ้าเราต้องการเฉพาะสถานะที่ Active ก็ให้เราใส่เงื่อนไขดังนี้ เ้ข้าไปตอน Query
INACT = ' '
Completed Code:
DATA: it_stat TYPE TABLE OF JSTAT WITH HEADER LINE,
wa_aufk LIKE aufk.
SELECT SINGLE * FROM AUFK INTO wa_aufk
WHERE AUFNR = 'TEST54'.
IF SY-SUBRC = 0.
SELECT STAT INACT INTO TABLE it_stat
FROM jest
WHERE OBJNR = wa_aufk-objnr.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ELSE.
LOOP AT it_stat.
WRITE:/ it_stat-STAT,
it_stat-INACT.
ENDLOOP.
ENDIF.
ENDIF.
ผลลัพธ์ที่ได้
E0001 X
E0010
I0001 X
I0002
I0010
I0016
I0028
I0115
I0118 X
I0215
I0340 X
I0361
I0369
I0420
จะเห็นว่าผลลัพธ์ที่ได้เหมือนกับวิธีแรกเลย
No comments:
Post a Comment