天天看點

WDA: Set Cursor focus_SAP劉夢_新浪部落格

Create a Node and add two attributes

​​

WDA: Set Cursor focus_SAP劉夢_新浪部落格

​​

Create two input fields and two buttons

​​​

WDA: Set Cursor focus_SAP劉夢_新浪部落格

​​​

when Press button "Set focus 1". clear field 2 and set focus on field 1.

when Press button "Set focus 2". clear field 1 and set focus on field 2.

​​

WDA: Set Cursor focus_SAP劉夢_新浪部落格

​​​

Codes:
METHOD onactionact_set1  . 
   DATA lo_nd_node_test  TYPE  REF  TO if_wd_context_node . 
   DATA lo_el_node_test  TYPE  REF  TO if_wd_context_element . 
   DATA ls_node_test  TYPE wd_this ->element_node_test . 
   DATA lv_field1  TYPE wd_this ->element_node_test -field1 . 
   DATA lv_field2  TYPE wd_this ->element_node_test -field2 . 
*   navigate from  to  via lead selection 
  lo_nd_node_test  = wd_context ->get_child_node ( name  = wd_this ->wdctx_node_test  ) . 

*   get element via lead selection 
  lo_el_node_test  = lo_nd_node_test ->get_element (  ) . 


   CLEAR lv_field1 . 
  lv_field1  =  'Focus ME' . 
*   set single attribute 
  lo_el_node_test ->set_attribute ( 
    name  =   `FIELD1` 
     value  = lv_field1  ) . 

* set single attribute 
   CLEAR lv_field2 . 
  lo_el_node_test ->set_attribute ( 
    name  =   `FIELD2` 
     value  = lv_field2  ) . 

*-----------set focus 
   DATA lo_api_main  TYPE  REF  TO if_wd_view_controller . 
  lo_api_main  = wd_this ->wd_get_api (  ) . 

  lo_api_main ->request_focus ( 
     EXPORTING 
      context_element  =  lo_el_node_test    " Context Element 
      attribute        =   'FIELD1'     " Context Attribute 
*    focus_info      =     " See CL_WD_FOCUS_INFO=>NEW_* 
   ) . 


ENDMETHOD .


METHOD onactionact_set2 .
  DATA lo_nd_node_test TYPE REF TO if_wd_context_node.
  DATA lo_el_node_test TYPE REF TO if_wd_context_element.
  DATA ls_node_test TYPE wd_this->element_node_test.
  DATA lv_field1 TYPE wd_this->element_node_test-field1.
  DATA lv_field2 TYPE wd_this->element_node_test-field2.

*   navigate from  to  via lead selection
  lo_nd_node_test = wd_context->get_child_node( name = wd_this->wdctx_node_test ).

*   get element via lead selection
  lo_el_node_test = lo_nd_node_test->get_element( ).


  CLEAR lv_field1.
  lv_field1 = 'Focus ME'.
*   set single attribute
  lo_el_node_test->set_attribute(
    name =  `FIELD2`
    value = lv_field1 ).

* set single attribute
  CLEAR lv_field1.
  lo_el_node_test->set_attribute(
    name =  `FIELD1`
    value = lv_field1 ).

*-----------set focus
  DATA lo_api_main TYPE REF TO if_wd_view_controller.
  lo_api_main = wd_this->wd_get_api( ).

  lo_api_main->request_focus(
    EXPORTING
      context_element =  lo_el_node_test   " Context Element
      attribute       =  'FIELD2'    " Context Attribute
*    focus_info      =     " See CL_WD_FOCUS_INFO=>NEW_*
  ).



ENDMETHOD
      

you can use the  guide  to create get API codes

WDA: Set Cursor focus_SAP劉夢_新浪部落格

歡迎關注訂閱号:SAP學習記錄 (SAPlearning )

​​