메뉴 건너뛰기

SAP 한국 커뮤니티



Z18_020 질문입니다.

inoran8203 2012.02.07 18:08 조회 수 : 2313

아래대로 코딩을 하였습니다.

 

REPORT  z18_020                                                     .
TABLES : SFLIGHT.


 

DATA : con1_ref TYPE REF TO cl_gui_custom_container.


 

 


 

TYPES : T_SFLIGHT TYPE SFLIGHT.


 

*DATA : GT_SFLIGHT TYPE TABLE OF T_SFLIGHT.
DATA : GT_SFLIGHT LIKE SFLIGHT OCCURS 0 WITH HEADER LINE.
*
*DATA : BEGIN OF  gt_sflight OCCURS 0.
*       INCLUDE STRUCTURE SFLIGHT.
*DATA : END OF gt_sflight.


 

DATA : grid1  TYPE REF TO cl_gui_alv_grid,
       gs_variant     LIKE disvariant,
       gs_cs_variant  LIKE disvariant,
       gs_layout     TYPE lvc_s_layo,
       gs_toolbar    TYPE ui_functions,
       gt_sort       TYPE lvc_t_sort,
       gt_fieldcat   TYPE lvc_t_fcat.
*       gt_sflight    TYPE TABLE OF sflight.


 

TYPE-POOLS: icon.


 

*---------------------------------------------------------------------*
*       CLASS lcl_event_receiver DEFINITION
*---------------------------------------------------------------------*
*
*---------------------------------------------------------------------*
CLASS lcl_event_receiver DEFINITION.


 

  PUBLIC SECTION.
    METHODS:


 

    handle_double_click
        FOR EVENT double_click OF cl_gui_alv_grid
            IMPORTING e_row e_column.


 

    METHODS : handle_toolbar
                 FOR EVENT toolbar OF cl_gui_alv_grid
                 IMPORTING e_object e_interactive.


 


    METHODS : handle_command
                 FOR EVENT user_command OF cl_gui_alv_grid
                 IMPORTING e_ucomm.


 

  PRIVATE SECTION.


 

ENDCLASS.                    "lcl_event_receiver DEFINITION


 

*---------------------------------------------------------------------*
*       CLASS lcl_event_receiver IMPLEMENTATION
*---------------------------------------------------------------------*
*
*---------------------------------------------------------------------*
CLASS lcl_event_receiver IMPLEMENTATION.


 

  METHOD handle_double_click.
    LEAVE TO SCREEN 0.
  ENDMETHOD.                           "handle_double_click


 

*-- Add ToolBar
  METHOD handle_toolbar.


 

    DATA: ls_toolbar  TYPE stb_button.


 

    CLEAR ls_toolbar.
    ls_toolbar-butn_type = 3.
    APPEND ls_toolbar    TO e_object->mt_toolbar.


 

    CLEAR ls_toolbar.
    ls_toolbar-function  = 'RESH'.
    ls_toolbar-icon      = icon_refresh.
    ls_toolbar-quickinfo = 'Refresh'.
    ls_toolbar-text      = ' '.
    ls_toolbar-disabled  = ' '.
    APPEND ls_toolbar    TO e_object->mt_toolbar.


 

  ENDMETHOD.                    "handle_toolbar


 


  METHOD handle_command.
    DATA : l_scroll TYPE lvc_s_stbl.


 

    CASE e_ucomm.
*-  REFRESH
      WHEN 'RESH'.


 

        SELECT * FROM sflight
        INTO CORRESPONDING FIELDS OF TABLE gt_sflight.
        l_scroll-row = 'X'.
        l_scroll-col = 'X'.
        CALL METHOD grid1->refresh_table_display
          EXPORTING
            i_soft_refresh = ''
            is_stable      = l_scroll.
    ENDCASE.
  ENDMETHOD.                    "handle_user_command


 


ENDCLASS.                    "lcl_event_receiver IMPLEMENTATION
*


 

DATA :     event_receiver TYPE REF TO lcl_event_receiver.


 


START-OF-SELECTION.
  SELECT * FROM sflight INTO CORRESPONDING FIELDS OF TABLE gt_sflight.


 

  CALL SCREEN 100.


 

 


 

 


 

