Bex5开发技巧之如何在列表中显示主键字段

简介:

问题


北京起步科技的BeX5是企业开发与政务开发的高效平台,尽管其提供了大量的学习视频与各种形式的快速入门教程,但是,相比于WeX5(完全开源),要想在短期内迅速掌握BeX5开发还是颇有难度的。其一便是实践开发中许多细节在官方教程中根本没有提供,而论坛中一般都有涉及,无奈只提一二,见不到明确的解答。本文记录的正是本人在开发中遇到的一个问题,即如何在Grid列表组件中显示主键字段的问题。


一个概念对象,默认情况下的主键是fID,且其默认值为guid()。另外,这个默认主键在Grid组件中是无法直接显示的。另一方面,概念的主键是可以修改的。还有一个普遍会使用到的情况是一个概念中可能会有多个主键关系(关系即关系数据库表格中的字段)。根据这些特点,并结合文后论坛文章中的提示,我使用了一种方法可以在前端UI2建模界面的Grid列表组件中显示主键字段。



解决办法


1,我重新定义了概念中的fID,即原来其默认值为guid(),我则把它重新定义为nextSeqString('P','000000')。


2,添加了一个新关系,其其实是上面默认关系名fID的一个副本,名字是fSecondPrimaryKey,并作如下图所示设置:

wKioL1ibI0nhF0YtAADKecyNrhA240.jpg-wh_50


3,我的需求是这样的(介绍的次序有些颠倒了),我想创建一个一对多的主从关系,并且想在UI界面中更方便编辑从表中的数据。其实我是有多个这样的一对多的关系表格,并且都是主从关系。


上面这多个‘一’是同一个主表,而多个‘从’表是不一样的。这样,当我向多个从表中添加数据时,从表中一般要显示对应于主表中的主键值,但是这个主键值不可能每次都输入。


如果,在主表编辑时让计算机自动按指定规律(如上面定义的那样)生成一次,则向多个从表中添加新记录时在对应字段中自动填充不是很好吗?


你看一下我的截图可能就明白我的意思了,第一个图如下:


wKiom1ibIyeCeb0FAABRmPJ-adY906.jpg-wh_50


这里,我单独编辑的主表,使用的正是Grid组件,其中的主表的默认主键fID是不会显示的。于是,我使用了它的一个副本(或者叫代替)——自定义的另一个主键secondPrimaryKey(其显示名称是‘第二个主键’)。


注意:上图1中我使用了‘主键关系’的办法,这样一来,就把fSecondPrimaryKey设置为默认主键fID的副本。另外,当概念中需要联合主键时请参考后面的‘参考资源’中介绍(其实,在许多关系数据库中联合主键的使用也不在少数,并不难理解)。


另外,这个副本主键的默认值设置为自定义的内容,如我重新定义的fID的默认值正是一般不二。


上面的主表维护操作对应的设计时选项如下图所示:


wKiom1ibJayxiqMPAADtJt0a3XY969.jpg-wh_50


4,下图正是我众多主从界面输入数据中的其中之一(当然这个只是一个测试例子):


wKioL1ibJjTjfnu0AACihFLcYxI819.jpg-wh_50


如我开始时描述的,我在前面单独创建了主表数据。这样,在类似于上面这种界面下,我在输入从表中数据时,只需要点击一下想对应输入的主表中的某一行,然后在上图下面部分中点击‘添加’,即可以在从表中第一列(即‘主表ID’)中自动输出这个主键值,我只需要输入第二列字段值即可,当再点击下部的添加时,同时第一列(即‘主表ID’)中自动输出这个主键值,我只需要输入第二列字段值......


注:这个图中上部的添加,删除及保存等按钮显然是不需要的,你可以轻易从toolbar组件中去掉它们。



小结


上面的描述介绍了我为什么需要在Grid组件中显示主表主键:我的目的就是在使用同一个主表的多个主从界面下看着(单击一下)主表中的行,即可在从表中输入对应的其他多行(当然,从表中对应的主键值是自动输入的)。不知说清楚了没有,有兴趣的朋友欢迎共同交流。


