메뉴 건너뛰기

SAP 한국 커뮤니티

REPORT z03_022.

sapjoy 2024.08.05 00:36 조회 수 : 0

REPORT z03_022.

TABLES : sflight,spfli.

SELECT-OPTIONS : s_carrid FOR sflight-carrid,
                                s_connid FOR sflight-connid,
                                s_fldate FOR sflight-fldate.

PARAMETERS : p_flg AS CHECKBOX.

TYPES : BEGIN OF ty_data,
          carrid     TYPE sflight-carrid,
          connid     TYPE sflight-connid,
          fldate     TYPE sflight-fldate,
          price      TYPE sflight-price,
          currency   TYPE sflight-currency,
          planetype  TYPE sflight-planetype,
          seatsmax   TYPE sflight-seatsmax,
          seatsocc   TYPE sflight-seatsocc,
          paymentsum TYPE sflight-paymentsum,
          countryfr  TYPE spfli-countryfr,
          cityfrom   TYPE spfli-cityfrom,
          airpfrom   TYPE spfli-airpfrom,
          seatleft   TYPE int8,
        END OF ty_data.

DATA : gt_flight TYPE TABLE OF ty_data,
       gs_flight TYPE ty_data.

DATA: alv TYPE REF TO cl_salv_table.

IF p_flg = 'X'.
  SELECT sf~carrid, sf~connid, sf~fldate, sf~price, sf~currency, sf~planetype, sf~seatsmax, sf~seatsocc, sf~paymentsum,
               sp~countryfr, sp~cityfrom, sp~airpfrom, ( sf~seatsmax - sf~seatsocc ) AS seatleft
  FROM sflight AS sf INNER JOIN spfli AS sp
  ON sf~carrid = sp~carrid AND sf~connid = sp~connid
  WHERE sf~carrid IN @s_carrid AND
              sf~connid IN @s_connid AND
              sf~fldate IN @s_fldate AND
    ( sf~seatsmax - sf~seatsocc ) < 50
  INTO CORRESPONDING FIELDS OF TABLE @gt_flight.
ELSE.
  SELECT sf~carrid, sf~connid, sf~fldate, sf~price, sf~currency, sf~planetype, sf~seatsmax, sf~seatsocc, sf~paymentsum,
             sp~countryfr, sp~cityfrom, sp~airpfrom, ( sf~seatsmax - sf~seatsocc ) AS seatleft
FROM sflight AS sf INNER JOIN spfli AS sp
ON sf~carrid = sp~carrid AND sf~connid = sp~connid
WHERE sf~carrid IN @s_carrid AND
            sf~connid IN @s_connid AND
            sf~fldate IN @s_fldate
INTO CORRESPONDING FIELDS OF TABLE @gt_flight.

ENDIF.

TRY.
    cl_salv_table=>factory(
      IMPORTING r_salv_table = alv
      CHANGING t_table = gt_flight ).
    alv->display( ).
  CATCH cx_salv_msg INTO DATA(alv_exc).
    MESSAGE alv_exc TYPE 'I' DISPLAY LIKE 'E'.
ENDTRY.

번호 제목 글쓴이 날짜 조회 수
63 REPORT z03_31. sapjoy 2024.08.05 1
62 REPORT z03_30. sapjoy 2024.08.05 0
61 REPORT z03_29. sapjoy 2024.08.05 1
60 REPORT z03_28. sapjoy 2024.08.05 0
59 REPORT Z03_27. sapjoy 2024.08.05 1
58 REPORT  Z03_26. sapjoy 2024.08.05 0
57 REPORT  z03_25. sapjoy 2024.08.05 0
56 REPORT  Z03_24. sapjoy 2024.08.05 0
55 REPORT  z03_23. sapjoy 2024.08.05 0
» REPORT z03_022. [1] sapjoy 2024.08.05 0
53 REPORT z03_021. sapjoy 2024.08.05 0
52 REPORT z03_20. sapjoy 2024.08.05 0
51 REPORT  z03_19. sapjoy 2024.08.05 1
50 REPORT z03_18. sapjoy 2024.08.05 0
49 REPORT z03_17. sapjoy 2024.08.05 1
48 REPORT z03_16. sapjoy 2024.08.05 0
47 REPORT  Z03_15. sapjoy 2024.08.05 1
46 REPORT  z03_14. sapjoy 2024.08.05 1
45 REPORT  Z03_13. sapjoy 2024.08.05 2
44 REPORT  z03_12. sapjoy 2024.08.05 1