메뉴 건너뛰기

SAP 한국 커뮤니티

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

cheguevara 2007.07.23 23:28 조회 수 : 1958 추천: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
    ).
 
 


 

번호 제목 글쓴이 날짜 조회 수
527 <b>[완료]</b>ALV 에서 평균을 구하고 싶은데요.. [2] 강성훈 2007.08.08 2704
526 SELECT 문에 대해서 ... [2] 하늘만 2007.08.08 1752
525 ALV 삭제에 관한 질문입니다. [2] 초보생 2007.08.08 1954
524 NetWeaver에서 WebDynpro 관련 질문입니다. [3] file 신종철 2007.08.07 1641
523 자료 요청드립니다. SD 교재나 show 자료를 찾아요... 나도아밥퍼 2007.08.07 1699
522 ALV 스크린 상에서 EDIT 관련 질문입니다. 초보생 2007.08.07 1771
521 집에 지금 NetWeaver를 설치하고 있습니다.. [5] 신종철 2007.08.07 1751
520 테이블컨트롤 필드 속성을 입력가능<->출력전용 이리 변경해줄려면 구문을 어떻게 해야하나요. 노력&성장 2007.08.07 2088
519 [re] 스크린페인터의 테이블컨트롤의 필드에서 필수필드로 제약하는 필드속성이 있나요? [1] file sapjoy 2007.08.06 1810
518 스크린페인터의 테이블컨트롤의 필드에서 필수필드로 제약하는 필드속성이 있나요? [1] 노력&성장 2007.08.06 2708
517 [re] Static Method와 Instance Method의 차이 좀 알려주세요. file sapjoy 2007.08.06 4213
516 CMOD에 관한 질문입니다. file bd 2007.08.06 1670
515 Static Method와 Instance Method의 차이 좀 알려주세요. 바위 2007.08.06 2434
514 ALV 화면에서 대해서 . [4] 하늘만 2007.08.06 1717
513 임시송장 BAPI (BAPI_INCOMINGINVOICE_PARK) 질문있습니다. [1] 복마화령 2007.08.06 2844
512 날짜 관련 질문입니다. [4] ccc 2007.08.03 1907
511 ASCII -> 2바이트코드 [4] w 2007.08.02 1869
510 이거 구현하는 방법 아시는분...... [5] 나도아밥퍼 2007.08.01 1740
509 slection screen에서 선택조건 disable할수있게하는 방법 [3] 김현주 2007.08.01 2121
508 Multi Selection 버튼 색상 문의..<-제목이 흠.. file 김지성 2007.08.01 50615