主要参考资源:


  1. http://bbs.wex5.com/forum.php?mod=viewthread&tid=41360&highlight=%E5%A6%82%E4%BD%95%E6%98%BE%E7%A4%BA%E4%B8%BB%E9%94%AE

  2. http://bbs.wex5.com/forum.php?mod=viewthread&tid=37685

  3. http://bbs.wex5.com/forum.php?mod=viewthread&tid=53161&highlight=%E6%98%BE%E7%A4%BA%E4%B8%BB%E9%94%AE














本文转自朱先忠老师51CTO博客,原文链接: http://blog.51cto.com/zhuxianzhong/1896191,如需转载请自行联系原作者





相关文章
【精讲】PCIe基础篇——PCIe传输速率计算
我们在接触PCIe设备时会接触到一个词,传输速率,比如8GT/s。或者有人问你设备的带宽多少?通信速率多少?本文带你了解下。
7812 0
【精讲】PCIe基础篇——PCIe传输速率计算
|
8月前
|
人工智能 固态存储 iOS开发
5分钟搞定Photoshop 2025安装:官方下载+许可证激活避坑指南
Adobe Photoshop 2025 是 Adobe 公司推出的最新图像处理软件,广泛应用于平面设计、摄影后期和 UI 设计等领域。其核心功能包括智能 AI 工具(一键抠图、生成填充等)、高效工作流(优化图层管理与色彩调整)、跨平台兼容(支持 Windows 11 和 macOS 15)以及云协作功能(与 Adobe Creative Cloud 集成)。本文详细介绍软件的安装流程、系统要求、正版激活方法及常见问题解决方案,并提供扩展学习资源,帮助用户更好地掌握这款强大工具。
32316 3
|
前端开发 JavaScript 搜索推荐
[初学者必看]JavaScript 15题简单小例子练习,锻炼代码逻辑思维
【6月更文挑战第3天】这是一个JavaScript编程练习集,包含15个题目及答案:计算两数之和、判断偶数、找数组最大值、字符串反转、回文检测、斐波那契数列、数组去重、冒泡排序、阶乘计算、数组元素检查、数组求和、字符计数、数组最值和质数判断以及数组扁平化。每个题目都有相应的代码实现示例。
1095 1
|
6天前
|
云安全 人工智能 安全
AI被攻击怎么办?
阿里云提供 AI 全栈安全能力,其中对网络攻击的主动识别、智能阻断与快速响应构成其核心防线,依托原生安全防护为客户筑牢免疫屏障。
|
16天前
|
域名解析 人工智能
【实操攻略】手把手教学,免费领取.CN域名
即日起至2025年12月31日,购买万小智AI建站或云·企业官网,每单可免费领1个.CN域名首年!跟我了解领取攻略吧~
|
10天前
|
安全 Java Android开发
深度解析 Android 崩溃捕获原理及从崩溃到归因的闭环实践
崩溃堆栈全是 a.b.c?Native 错误查不到行号?本文详解 Android 崩溃采集全链路原理,教你如何把“天书”变“说明书”。RUM SDK 已支持一键接入。
625 217
|
存储 人工智能 监控
从代码生成到自主决策:打造一个Coding驱动的“自我编程”Agent
本文介绍了一种基于LLM的“自我编程”Agent系统,通过代码驱动实现复杂逻辑。该Agent以Python为执行引擎,结合Py4j实现Java与Python交互,支持多工具调用、记忆分层与上下文工程,具备感知、认知、表达、自我评估等能力模块,目标是打造可进化的“1.5线”智能助手。
860 61
|
8天前
|
人工智能 移动开发 自然语言处理
2025最新HTML静态网页制作工具推荐:10款免费在线生成器小白也能5分钟上手
晓猛团队精选2025年10款真正免费、无需编程的在线HTML建站工具,涵盖AI生成、拖拽编辑、设计稿转代码等多种类型,均支持浏览器直接使用、快速出图与文件导出,特别适合零基础用户快速搭建个人网站、落地页或企业官网。
1340 157