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. AI换脸实战教学(FaceSwap的使用)---------第二步Tools:处理输入数据集。

    续上篇:https://www.cnblogs.com/techs-wenzhe/p/12936809.html 第一步中已经提取出了源视频的人脸照片以及对应人脸遮罩(landmark以及其他自选遮罩 ...

  2. Ant Design Table 如何动态自定义?Ant Popover 遮挡?

    项目场景: 基于electron + Vue + node.js + express + mysql + evanpatchouli-mysql + Ant-Design-Vue,编写一款属于自己的轻 ...

  3. flutter 底部滑动导航,页面滑动同时让底部导航跟着变动,除了点击还可以滑动哦~~

    实现点击以及滑动都可以切换导航的效果 核心代码 完整代码 // 输入 imrm 快速生成下面 import 'package:flutter/material.dart'; import 'Home. ...

  4. flutter 2.x运行flutter run 报错Cannot run with sound null safety, because the following dependenciesdon'

    flutter 2.x运行flutter run 报错Cannot run with sound null safety, because the following dependenciesdon' ...

  5. 【Redis场景3】缓存穿透、击穿问题

    场景问题及原因 缓存穿透: 原因:客户端请求的数据在缓存和数据库中不存在,这样缓存永远不会生效,请求全部打入数据库,造成数据库连接异常. 解决思路: 缓存空对象 对于不存在的数据也在Redis建立缓存 ...

  6. 论文翻译:2022_2022_TEA-PSE 2.0:Sub-Band Network For Real-Time Personalized Speech Enhancement

    论文地址:TEA-PSE 2.0:用于实时个性化语音增强的子带网络 论文代码: 引用: 摘要 个性化语音增强(Personalized speech enhancement,PSE)利用额外的线索,如 ...

  7. C#,Winform软件防破译-源代码加密简单方法之.NET REACTOR(一)

    一..NET Reactor介绍 .NET Reactor是一个功能强大的代码保护和软件许可系统,适用于为.NET Framework编写的软件,并支持生成.NET程序集的所有语言. 支持Blazor ...

  8. saas解决redis数据库分离的一种方案

    package com.xf.config; import java.util.HashMap; import java.util.Map; import java.util.Set; import ...

  9. 网络连接(CSP-J 2021 T3)

    一道又臭又长的模拟题目..... 主要有几个小技巧可以帮大家省一省代码: 1.scanf("%d.%d",&b,&c); 这里是定了一个格式如果不按格式来就不输入后 ...

  10. 最长上升子序列 II 时间复杂度(nlogn)

    题目:最长上升子序列 II 给定一个长度为 N 的数列,求数值严格单调递增的子序列的长度最长是多少. 输入格式 第一行包含整数 N. 第二行包含 N个整数,表示完整序列. 输出格式 输出一个整数,表示 ...