[TOC]
## 开发过程中常见的问题
开发过程中的验证问题在问题描述中都有说明,根据这个说明可以进行修改处理
### **传值处理前后不一致 Inconsistent Flow**:
:-: ![](https://img.kancloud.cn/46/da/46da97506e2e50b0c6d54f53344a5df5_745x532.PNG)
* **问题描述**:来源对象是单数/复数而传入的对象是复数/单数(The source is repetitive while the flow tartget is non-repetitive)
* **处理方式**:
* 可以单击退验证信息行任意位置,都会将问题所在的开发区内容独立显示
* 必须按实际业务逻辑对应查看,确认是源文件错用为复数或单数还是传入对象错用了,比如查询数据库记录不论怎么传,都应是复数;而且一个复数对象传入一个灰色三解形输出元件,则输出元件一定也应是复数
* 将错用的对象选中,英文输入法下快捷键“r”可以修改元件的单复数状态
### **传值处理前后不一致 Invalid Flow**:
:-: ![](https://img.kancloud.cn/f5/45/f54535149c1c83640c58c23e86679c9a_746x565.PNG)
* **问题描述**:来源对象和传入的对象数据类型不一致(The source and target datatypes are not compatible)
* **处理方式**:
* 可以单击退验证信息行任意位置,都会将问题所在的开发区内容独立显示
* 开发中传值是合乎实际逻辑的,比如不可以将一个数字传给一个图片,让显示图片的元件来显示数字,这样操作就是不合逻辑;计算机无法处理混乱的逻辑;此时应查看前一元件的数据类型,一般对象都是可视化的,所以不会出错,但是输出元件都是灰色三角形,其类型可以是一个数据库表,也可以是一个数字类型,还有可能是空值如“<Done>”名称的输出元件就是空值类型的空值输出,这个类型是否是空值还是数字或其他对象,可以用打开重命名窗口(快捷键F2)查看类型或对象的名称来确认
* 重新传值,或使用正确的来源或传入对象,由逻辑来定义
* 以下为一个学员开发的报错示例:将数据库查询的记录会部传给一个空值输出,由空值再向下传值为记录对象时,空值和库表记录类型冲突;但是如是只是传入空值输出,不再使用记录,逻辑是正确的,因为空值输出说明查询完成且有记录产生,是有意义的逻辑
:-: ![](https://img.kancloud.cn/f1/bb/f1bba7f9e10bdd1d4aff1e4b9b2af653_1025x615.PNG)
### **缺少元件 Missing Element**:
:-: ![](https://img.kancloud.cn/89/de/89de16f19317c2df3cfffce5725505a7_746x540.PNG)
* **问题描述**:没有元件或对象(No Instance of “Date and Time” which appears in the prototype with multiplicity)
* **处理方式**:
* 可以单击退验证信息行任意位置,都会将问题所在的开发区内容独立显示
* 组合类的元件是由其他更多元件组合设计而成的,默认模型中有各类元件,但是我们可以删除不需要元件,可以添加需要的元件;报错只是因为和默认的模型不一样,这类问题可以忽略
* 单击选中验证区中问题行,直接点击验证区右上角的![](https://img.kancloud.cn/93/a7/93a74f2f43f57b9418fe977297656e27_21x21.PNG)“Ignore selected warnings”忽略报错处理
### **不能放此标签的元件 Invalid Tag**:
:-: ![](https://img.kancloud.cn/c6/9e/c69e027b95e6eee875e460fdcee0cfef_747x556.PNG)
* **问题描述**:某个标签的元件下只能有规定的标签元件,新加的元件的HTML标签默认定义不正确(<tr> cannot contain <span>)
* **处理方式**:
* 可以单击退验证信息行任意位置,都会将问题所在的开发区内容独立显示
* 如果是一个表格,设定最外层元件的HTML标签属性就一定是table,而其中只能放thead和tbody标签的元件为表头和表体,表头和表体中只能先中tr,其中再是td单元格对象,这个是浏览器显示信息的HTML语言规范定义的,如果不符合浏览器规范,就报错;这个问题只在复杂表格中会出现
* 单击选中标签类型不对的元件修改html.tag属性为“td”就可以
## 运行时操作使用的报错
如果开发中验证没有问题,使用过程中的报错大部分是数据库相关的
### **查询语句设计有问题 ...SQL...**:
:-: ![](https://img.kancloud.cn/55/66/5566ebda5181fb5ee0db10ecf00127fc_707x361.PNG)
* **问题描述**:多样,上图中是未知的字段“riqia”,输入时手误写错名称
* **处理方式**:
* 这个弹窗中的信息很重要如果有“...SQL...”字符,那么就得查弹窗中所提示的逻辑所在位置的SQL条件等是否正确输入,需仔细检查,常见的有查询条件中字段名称不对、条件中日期、数字、字符常量输入方式不下确等原因,注意一般日期直接传入查询元件,条件语句正常都是一个字符串,所以传入日期进入查询条件那么日期就成为字符串值,出现报错,数字可以直接写入条件中,字符需用单引号括入
* 单击选中标签类型不对的元件修改html.tag属性为“td”就可以
### **用户输入有问题 ...SQL...**:
:-: ![](https://img.kancloud.cn/0e/02/0e0226fdbbce25ba249b8f12b9589427_400x286.PNG)
* **问题描述**:...Duplicate Key
* **处理方式**:
* 这个弹窗中的信息说的比较明确,是因为用户输入的信息中,对应主键的内容在数据库中已有,所以不能插入同样主键值的记录而报错
* 这类问题一般在设计开始就需要预料到,在设计时,为插入元件添加一个“\<Duplicate>”名称的子元件的输出元件,为其添加一个信息弹窗,说明已有此名称的记录(如名称字段为主键)不再进一步处理、或是提前说明如果有重复记录,则更新已有记录(添加一个更新记录元件,将“\<Duplicate>”元件连线传值至更新记录元件的输入元件即可)
:-: ![](https://img.kancloud.cn/80/c2/80c2c273a17b0711d627a46b9d88d292_741x392.PNG)
- TERSUS概述
- 开始开发
- 开发工具
- 常用元件及操作
- 元件属性
- 固定元件名称
- 可视化元件
- 元件使用说明
- 基本操作元件
- Select单击选中
- Marquee框选多个
- Flow传值或流程
- Remove删除对象
- Note备注标签
- Trigger触发器/输入
- Exit输出
- Error Exit异常输出
- 数据类型元件
- Text字符数据/变量
- Number数字数据/变量
- Date日期数据/变量
- Date and Time时间数据/变量
- Boolean布尔数据/变量
- Binary二进制数据/变量
- Map键值数据/变量
- Data Structure自定义数据结构
- Database Record数据库表/记录
- File文件数据/变量
- Error错误或异常类型的数据
- Anthing任意数据/变量
- Nothing空值
- 常量常数元件
- Text字符/文本常量
- Number数字常量
- Date日期常量
- Date and Time时间常量
- Yes布尔常数是
- No布尔常数否
- 行为处理元件
- Action普通行为处理
- Service服务器行为处理
- Secure Service安全验证服务器处理
- System系统功能逻辑处理
- Callable Service可调用的行为处理
- 集合处理元件
- Appears对象是否出现
- Count计数
- Create生成
- Exclude排除
- Exists是否有值对象
- Find Elements查找对象
- First第一个对象
- Get Numberred Item第N个对象
- Last最后一个对象
- Insert Numberred Item插入第N个
- Remove Numberred Item删除第N个对象值
- Merge合并
- Range区间整数值
- Sort排序
- Unique Items唯一化
- Get Map Entry取键值
- Put Map Entry存键值
- Group组合
- Filter Numbers过滤
- 数据库/记录处理元件
- Insert记录插入
- Update更新
- Delete删除
- Database UpdateSQL处理
- Call Procedure执行处理
- SQL Batch批处理
- Squence Number序列号
- Find查询
- Advanced Find高级查询
- Database Query SQL查询
- Commit执行
- Roll Back回滚
- Get Catalogs获取数据源名称
- Get Schemas获取实例名称
- Get Tables获取库表信息
- Get Columns获取字段信息
- 日期时间元件
- Construct Date生成日期
- Construct Date and Time生成时间
- Earlier是否早于
- Earlier or Equal是否早于等于
- Earliest最早日期时间
- Equal是否同一日期时间
- Format Date and Time日期时间转字符串
- Parse Date and Time字符串生成日期时间
- Get Week周序号
- Later是否晚于
- Later or Equal是否晚于等于
- Latest最晚日期时间
- Now当前时间
- Relative Date相对日期
- Relative Time相对时间
- Split Date日期拆分
- Split Date and Time日期时间拆分
- Time Difference时间间隔
- Today当前日期
- Week Dates某周日期
- 用户端处理元件(显示行为元件)
- Alert提示
- Confirm确认
- Set Unload Confirmation退出确认
- Back上页
- Forward下页
- Focus输入定位
- Go to URL打开地址
- Create Location生成地址
- Prompt for Date日期弹窗
- Close Window关闭窗口
- Delete Elements删除元件
- Refresh刷新
- Log Out退出登录
- Play Sound播放音频
- Print打印
- Reload重新加载
- Show File下载
- Switch View跳转显示
- Get Element Name元件名称
- Get Style Attribute获取样式
- Set Style Attribute设定样式
- Get Event Attribute用户行为
- Add Style Class添加样式类
- Remove Style Class删除样式类
- Get View Parameters地址参数
- Get Cookie取客户端用户数据
- Set Cookie存客户端用户数据
- Store键值存入本地
- Retrieve读取本地键值
- Get Parent父元件
- Get Index显示序号
- Get GeolocationGPS位置
- Show树目录显示
- Background Action后台行为(异步)处理
- Call Java Applet执行Applet
- Click点击
- Fire Event触发事件
- Set Alert Mode是否提示
- Take Picture拍照
- Is Online是否联网在线
- 用户端元件(显示元件)
- Pane显示块
- Row行
- Column列
- Toolbar工具条
- Button Group按钮组
- Button按钮
- Image图片
- Label字符标签
- Form表单
- Text Field字符输入
- Text Area多行字符输入
- Password密码输入
- Number Field数字输入
- Date Field日期输入
- Selection Field下拉选择
- File Field 文件输入
- Check Box勾选
- Radio Button Group圆形单选
- Radio Button圆形按钮
- Text Labeled Field带标签的字符输入
- Number Labeled Field带标签的数字输入
- Date Labeled Field带标签的日期输入
- Selection Labeled Field带标签的下拉选择
- Check Box (With Label)带标签的勾选
- Text Display字符显示
- Number Display数字显示
- Date Display日期显示
- Date and Time Display时间显示
- Link链接
- Group组
- List列表
- Page Dialog页
- Modal Dialog弹窗
- Tabbed Pane分页显示
- Split Pane左右栏
- Simple Table简单表格
- Table表格
- HTML Tag任意标签元件
- HTML Display显示超文本
- HTML Editor富文本编辑器
- 流程处理元件
- Add都满足
- Branch是哪些值
- Branch by Type是哪些类型
- Conditional Flow有条件传值
- 数学元件
- Absolute Number绝对值
- Add相加
- Average平均数
- Compare比较
- Convert Text to Number字符串转数字
- Convert Number to Text数字转字符串
- Decrement减1
- Devide除
- Equal是否相等
- Equal with Tolerance是否差不多
- Greater大于
- Greater or Equal大于等于
- Increment加1
- Is Zero是否为0
- Maximum最大数
- Minimum最小数
- Multiply乘
- Negtive是否小于0
- Negtive or Zero是否小于0或等于0
- Positive是否大于0
- Positive or Zero是否大于0或等于0
- Product积
- Random Number随机数
- Round取小数位
- Smaller小于
- Smaller or Equal小于等于
- Square Root平方根
- Subtract减
- Sum和
- 安全控制元件
- Check Permissions是否有权限
- Get All Permissions全部权限
- Get Logged-in User登录用户ID
- Set Logged-in User授权登录
- Get Session Attributes用户服务器信息
- Encript加密
- Decript解密
- Generate Key生成密钥
- Secure Hash哈希加密值
- 文本/字符串处理元件
- Compute Hash转哈希值
- Concatenate合并
- Equal相同
- Extract取字符串
- Get Position位置
- Is Empty是否空值
- Length长度
- Match结构判定
- Replace替换
- Escape Regex正则表达式字符转义
- Split拆分
- Trim移除空格
- Ends with判断结尾
- Starts with判断开头
- Lower Case转小写
- Upper Case转大写
- Binary to Text转字符串
- Text to Binary转二进制
- Encode URL地址编码
- Decode URL地址解码
- Read Lines读取文本
- HTML Filter过滤
- Escape HTML转字符实体
- Unescape HTML实体转字符串
- Escape Text转格式文本
- Unescape Text转字符串
- Prepare Text Template文本模板
- Create Text from Template生成文本
- 集成功能元件
- Deep Copy深拷贝
- Equal对象是否相等
- Identical是否一致
- Convert转数据结构
- Create from Template模板生成字符串
- Get Deployment Parameters部署参数
- Get Content Type格式处理
- Get Context Element取元件
- Get Element取元件
- Set Element设定值
- Read File文件内容
- Read Binary File文件内容
- Create File URL文件地址
- Read Resource文件内容
- Write Resource生成文件
- Log日志
- HTTP Request HTTP请求
- Get HTTP Headers HTTP头信息
- Get File Atrributes文件信息
- Get Folder Contents文件夹信息
- Run External Command运行其他程序
- Load CSV Table上传CSV数据
- Load Excel Table导入Excel数据
- Notify Error报错信息
- SerialIZE XML转XML文本
- Parse XML生成xml数据可视化对象
- Create JSON生成JSON文本
- Parse JSON Json字符转数据可视化对象
- Parse字符串转数据可视化对象
- Run Javascript运行JS脚本
- Send Email发邮件
- Publish发送信息
- Subscribe订阅信息
- Timer定时处理
- Cancel Timer取消定时处理
- Transform Image图片转置
- Convert Image转图片格式
- Get Image Attibutes图片参数
- Get Image Matadata图片属性
- Generate Barcode条码二维码
- Wait等待
- Get Modal获取模型
- Dynamic Invocation动态调用模型
- Invoke Element Action元件操作
- Get Mail邮件信息
- Delete Mail删除邮件
- Parse CSS样式文件
- ZIP文件打包
- Create OpenDocument from Template生成文件
- Convert Document转文件格式
- Convert to PDF文件转PDF
- Stamp PDF PDF签字
- Concatenate PDF 合并PDF
- Get PDF Attributes PDF属性
- 图表元件
- Pie Chart饼图
- Bar Chart柱图
- Line Chart线图
- 自动测试
- Test Runner测试框架
- Test Suite测试包
- Display Test Case显示类测试块
- Process Test Case逻辑类测试块
- 授权版增加元件
- XIRR定投收益率
- Check Password LDAP单点登录认证
- Authorization用户登录模块
- Log日志系统模块
- Auto-complete Input Field自动完成内容输入
- Tree Display and Management树形目录模块
- Variables系统变量参数管理模块
- LDAP Query目录数据查询
- Export to Excel导出数据到Excel
- Update Excel Table数据插入到Excel
- Update Excel Text更新Excel中的值
- 从需求出发的开发
- 语法基础
- 数据类型与变量
- 判断、循环和函数
- 基于对象的处理
- 浏览器程序
- 表单及用户交互
- 窗体和框架
- 正则表达式
- 日期、时间和计时器
- 错误、调试和处理
- 常见报错信息
- Cookie存储信息
- HTML使用
- XML、Json处理
- Office相关文档处理
- Ajax处理
- 消息发送与接收
- 企业级应用
- 应用安全性
- 前端及样式设计
- 常用样式标签
- 用样式类定义样式
- 默认样式文件说明
- Bootstrap样式说明
- 样式设计中图标使用
- 第三方功能接入
- Echarts数据可视化
- 发送短信息
- Lodop专业打印
- 地图API接入
- API接口使用
- 请求第三方接口
- 为第三方提供接口
- 无代码项目中调用
- 数据及数据库管理
- 数据库表
- 库表字段
- 数据库独立管理
- 软件部署与服务器管理
- 服务器环境搭建
- 项目及服务器运维
- APP生成、小程序应用
- 移动端开发
- 小程序类接入
- 生成安卓应用
- 生成iOS应用
- 问题及技术支持