*---------------------------------------------------------------------*
*  MODULE init_con OUTPUT
*---------------------------------------------------------------------*
*
*---------------------------------------------------------------------*
MODULE init_con OUTPUT.


 

  IF con1_ref IS INITIAL.
    CREATE OBJECT con1_ref
    EXPORTING container_name = 'CON1'.


 


    CREATE OBJECT grid1
           EXPORTING
                i_parent = con1_ref.


 

    PERFORM setting_layout.
    PERFORM getting_catalog.
    PERFORM setting_catalog.
    PERFORM setting_toolbar.
    PERFORM setting_sort.
    PERFORM setting_event.


 

    CALL METHOD grid1->set_table_for_first_display
      EXPORTING
*        i_structure_name     = 'SFLIGHT'
        i_save               = 'A'
        is_variant           = gs_variant  " variant display
        i_default            = ' '
        is_layout            = gs_layout
        it_toolbar_excluding = gs_toolbar
      CHANGING
        it_outtab            = gt_sflight[]
        it_fieldcatalog      = gt_fieldcat[]
        it_sort              = gt_sort.


 

 


 


  ENDIF.
ENDMODULE.                 " init_con  OUTPUT
*&---------------------------------------------------------------------*
*&      Module  STATUS_0100  OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
  SET PF-STATUS 'G100'.
*  SET TITLEBAR 'xxx'.


 

ENDMODULE.                 " STATUS_0100  OUTPUT


 

*&---------------------------------------------------------------------*
*&      Module  USER_COMMAND_0100  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE user_command_0100 INPUT.


 

  CASE sy-ucomm.
    WHEN 'BACK' OR 'EXIT' OR 'CANC'.
      LEAVE TO SCREEN 0.
  ENDCASE.


 

ENDMODULE.                 " USER_COMMAND_0100  INPUT
*&---------------------------------------------------------------------*
*&      Form  setting_layout
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->P_GS_LAYOCAT  text
*----------------------------------------------------------------------*
FORM setting_layout .
*- General display options
  gs_layout-cwidth_opt = 'X'.
* TITLE BAR
  gs_layout-grid_title = '필드 카타로그 Key, Fix Column TEST'.
* Selection modes for SEL_MODE
  gs_layout-sel_mode = 'D'.
* Grid pattern
  gs_layout-zebra      = 'X'.
ENDFORM.                    " setting_layout
*&---------------------------------------------------------------------*
*&      Form  setting_toolbar
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->P_GS_TOOLBAR  text
*----------------------------------------------------------------------*
FORM setting_toolbar.
  DATA: l_exclude TYPE ui_func.


 

  l_exclude = cl_gui_alv_grid=>mc_fc_save_variant.
  APPEND l_exclude TO gs_toolbar.


 

  l_exclude = cl_gui_alv_grid=>mc_fc_maintain_variant.
  APPEND l_exclude TO gs_toolbar.


 

ENDFORM.                    " setting_toolbar
*&---------------------------------------------------------------------*
*&      Form  setting_sort
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM setting_sort .


 

  DATA : ls_sort TYPE lvc_s_sort.


 

  ls_sort-spos = '1'.
  ls_sort-fieldname = 'CARRID'.
  ls_sort-up = 'X'.
  ls_sort-subtot = 'X'.
  APPEND ls_sort TO gt_sort.


 

 


 


ENDFORM.                    " setting_sort
*&---------------------------------------------------------------------*
*&      Form  setting_event
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM setting_event .
  CREATE OBJECT event_receiver.
  SET HANDLER event_receiver->handle_double_click FOR grid1.
  SET HANDLER event_receiver->handle_toolbar       FOR grid1.
  SET HANDLER event_receiver->handle_command       FOR grid1.


 

ENDFORM.                    " setting_event
*&---------------------------------------------------------------------*
*&      Form  setting_catalog
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM setting_catalog .
 FIELD-SYMBOLS: <ls_fcat> TYPE lvc_s_fcat.


 

 LOOP AT GT_FIELDCAT ASSIGNING <ls_fcat>.


 

 IF <ls_fcat>-fieldname EQ 'PRICE'.
  <ls_fcat>-key = 'X'.
 ENDIF.


 

 IF <ls_fcat>-fieldname EQ 'CURRENCY'.
  <ls_fcat>-fix_column = 'X'.
 ENDIF.


 

 ENDLOOP.


 

