메뉴 건너뛰기

SAP 한국 커뮤니티

[re] ***급***web dynpro에 관한 질문 입니다.***

cheguevara 2007.07.23 23:28 조회 수 : 1933 추천:69

>라디오 버튼으로 필드 컨트롤을 하려고 하는데요.


>만약에 라디오 버튼 1번을 선택했을 경우 특정필드가 read-only만 되고 라디오 버튼 2를 선택시 input필드로


>변환 하는 컨드롤을 주고 싶은데요.


>문제는 viewContainerUIElement 로 생산한 필드도 라디오 버튼으로 위에서 같은 컨트롤을 할 수 있는건가요?


>할 수 있다면 어떤게 해야하나요?


>웹딘 고수님께 급히 질문드립니다. ㅠ.ㅠ


 


ViewContainerElement를 사용한다는 걸 못 봤네요...


Container안에 들어갈 또 다른 View가 생기므로 댓글에 올린 방법으로는 안될테고 아래 방법을 참고하시길 바랍니다.


 


1. ComponentController
  1) Attributes Tab에 등록.
     MV_VIEW01  Type Ref to IF_WD_VIEW  (Public)
     MV_VIEW02  Type Ref to IF_WD_VIEW  (Public)
    
  2) Methods Tab에 등록.
     Parameters :
         P_FLAG Importing  CHAR1
         P_VIEW Importing Refto IF_WD_VIEW


     METHOD set_view .
       IF p_flag = '1'.
         wd_this->mv_view01 = p_view.
       ELSE.
         wd_this->mv_view02 = p_view.
       ENDIF.
     ENDMETHOD.
    
     ------------------------------------------------------------
    
     Parameters :
         P_FLAG Importing  CHAR1
         P_VIEW Importing Refto IF_WD_VIEW
      
     METHOD change_inputfield .
       DATA: input01 TYPE REF TO cl_wd_input_field,
             input02 TYPE REF TO cl_wd_input_field.
      
       input01 ?= p_view->get_element( 'INPUT_01' ).
       input02 ?= p_view->get_element( 'INPUT_02' ).
      
       IF p_flag = '1'.
         input01->set_read_only( EXPORTING value = abap_false ).
         input02->set_read_only( EXPORTING value = abap_true ).
       ELSE.
         input01->set_read_only( EXPORTING value = abap_true ).
         input02->set_read_only( EXPORTING value = abap_false ).
       ENDIF.
     ENDMETHOD.
    
2. 각 View의 WDDOMODIFYVIEW 메소드 내에 아래 소스 추가
  1) 라디오 버튼이 있는 View
     check first_time = abap_true.
     wd_comp_controller->set_view( p_view = view
                                   p_flag = '1' ).

 
  2) ViewContainerUIElement 안에 들어갈 View
     check first_time = abap_true.
     wd_comp_controller->set_view( p_view = view
                                   p_flag = '2' ).
                                  
     wd_comp_controller->change_inputfield( p_view = view
                                         p_flag = '1' ).
 
  
3. Radio button의 on select 이벤트 메소드에 아래 소스 추가.
   => controller의 change_inputfield 메소드를 Call한다.
      다만 radio button에 따라 flag값을 변경해주면 된다.

        
    DATA: node TYPE REF TO if_wd_context_node,
        i_idx   TYPE i,
        l_flag  TYPE char1.


    node = wd_context->get_child_node( 'COLOR' ).
   
    i_idx = node->get_lead_selection_index( ). "RadioButton의 Index번호.
   
    IF i_idx = 1.
      l_flag = 1.
    ELSE.
      l_flag = 2.
    ENDIF.
   
    wd_comp_controller->change_inputfield(
      p_flag = l_flag
      p_view = wd_comp_controller->mv_view02
    ).
 
 


 

번호 제목 글쓴이 날짜 조회 수
453 BAPI_FIXEDASSET_CHANGE 정영숙 2007.07.19 2453
452 현재 시간을 가져올려면 어떻게 해야하나요? [1] 노력&성장 2007.07.19 5719
451 ALV 스크린에서 삭제에 관한 질문입니다. [1] 초보생 2007.07.19 1702
450 Pc에 존재하는 File 의 codepage를 알수 있는 방법이 있을까요? bd 2007.07.19 2156
449 CL_GUI_FRONTEND_SERVICES=>GUI_UPLOAD [3] file bd 2007.07.18 3788
448 소스,cbo테이블 다운로드 받는 쉬운 방법 없을까요? [2] 댕댕 2007.07.18 2206
447 SELECT-OPTIONS의 범위효과에 대한 질문입니다. [2] 초보생 2007.07.17 1811
446 대문자를 소문자로 바꾸는 함수는 없나요? [3] 나도아밥퍼 2007.07.17 2582
445 sap gui 내에서 특수문자에 대한 코드를 보는 방법을 알고 싶습니다. [1] bd 2007.07.16 2270
444 ***급***web dynpro에 관한 질문 입니다.*** [6] 기절하고파 2007.07.16 2380
» [re] ***급***web dynpro에 관한 질문 입니다.*** cheguevara 2007.07.23 1933
442 구매요청 수정을 위한 bapi 무엇이 있을까요? 노력&성장 2007.07.16 2373
441 화면을 나가는 로직은 어떻게..해야할까요? [2] 노력&성장 2007.07.14 1545
440 ALV 스크린에서 특정 필드를 가지고 edit 하려 합니다. [1] 초보생 2007.07.14 1983
439 사이즈 조절 질문드릴께요 [1] 언제철들래 2007.07.13 3190
438 WAIT UP TO time SECONDS 이거 뭐에 사용되는거죠? 나도아밥퍼 2007.07.13 2640
437 TABLE CONTROL 에 대한 자료.. 있으신분.. 자료실에 부탁드립니다. 하늘만 2007.07.13 1621
436 [re] TABLE CONTROL 에 대한 자료.. 있으신분.. 자료실에 부탁드립니다. 박종갑 2007.07.13 1660
435 [re] TABLE CONTROL 에 대한 자료.. 있으신분.. 자료실에 부탁드립니다. [2] file sapjoy 2007.07.13 1709
434 ALV 헤더를 두줄로 쓰는 방법 아시는분.. [2] 백승민 2007.07.13 2966