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 = ''
). 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.

WDA基础十五:POPUP WINDOW的更多相关文章

  1. Bootstrap<基础十五> 输入框组

    Bootstrap 支持的另一个特性,输入框组.输入框组扩展自 表单控件.使用输入框组,可以很容易地向基于文本的输入框添加作为前缀和后缀的文本或按钮. 通过向输入域添加前缀和后缀的内容,您可以向用户输 ...

  2. java基础(十五)----- Java 最全异常详解 ——Java高级开发必须懂的

    本文将详解java中的异常和异常处理机制 异常简介 什么是异常? 程序运行时,发生的不被期望的事件,它阻止了程序按照程序员的预期正常执行,这就是异常. Java异常的分类和类结构图 1.Java中的所 ...

  3. WDA基础十四:ALV字段属性配置表

    ALV配置表管理 一.字段属性配置表 对于可编辑的ALV不用这个,尽可能多的设置一些控制: 单元格类型:默认A,特殊选择 ZLYE_TYPE        E       A       1      ...

  4. WDA基础十二:FREE PROGRAM SH (WDA TREE)

    一个需要用TREE展示搜索帮助的需求: 1.创建WDA程序:ZCATEGORY 2.Component Controller中添加节点: (说明,此节点仅在搜索帮助程序中使用,可以不用interfac ...

  5. WDA基础十:OVS搜索帮助的使用

    对于WDA来说,常用的搜索帮助有OVS,标准SH,Interface view等.今天来说说两种常用的OVS的使用: 一:普通字段,表字段的搜索帮助(在创建节点的时候指定搜索帮助OVS,或者后面加上去 ...

  6. python 基础(十五) socket编程

    SOCKET TCP协议: 有请求 有响应 称之为 tcp协议 是面向连接的协议 就是在收发数据之前 必须先要建立一个可靠的链接 三次握手 如:网站 UDP协议: 是一个非链接的协议 传输之前不需要键 ...

  7. WDA基础十八:Select option配置

    为了省代码...为了方便管理WDA的查询条件... 首先建配置表: 说明: 上面的KEY基本都是维护的维度,可以根据销售组织,根据用户组,根据组件,根据SELECT OPTION的不同...等等,可以 ...

  8. WDA基础十六:ALV的颜色

    这里介绍三种类型的颜色:列的背景色,单元格的背景色,单元格文本的颜色. 1.给ALV结构添加颜色控制字段: 三个字段都是同一类型:WDY_UIE_LIBRARY_ENUM_TYPE COL_BACKG ...

  9. C++学习基础十五--sizeof的常见使用

    sizeof的常见用法 1. 基本类型所占的内存大小 类型 32位系统(字节) 64位系统(字节) char 1 1 int 4 4 short 2 2 long 4 8 float 4 4 doub ...

随机推荐

  1. jbe 可以用来修改Java class的字节码,配合jd-gui 使用

    jbe  可以用来修改Java class的字节码,配合jd-gui 使用

  2. python之堡垒机(第九天)

    本节作业: 通过使用paramiko和sqlalchemy实现堡垒机功能 主要功能实现: 1.用户登录堡垒机后,无需知道密码或密钥可以SSH登录远端服务器: 2.用户对一个组内所有主机批量执行指定命令 ...

  3. ubuntu+anaconda+mxnet环境配置

    为了insightface和mxnet较劲的一天 mxnet环境: 官网下载pyhton2.7版本的anaconda,随便找个安装教程 sh Anacondaxxxx.sh #一路默认即可,第二个回车 ...

  4. 转载 usb_alloc_coherent 和 usb_free_coherent

    今天做移植的时候,随手记录一下,今天所遇到的问题解决方法. 在linux2.6.34和之前的代码中还可以使用usb_buffer_alloc 和 usb_buffer_free 这两个函数,在2.6. ...

  5. ThinkAdmin for PHP后台管理系统

    ThinkAdmin for PHP后台管理系统 ThinkAdmin 是一个基于 Thinkphp 5.1.x 开发的后台管理系统,集成后台系统常用功能.基于 ThinkPHP 5.1 基础开发平台 ...

  6. 小容量的byteBuffer 读取大文本

    利用死循环和判断是否 读到0个字节,便能判断是否读取完成,但它存在如下问题,如果输入是中文的话,可能没有读取完中文的全部3个字节,导致乱码.如果数据足够随机,这样的情况肯定会出现的 @Test pub ...

  7. asp.net(c#)网页跳转 方法小结

    返回 打印 asp.net(c#)网页跳转七种方法小结_实用技巧_脚本之家 在asp.net下,经常需要页面的跳转,下面是具体的几种方法.跳转页面是大部编辑语言中都会有的,正面我们来分别介绍一下关于. ...

  8. js之数组操作

    js之数组操作 前言 本文主要从应用来讲数组api的一些操作,如一行代码扁平化n维数组.数组去重.求数组最大值.数组求和.排序.对象和数组的转化等.(文章摘自:https://segmentfault ...

  9. String,StringBuilder,tringBuffer

    这三个类之间的区别主要是在两个方面,即运行速度和线程安全这两方面. 运行速度,或者说是执行速度,在这方面运行速度快慢为:StringBuilder > StringBuffer > Str ...

  10. Android中碎片的添加问题

    碎片在Android中的应用是十分广泛的,它就像是嵌在活动中的另一个活动就像是一个容器包含了另一个容器,那么到底该怎么添加碎片呢?主要有两种方法,一种是在该碎片所在的xml文档中使用Android:n ...