ENDFORM.                    " setting_catalog
*&---------------------------------------------------------------------*
*&      Form  getting_catalog
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM getting_catalog .
DATA : LT_FIELDCAT TYPE KKBLO_T_FIELDCAT.
  CALL FUNCTION 'K_KKB_FIELDCAT_MERGE'
    EXPORTING
      i_callback_program     = SY-REPID
      i_tabname              = 'GT_SFLIGHT'
*      i_strucname            = i_structure
      i_inclname             = SY-REPID
    CHANGING
      ct_fieldcat            = lt_fieldcat[]
    EXCEPTIONS
      inconsistent_interface = 1
      OTHERS                 = 2.
 IF SY-SUBRC EQ 0.
      CALL FUNCTION 'LVC_TRANSFER_FROM_KKBLO'
        EXPORTING
          it_fieldcat_kkblo = lt_fieldcat[]
        IMPORTING
          et_fieldcat_lvc   = gt_fieldcat[].
ENDIF.


 

ENDFORM.                    " getting_catalog

 

근데 첨부와 같은 오류가 뜨더라구요?

원인이 어떻게 되는건지 알고싶습니다^^

 

번호 제목 글쓴이 날짜 조회 수
공지 e-abap에서 출간된 책 소개 [8] 양키 2013.01.31 11760
185 <img src=2.gif>ABAP에서 오늘 연도 및 날짜 구하는 법 알려주시기 바랍니다. [3] 체사레 2010.05.12 3424
184 <img src=3.gif>넷위버 트라이얼 버전 프로그램 생성문의.. [2] abap왕초보 2010.05.19 3289
183 <img src=3.gif>type t -> type i 로 변환시 의 질문 [2] 웅냐공주사랑 2010.06.07 2894
182 <img src=2.gif>4-2-10 에서 '' 에 대한 질문입니다. [2] 웅냐공주사랑 2010.06.16 2929
181 <img src=3.gif>플러스 abap 교제의 smartforms image 관련 문의 [4] 날곰 2010.06.28 4228
180 <img src=3.gif>[완전초보입니다.] Chapt3부터 막히네요~ 예제실습을 어떻게하지요? [7] file 베르테르 2010.09.30 3134
179 <img src=3.gif>교재에 대한 질문입니다. 오탈자 인지 제가 이해를 못하는건지 모르겠네요 [2] 광돈 2010.10.06 3237
178 <img src=3.gif>예제 15-4-5에서 leave to list-processing으로 이동한 list 화면에서 헤더를 안 보이게 하는 방법 좀 알려주세요. [2] 페르츠 2010.10.15 3157
177 <img src=2.gif>perform문 실행순서가 궁금해서요. 질문드립니다 [1] moon 2010.10.30 3175
176 <img src=3.gif>open sql insert 시 accepting duplicate keys 에 대한 질문입니다. [4] 광돈 2010.11.03 3617
175 <img src=3.gif>p 196 open sql update 구문에 관한 질문입니다. [4] 광돈 2010.11.03 3327
174 <img src=3.gif><img src=3.gif><img src=1.gif>ZF01_001 관련해서 질문드립니다. PHENOME 2010.11.14 3776
173 <img src=3.gif>[re] <img src=1.gif>ZF01_001 관련해서 질문드립니다. [1] file sapjoy 2010.11.15 3574
172 <img src=2.gif>sflight 테이블의 값이 없습니다. [8] 광돈 2010.11.24 4277
171 <img src=3.gif>Z15_022 에 대한 질문입니다. FORMAT HOTSPOT 적용시 다음 라인에 글 추가가 안되네요 [4] 광돈 2010.12.01 3276
170 <img src=2.gif>PLUS ABAP 교재의 zsaptip_009 예제를 구할 수가 없나요.. [2] 트리플A 2010.12.10 3636
169 <img src=3.gif>Z16_004 Subscreen부분에서 소스좀 알려주세요.. [4] 안녕아밥 2011.01.03 4269
168 <img src=3.gif>T-CODE 질문드립니다. 없다고 나오네요. [5] PHENOME 2011.02.25 4357
167 <img src=2.gif>플러스 아밥 교재에서 P.185 질문요. [3] 폭풍질주 2011.03.17 3497
166 교재 558페이지 Lock object 프로그램 예제 관련 질문드립니다. [1] 뚝심 2011.04.14 4309