1.20 UI Element:RoadMap使用

本实例测试创建RoadMap;

运行结果:

点击2,Input显示输入航班Id

点击3,根据input输入,查询航班信息

1.创建Component,View: V_ROADMAP;

2.创建Context节点;

创建Node:NODE_INPUT,用户输入航班ID;

创建Attribute:CARRID,保存CARRID;

创建Node:NODE_OUTPUT,显示输出航班信息;

Table:SPFLI字段信息;

创建Node:NODE_CONFIG,控制页面输入,输出显示;

创建Attribute:SHOW_INP,类型:WDUI_VISIBILITY,控制输入显示;

创建Attribute:SHOW_TAB,类型:WDUI_VISIBILITY,控制Table输出显示;

3.创建Layout UI Element

创建RoadMap:RM;

onLoadSteps: 绑定Action,LOAD_ROADMAP;

onSelect:绑定Action,SEL_ROADMAP;

创建RoadMapStep:START,

name:1

创建RoadMapStep:INPUT,

name:2

创建RoadMapStep:OUTPOUT,

name:3

创建RoadMapStep:END

name:4

创建Transparent Container,包含InputField和Label

visible: 绑定Attribute,NODE_CONFIG.SHOW_INP;

创建InputField:INP

value: 绑定Attribute,NODE_INPUT.CARRID;

创建Table:TAB,绑定spfli查询数据;

dataSource:绑定Node, NODE_OUTPUT,

visible:绑定Attribute,NODE_CONFIG.SHOW_TAB;

4.实现Method页签方法

Method: SEARCH_DATA,根据输入carrid,查询spfli信息;

代码实例:

  DATA:lo_node TYPE REF TO if_wd_context_node.
  DATA:lo_element TYPE REF TO if_wd_context_element.
  DATA:lv_input TYPE spfli-carrid.
  DATA:lt_spfli TYPE wd_this->elements_node_output.
  DATA:ls_spfli TYPE wd_this->element_node_output.   "获取节点
  lo_node = wd_context->get_child_node( wd_this->wdctx_node_input ).
  lo_element = lo_node->get_element( ).
  lo_element->get_attribute(
    EXPORTING
      name = 'CARRID'
    IMPORTING
      value = lv_input
   ).   SELECT * INTO CORRESPONDING FIELDS OF TABLE lt_spfli FROM spfli
    WHERE carrid = lv_input.   lo_node = wd_context->get_child_node( wd_this->wdctx_node_output ).
  lo_node->bind_table( new_items = lt_spfli ). 

Method:ONACTIONSEL_ROADMAP,Action:Sel_roadMap对应方法

代码实例:

  DATA:lo_node TYPE REF TO if_wd_context_node.
  DATA:lo_element TYPE REF TO if_wd_context_element.
  DATA:lv_step TYPE string.
  DATA:lv_visible TYPE wdui_visibility VALUE '02'.
  "获取节点
  lo_node = wd_context->get_child_node( wd_this->wdctx_node_config ).
  lo_element = lo_node->get_element( ).   lv_step = wdevent->get_string( name = 'STEP' ).
  CASE lv_step.
    WHEN 'START'.
      wd_comp_controller->show_msg( msg = 'start' msg_type = 'S' ).
      lv_visible = '01'.
      lo_element->set_attribute(
        EXPORTING
          name = 'SHOW_INP'
          value = lv_visible
      ).
      lo_element->set_attribute(
        EXPORTING
          name = 'SHOW_TAB'
          value = lv_visible
      ).
    WHEN 'INPUT'.
      lo_element->set_attribute(
        EXPORTING
          name = 'SHOW_INP'
          value = lv_visible
      ).
    WHEN 'OUTPUT'.
      lo_element->set_attribute(
        EXPORTING
          name = 'SHOW_TAB'
          value = lv_visible
      ).
      wd_this->search_data( ).     WHEN 'END'.
      wd_comp_controller->show_msg( msg = 'end' msg_type = 'S' ).
      lv_visible = '01'.
      lo_element->set_attribute(
        EXPORTING
          name = 'SHOW_INP'
          value = lv_visible
      ).
      lo_element->set_attribute(
        EXPORTING
          name = 'SHOW_TAB'
          value = lv_visible
      ).
    WHEN OTHERS.
  ENDCASE. 

WDDOINIT方法,初始化设置隐藏Input,Output;

代码实例:

  DATA:lo_node TYPE REF TO if_wd_context_node.
  DATA:lo_element TYPE REF TO if_wd_context_element.
  DATA:lv_visible TYPE wdui_visibility VALUE '01'.
  "获取节点
  lo_node = wd_context->get_child_node( wd_this->wdctx_node_config ).
  lo_element = lo_node->get_element( ).
  lo_element->set_attribute(
    EXPORTING
      name = 'SHOW_INP'
      value = lv_visible
  ).
  lo_element->set_attribute(
    EXPORTING
      name = 'SHOW_TAB'
      value = lv_visible
  ).

