zoukankan      html  css  js  c++  java
  • WDA基础十五:POPUP WINDOW

    1.组件控制器定义属性:

    2.实现popup方法:

    METHOD stock_popup .
      DATA: l_cmp_api        TYPE REF TO if_wd_component,
            l_window_manager TYPE REF TO if_wd_window_manager,
            l_msg            TYPE string,
            l_text           TYPE string_table,
            l_api            TYPE REF TO if_wd_view_controller,
            l_popup          TYPE REF TO if_wd_window.
      CLEAR: wd_comp_controller->it_stock_total[].
      IF NOT it_stock_total[] IS INITIAL.
        wd_comp_controller->it_stock_total[] = it_stock_total[].
        l_api = wd_this->wd_get_api( ).
        l_cmp_api = wd_comp_controller->wd_get_api( ).
        l_window_manager = l_cmp_api->get_window_manager( ).
        wd_comp_controller->win_display_stock = l_window_manager->create_window(
        modal                = abap_true
        window_name          = 'WIN_DISPLAY_STOCK'
        title                = cl_wd_utilities=>get_otr_text_by_alias( 'ZCRM/STOCKINFO' )  "弹出框的标题
        close_button         = abap_false
        button_kind          = if_wd_window=>co_buttons_ok
        message_display_mode = '1'
        ).
    
        wd_comp_controller->win_display_stock->subscribe_to_button_event(
        button            = if_wd_window=>co_button_ok
        action_name       = 'POPUP_STOCK_OK'
        action_view       = l_api
        is_default_button = abap_true ).
    
        wd_comp_controller->win_display_stock->open( ).
      ENDIF.
    ENDMETHOD.

    这是调用当前程序里的窗口。

    3.OK事件:

    随便写代码。。。

    4.跳转到URL:

    method MX_FIRE_TO_NEW_WINDOW .
    DATA: WINDOW_MANAGER TYPE REF TO IF_WD_WINDOW_MANAGER,
            API_COMPONENT  TYPE REF TO IF_WD_COMPONENT,
            LO_WINDOW      TYPE REF TO IF_WD_WINDOW.
      DATA: ES_LOGIN TYPE ZPORTAL_LOGIN.
      DATA LV_USER TYPE STRING.
      DATA: UTILITY TYPE REF TO CL_HTTP_UTILITY.
      CREATE OBJECT UTILITY.
      DATA LV_OBJID_STR TYPE STRING.
       DATA LV_URL TYPE STRING.
    
    
      LV_OBJID_STR = IV_OBJECT_ID.
      CALL METHOD UTILITY->ENCODE_BASE64  "?a?ü
        EXPORTING
          UNENCODED = LV_OBJID_STR
        RECEIVING
          ENCODED   = LV_OBJID_STR.
    
    
      API_COMPONENT  = WD_COMP_CONTROLLER->WD_GET_API( ).
      WINDOW_MANAGER = API_COMPONENT->GET_WINDOW_MANAGER( ).
    
      CALL FUNCTION 'GET_LOGIN_PROFILE'
        IMPORTING
          ES_PORTAL_LOGIN = ES_LOGIN.
    
      LV_USER = ES_LOGIN-PARTNER.
      CALL METHOD UTILITY->ENCODE_BASE64  "?a?ü
        EXPORTING
          UNENCODED = LV_USER
        RECEIVING
          ENCODED   = LV_USER.
    
      CONCATENATE '/sap/bc/webdynpro/sap/ZHSCRM_SERVICE_ORDER_DISPLAY?IV_OBJECT_ID='
      LV_OBJID_STR '&IV_USER=' LV_USER '&IV_CHANGE=X' INTO LV_URL.
    
      CALL METHOD WINDOW_MANAGER->CREATE_EXTERNAL_WINDOW
        EXPORTING
          URL            = LV_URL
          TITLE          = 'WELCOME TO WEBSITE'
          MODAL          = ABAP_FALSE
          HAS_MENUBAR    = ABAP_TRUE
          IS_RESIZABLE   = ABAP_TRUE
          HAS_SCROLLBARS = ABAP_TRUE
          HAS_STATUSBAR  = ABAP_TRUE
          HAS_TOOLBAR    = ABAP_TRUE
          HAS_LOCATION   = ABAP_TRUE
        RECEIVING
          WINDOW         = LO_WINDOW.
    
      LO_WINDOW->OPEN( ).
    endmethod.
  • 相关阅读:
    volatile双重检查锁定与延迟初始化
    Maven内置属性,pom属性
    spring-如何将spring源码成功导入Eclipse中
    Java8-函数复合用法
    JavaSE-序列化和反序列化
    JavaSE-java8-谓词复合的用法
    表单验证:nice Validator
    eclipse ide for java ee developers 开发环境搭建(J2EE) 【转载】
    表格
    MyBatis子查询
  • 原文地址:https://www.cnblogs.com/sapSB/p/10131786.html
Copyright © 2011-2022 走看看