메뉴 건너뛰기

SAP 한국 커뮤니티

메쏘드 정의하듯이 똑같이 메쏘드 다 정의했구요


 


확인하려고 하는데 안되서 왜그런지 디버깅 떠보니깐 f4메쏘드 자체를 아예 안타네요 ㅠ


 


data_changed 메쏘드는 제대로 타서 메쏘드를 제대로 정의하지 않거나 하지는 않은거 같은데


 


다만 왜그런지 의심되는게 있다면 처음에 테이블 도메인값에 value range를 설정했다가 지우고


 


액티브 다 시킨 다음에 메쏘드를 만들었거든요 ㅠ 근데 자꾸 메쏘드 안타네요... 도와주세요 아밥님들 ㅠ


 


일단 제가 메쏘드 정의해논 코드는 올려놓을꼐요ㅠㅠ


 


''''


========================================메쏘드 정의하고


 

CLASS lcl_event_receiver DEFINITION.
  PUBLIC SECTION.
    METHODS : handle_data_changed
                  FOR EVENT data_changed OF cl_gui_alv_grid
                  IMPORTING er_data_changed,

              handle_on_f4
                  FOR EVENT onf4 OF cl_gui_alv_grid
                  IMPORTING sender
                       e_fieldname
                       e_fieldvalue
                       es_row_no
                       er_event_data
                       et_bad_cells
                       e_display.


ENDCLASS.  "(LCL_EVENT_RECEIVER DEFINITION)


 


 

CLASS lcl_event_receiver IMPLEMENTATION.
  METHOD handle_data_changed.
    PERFORM data_changed  USING er_data_changed.
  ENDMETHOD.                    "handle_data_changed

  METHOD handle_on_f4.
    PERFORM on_f4 USING e_fieldname
                        es_row_no
                        er_event_data
                        et_bad_cells.
  ENDMETHOD.                    "handle_on_f4


 

ENDCLASS"LCL_EVENT_RECEIVER IMPLEMENTATION


 


========================================set handeler 도 정의했고 참고로 같이 넣어놓은 data_changed 는 매우 잘됩니다 ㅠㅠ


 


 

  IF sy-batch IS INITIAL.
    CALL METHOD g_grid->register_edit_event
      EXPORTING
        i_event_id = cl_gui_alv_grid=>mc_evt_modified.
  ENDIF.

  CREATE OBJECT g_event_receiver.
  SET HANDLER g_event_receiver->handle_data_changed  FOR g_grid.
  SET HANDLER g_event_receiver->handle_on_f4 FOR g_grid.


 


======================================== f4 이니깐 필드 카테고리도 정의했고


 

  


    WHEN 'CLASS'.
        ls_fcat-edit = 'X'.
        ls_fcat-coltext  = '대분류'.
        ls_fcat-f4availabl = 'X'.


 


 


======================================== f4쪽 코딩  

  : 메쏘드 자체를 안타서 코딩이 제대로 됐는지는 아예 확인을 못했어요 ㅠ 일단 오류는 없음 ㅠ


 


 

FORM on_f4 USING  p_fieldname TYPE lvc_fname
                  p_es_row_no TYPE lvc_s_roid
                  p_er_event_data TYPE REF TO cl_alv_event_data
                  p_et_bad_cells TYPE lvc_t_modi.

  FIELD-SYMBOLS:  TYPE lvc_t_modi.

  DATA: ls_f4            TYPE lvc_s_modi,
        l_class          TYPE zeclass. " TYPE 에 DATA ELEMENT씀

  ASSIGN p_er_event_data->m_data->* TO .
  ls_f4-fieldname = p_fieldname.
  ls_f4-row_id    = p_es_row_no-row_id.

  READ TABLE itab INDEX ls_f4-row_id.


  CASE p_fieldname.
    WHEN 'CLASS'.
      PERFORM f4_class CHANGING l_class.
      IF l_class IS NOT INITIAL.
        MOVE  l_class  TO itab-class.
        MODIFY itab INDEX ls_f4-row_id.
      ENDIF.
  ENDCASE.

  p_er_event_data->m_event_handled = 'X'.

  CALL METHOD g_grid->refresh_table_display
    EXPORTING
      is_stable      = gt_stbl
      i_soft_refresh = c_x
    EXCEPTIONS
      finished       = 1
      OTHERS         = 2.
  IF sy-subrc <> 0.
  ENDIF.


ENDFORM.                     


 


다 제대로 된거 같은데 왜 안되는지 모르겠어요 ㅠㅠ 도와주세요 아밥님들 ㅠㅠㅠㅠ


 


메시지는 팝업창으로  : No input help is available 이렇게 떠요 ㅠ

번호 제목 글쓴이 날짜 조회 수
6487 [요청]MESSAGE TYPE에 관해 알고싶습니다!! [7] genius 2008.03.26 8182
6486 [요청]절대값을 어떻게 해용???초보라서 ..부탁해용~~~~~~~ [3] 因緣 2008.10.30 8168
6485 [요청]FUNCTION ALV 에서 DATA_CHANGED 후 REFRESH 기능이 있을까요? [7] 왕초~삽질맨 2008.10.07 8062
6484 [요청]최대값 구하기 [10] 풍뎅이 2007.11.23 7985
6483 <img src=3.gif>소수점 이하 0 지우기 (소수점 값이 없는 부분만 ) [5] 짭군 2009.11.09 7863
6482 <img src=3.gif border=0>mes table 로 인서트 중 dump 가 발생했습니다 [4] 아밥어렵네요 2009.04.15 7715
6481 <b>[완료]</b>Class ALV에서요....TOP-OF-PAGE할려면요?? [4] 복만돌이 2008.07.02 7641
6480 [요청]왕기초질문 LEFT OUTER JOIN [4] 벤또 2007.12.11 7630
6479 [요청]덤프에럽니다. 평소에 쓰는 alv 프로그램 똑같은 형식을 사용해서 alv프로그램을 만들어줬는데요. [2] 아밥걸 2008.07.09 7621
6478 ALV 마이너스 부호 앞으로 옮기기 [1] 모포 2019.07.04 7592
6477 ABAP질문은 아닌데요,,롤인 롤아웃 뜻이 뭔가용?? [2] 다크나잇트 2020.10.29 7534
6476 <img src=2.gif>서버의 파일 읽기 - Read Dataset [6] 찬호사랑 2009.12.14 7528
6475 <b>[완료]</b>chain과 endchain의 쓰임새를 정확히 알고싶습니다. LOOP AT IT_ZCATPSTCD. [8] SD2 2008.04.15 7412
6474 [질문]인터널테이블 복사하는 방법은? [4] 나도아밥퍼 2007.05.20 7397
6473 <img src=3.gif>CTS 릴리즈 취소하는 방법 좀 알려주세요. [3] 기쁨 2011.01.26 7395
6472 <b>[완료]</b>LVC_FIELDCATALOG_MERGE 펑션에 대한 문의 [5] 박상우 2008.07.28 7369
6471 4. include structure~ [1] file sapjoy 2007.02.27 7286
6470 [요청]CHECK NOT~ IS INITIAL에 대해 알고 싶습니다. [8] 앙리 2008.01.24 7268
6469 [요청]number_get_next 함수 사용법이 궁금합니다. [4] copine 2009.03.25 7263
6468 <b>[완료]%_hints oracle 'ORDERED USE_NL (T_00 T_01) INDEX (T_00 "ZPP0010T~Z03")'. 어떻게해석하나요?</b> [7] file 하오 2009.02.21 7255