WDA学习(27):RoadMap使用的更多相关文章

  1. 第二篇-FPGA学习之RoadMap

    古语云:知己知彼,百战不殆.那么既然选择了FPGA之路,欲练此功,必先-- 必先了解清楚,FPGA的特点,FPGA善于/不善于解决什么类型问题,以及FPGA应用的方向,FPGA学习的要素等等. 一.F ...

  2. 学习路线 roadmap

    我的学习路线为HTML > CSS > Javsscript:Javascript是前端一切学习的基础.HTML和css一起学习. JavaScript基础: Js基础教程.js内置对象常 ...

  3. 学习 27 门编程语言的长处,提升你的 Python 代码水平

    Python猫注:Python 语言诞生 30 年了,如今的发展势头可谓如火如荼,这很大程度上得益于其易学易用的优秀设计,而不可否认的是,Python 从其它语言中偷师了不少.本文作者是一名资深的核心 ...

  4. 【Java EE 学习 27】【oracle学习第一天】

    一.oracle 11g安装的注意事项 1.超级管理员密码设置要符合要求(特别是不能以数字打头),否则在创建数据库的时候会产生ora-00922错误以及ora-28000错误. 解决方法:http:/ ...

  5. [游戏学习27] MFC 匀速运动

    >_<:理解上一个时间函数的概念和用法,本节的实现也比较简单 >_<:就是简单的绘图+时间函数 >_<:TicTac.h #define EX 1 //该点左鼠标 ...

  6. C++学习27 用全局函数重载运算符

    运算符重载函数既可以声明为类的成员函数,也可以声明为所有类之外的全局函数. 运算符重载函数作为类的成员函数 将运算符重载函数声明为类的成员函数时,二元运算符的参数只有一个,一元运算符不需要参数.之所以 ...

  7. 前段学习的roadmap

    引自http://www.cnblogs.com/IMxinu/p/9693041.html

  8. swift 学习- 27 -- 访问控制

    // 访问控制 可以限定其源文件 或模块中的代码对你的代码的访问级别, 这个特性可以让我们隐藏代码的一些实现细节, 并且可以为其他人可以访问和使用的代码提供接口 // 你可以明确地给某个类型 (类, ...

  9. Python学习-27.Python中的列表(list)

    列表已经用了很多次了.使用中括号包含元素. list = ['a','b','c'] 获取元素使用[]. print(list[0]) 输出a 不过值得注意的是,[]只能是0到元素个数-1吗?在Pyt ...

  10. OpenCV学习(27) 直方图(4)

    我们可以利用OpenCV的直方图,backproject直方图和meanshift算法来跟踪物体.下面通过简单的例子来说明如何实现跟踪算法,我们有两幅狒狒的图片,如下图所示:我们首先在左图中框选狒狒的 ...

随机推荐

  1. ios网络协议从http变成https

    最近发了一个很蛋疼的事,iphone16.x以后的系统浏览器自动将http请求切换为https请求了 工程自测 1.在ihone14 pro max,iOS16.1的手机上用http请求是失败的,在i ...

  2. iOS Reveal 4 安装详解简单粗暴

    项目在测试的时候,然后拿了公司最低配置的ipod 来装我们的项目,但是呢,我们的项目居然掉帧很厉害,然后看了一下别人的app,居然不卡,然后就想去看看,别人是怎么做到的.然后呢?就走上了Reveal之 ...

  3. Redefinition of 'y1' as different kind of symbol

    Redefinition of 'y1' as different kind of symbol 原因 解释:此次定义的y1变量与函数库中定义的y1重名了,所以编译错误,重定义了y1变量. 解决方法: ...

  4. 读Java8函数式编程笔记05_数据并行化

    1. 并发 1.1. 两个任务共享时间段 1.2. 一个程序要运行两个任务,并且只有一个CPU给它们分配了不同的时间片,那么这就是并发,而不是并行 2. 并行 2.1. 两个任务在同一时间发生 2.2 ...

  5. Java集合 Map 集合 与 操作集合的工具类: Collections 的详细说明

    Java集合 Map 集合 与 操作集合的工具类: Collections 的详细说明 每博一文案 别把人生,输给心情 师父说:心情不是人生的全部,却能左右人生的全部. 你有没有体会到,当你心情好的时 ...

  6. 找了几个 Solon 的商业落地项目案例!

    Solon 是啥?是一个高效的 Java 应用开发框架:更快.更小.更简单.(代码仓库:https://gitee.com/noear/solon) 提倡: 克制.简洁.开放.生态 启动快 5 - 1 ...

  7. spring boot swagger ui使用 nginx 部署后无法使用问题

    location /saleapi/ { ## 指定HOST proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_ ...

  8. ChatGPT:好家伙,每个人内心的一块魔镜

    这几天最火的话题就是ChatGPT,人人都在聊,人人都在社交圈或者vlog里面分享使用ChatGPT的聊天截图. 众生有众生相,每个人对这个AI工具有不同的感受和反应.我个人是非常接受ChatGPT, ...

  9. CentOS7 登录到控制台后无法联网

    登录到控制台, ping 不通网络 解决方法 通过命令找到网卡的配置文件见 ll /etc/sysconfig/network-scripts/ | grep ifcfg-en 编辑配置文件 vi i ...

  10. .NET Core 项目启动时运行定时任务

    1.任务需求 在每次服务启动时定时(如24小时)清理一次缓存文件 2.代码实现 1)新建文件清理类 .NET Core 提供了BackgroundService的抽象类,在 ExecuteAsync ...