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.
  • 相关阅读:
    ural 1818 Fair Fishermen
    2013ACM-ICPC杭州赛区全国邀请赛总结
    成为程序界的叶问,你需要打败这十个人
    在互联网时代,你是消费者还是创造者?
    别让好想法埋没:如何进行APP开发?
    从无到有:学习程序开发的四个步骤
    BAT三家互联网公司哪家更注重用户体验?
    Stack Overflow大揭密:哪一种程序员工资最高?
    web产品浏览器兼容性问题你有考虑到吗?
    响应式网页设计:互联网web产品RWD概念
  • 原文地址:https://www.cnblogs.com/sapSB/p/10131786.html
Copyright © 2011-2022 走看看