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. Java线程诊断

    1.诊断CPU占用过高 [root@master ~]# nohup java -jar JvmProject.jar & // 有问题的java程序 [1] 1627 [root@maste ...

  2. [C++]std::sort()函数使用总结

    函数声明 template< class RandomIt, class Compare > constexpr void sort( RandomIt first, RandomIt l ...

  3. [cocos2d-x]registerScriptHandler和registerScriptTapHandler区别

    一 .调用registerScriptHandler 的对象不同相应的响应函数和调用方式也不相同 1. 对象为layer时调用方式为: local function onNodeEvent(event ...

  4. [cocos2d-x]用getContentSize()返回的值用CCLOG打印必须用%f

    今天写代码,又遇到了一个bug,开始还以为是我自己哪写错了,没想到竟然在这里出错? 而width和height的类型是float类型,为什么必须用%d打印?接着我查看了一下源码: 如果没理解错的话,C ...

  5. Coolify系列01- 从0到1超详细手把手教你上手Heroku 和 Netlify 的开源替代方案

    什么是Coolify 一款超强大的开源自托管 Heroku / Netlify 替代方案 coolLabs是开源.自托管和以隐私为中心的应用程序和服务的统称 为什么使用Coolify 只需单击几下即可 ...

  6. angular引入http服务创建服务注入

  7. [Codeforces Round #816 (Div. 2)] D. 2+ doors

    这次Div.2比之前我打的有些要难啊,前三道题就耗了好多时间,D题干脆摆烂了... 还是太逊了 对于一个\(x\),有\(x|y_i=z_i\),那么我们设\(num[x]=z_1\)&\(z ...

  8. Keil 5(Keil C51)安装与注册 [ 图文教程 ]

    前言 Keil C51 是 51 系列兼容单片机 C 语言软件开发系统,支持 8051 微控制器体系结构的 Keil 开发工具,适合每个阶段的开发人员,不管是专业的应用工程师,还是刚学习嵌入式软件开发 ...

  9. Quartz.Net 官方教程 Tutorial 1/3(Jobs 和 Trigger)

    根据官网说明 类型 概述 IScheduler 调度类核心接口 IJob 独立实现业务逻辑需要继承的任务接口 IJobDetail 给任务接口定义实例的任务说明类接口 ITrigger 触发器,设置何 ...

  10. Node.js 应用全链路追踪技术——全链路信息存储

    作者:vivo 互联网前端团队- Yang Kun 本文是上篇文章<Node.js 应用全链路追踪技术--全链路信息获取>的后续.阅读完,再来看本文,效果会更佳哦. 本文主要介绍在Node ...