brunch

You can make anything
by writing

C.S.Lewis

by 동네아밥 Jul 23. 2021

복잡한 입력팝업 간단하게 만들기

쓸데가 언제가 있겠지?


아래는 소스


*출처: 원페이퍼


START-OF-SELECTION.

  PERFORM call_popup.



FORM call_popup.


  TABLES : sflight.


  DATA: lv_carrid TYPE s_carr_id,

        lt_werks TYPE gds_selrange_werks_tab,

        lv_check TYPE xfeld,

        lv_radio1 TYPE xfeld,

        lv_radio2 TYPE xfeld.


  DATA : lt_att TYPE sci_atttab ,

         ls_att TYPE sci_attent.


  DATA : l_ref TYPE REF TO data.


  CREATE DATA l_ref TYPE REF TO xfeld.



* parameters

  GET REFERENCE OF lv_carrid INTO l_ref.

  ls_att-kind = 'S'.

  ls_att-text = 'Parameter'.

  ls_att-obligatory = 'Y'.

  ls_att-ref = l_ref.

  APPEND ls_att TO lt_att.


* SELECT-OPTIONS

  GET REFERENCE OF lt_werks INTO l_ref.

  ls_att-kind = 'S'.

  ls_att-text = 'Select Option'.

  ls_att-ref = l_ref.

  APPEND ls_att TO lt_att.


* Check box

  GET REFERENCE OF lv_check INTO l_ref.

  ls_att-kind = 'C'.

  ls_att-text = 'Check box'.

  ls_att-ref = l_ref.

  APPEND ls_att TO lt_att.



* Radio button

  GET REFERENCE OF lv_radio1 INTO l_ref.

  ls_att-kind = 'R'.

  ls_att-text = 'Radio 1'.

  ls_att-button_group = 'MOD'.

  ls_att-ref = l_ref.

  APPEND ls_att TO lt_att.


  GET REFERENCE OF lv_radio2 INTO l_ref.

  ls_att-kind = 'R'.

  ls_att-text = 'Radio 2'.

  ls_att-button_group = 'MOD'.

  ls_att-ref = l_ref.

  APPEND ls_att TO lt_att.



  CALL METHOD cl_ci_query_attributes=>generic

    EXPORTING

      p_name       = 'TEST'

      p_title      = 'TEST2'

      p_attributes = lt_att

*    p_message    =

      p_display    = ''

*  receiving

*    p_break      =

      .


  BREAK-POINT.



ENDFORM. 

작가의 이전글 SE80 오브젝트 내비게이터 너비 기본설정 조절
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari