Files
004_comission/_resources/it114105/itp4512/Assignment/Z_YOURNAME_DP.abap
louiscklaw 6c60a73f30 update,
2025-01-31 19:15:17 +08:00

84 lines
2.6 KiB
ABAP

*&---------------------------------------------------------------------*
*& Report ZASG_YOURNAME_DP *
*& *
*&---------------------------------------------------------------------*
*& *
*& *
*&---------------------------------------------------------------------*
REPORT ZASG_YOURNAME_DP MESSAGE-ID Z_MESSAGE_YOURNAME
.
TABLES ZASG_YOURNAME.
SELECTION-SCREEN BEGIN OF BLOCK OPTIONS WITH FRAME TITLE OP1.
PARAMETERS R1 RADIOBUTTON GROUP FLAG.
PARAMETERS R2 RADIOBUTTON GROUP FLAG DEFAULT 'X'.
PARAMETERS S_CURREY TYPE ZASG_YOURNAME-CURRENCY DEFAULT 'USD'.
SELECT-OPTIONS S_HKEARN FOR ZASG_YOURNAME-HKEARNING DEFAULT '1.00' TO
'9999.90'.
SELECT-OPTIONS S_CARRID FOR ZASG_YOURNAME-CARRID DEFAULT 'AA' TO 'UA'
.
SELECT-OPTIONS S_PLTYPE FOR ZASG_YOURNAME-PLANETYPE DEFAULT '747-400'
.
SELECTION-SCREEN END OF BLOCK OPTIONS.
TYPES: BEGIN OF RESULT,
PLANETYPE TYPE ZASG_YOURNAME-PLANETYPE,
FLTIME TYPE ZASG_YOURNAME-FLTIME,
CARRNAME TYPE ZASG_YOURNAME-CARRNAME,
CONNID TYPE ZASG_YOURNAME-CONNID,
CUSTOMID TYPE ZASG_YOURNAME-CUSTOMID,
HKEARNING TYPE ZASG_YOURNAME-HKEARNING,
END OF RESULT.
DATA CHKFLAG TYPE ZASG_YOURNAME-H_FLAG.
DATA ITAB TYPE TABLE OF RESULT.
DATA WA TYPE RESULT.
if r1 = 'X'.
CHKFLAG = 'X'.
WRITE: / 'Report on ZASG_YOURNAME FOR H_Flag set'.
ELSE.
CHKFLAG = ''.
WRITE: / 'Report on ZASG_YOURNAME FOR H_Flag not set'.
ENDIF.
SELECT
PLANETYPE FLTIME CARRNAME CONNID CUSTOMID HKEARNING
INTO TABLE ITAB
FROM ZASG_YOURNAME
WHERE ZASG_YOURNAME~H_FLAG = CHKFLAG
AND ZASG_YOURNAME~CURRENCY = S_CURREY
AND ZASG_YOURNAME~HKEARNING IN S_HKEARN
AND ZASG_YOURNAME~CARRID IN S_CARRID
AND ZASG_YOURNAME~PLANETYPE IN S_PLTYPE.
IF SY-SUBRC = 4.
MESSAGE i001 WITH 'ZASG_YOURNAME'.
ELSEIF SY-SUBRC <> 0.
MESSAGE i000.
ELSE.
SORT ITAB BY CONNID ASCENDING CUSTOMID ASCENDING HKEARNING DESCENDING
FLTIME ASCENDING .
LOOP AT ITAB INTO WA.
ULINE.
WRITE: / 'Plane Type:', 14(10) WA-PLANETYPE.
WRITE: / 'Flight Time:', 16(10) WA-FLTIME.
WRITE: / 'Airline:', 10(20) WA-CARRNAME.
WRITE: / 'Flight No.:', 13(8) WA-CONNID.
WRITE: / 'Customer Number:', 16(8) WA-CUSTOMID NO-ZERO.
WRITE: / 'Earning in HK$:', 22(15) WA-HKEARNING.
ENDLOOP.
ENDIF.
ULINE.
WRITE 'End of Report'.
INITIALIZATION.
OP1 = 'Select Option'.