KingSCADA脚本函数使用常见问题解答

5星 · 超过95%的资源 需积分: 50 30 下载量 103 浏览量 更新于2024-09-10 1 收藏 255KB PDF 举报
"步科触摸屏脚本函数常见问题解答" 在步科触摸屏的编程过程中,常常会遇到各种关于脚本和函数的疑问。以下是对这些常见问题的详细解释: 1. KingSCADA的条件事件脚本等系统脚本中不能直接调用画面内部的对象。这是因为系统脚本通常在特定条件下运行,不支持直接访问画面对象。 2. 若要在不同画面间调用对象,可以通过全局变量或者自定义事件来实现。先定义全局变量,然后在源画面中改变变量值,在目标画面中根据变量值操作对象。 3. 画面自定义变量和属性仅能在当前画面内被图素引用,其他画面无法直接访问。若需跨画面共享,可使用全局变量。 4. `EnableNavigate()`用于启用或禁用导航图功能,而`ShowNavigateWindow()`则用于显示或隐藏导航窗口,两者作用不同,前者控制操作权限,后者控制界面显示状态。 5. `SavePictureToFile()`和`SaveWholePictureToFile()`函数用于保存画面,如果在按钮命令语言中不执行,可能是因为权限问题或执行时机不当,确保在正确的时间点触发该函数。 6. 使用`SQLCreateTable()`创建数据库表失败可能是因为SQL语句错误、权限不足或数据库连接问题。检查SQL语句语法并确保数据库连接正常。 7. `SQLDropTable()`删除表格失败可能是表格正被使用,或未正确关闭数据库连接。尝试先断开所有连接,再尝试删除。 8. `SQLGetRecord()`无法返回指定序号的记录可能是因为选择集为空或序号超出范围。确保选择集有有效数据,并使用正确的记录序号。 9. `VarRefAddress()`未能正确引用变量可能是类型匹配问题或变量未定义。确保变量类型正确且已存在。 10. 获取当前报警数量,可使用系统函数`GetAlarmCount()`。 11. 手动删除实时报警记录,可通过编写脚本调用清除报警的API函数。 12. KingSCADA可以通过`OpenFileDialog`函数实现弹出对话框让用户选择文件。 13. 累计计算脚本长时间运行后累计值不变,可能是因为清零逻辑或更新机制有误,检查脚本中的计数逻辑。 14. `FileWriteStr()`输出文本丢失字符可能是格式化字符串问题,检查字符串格式是否正确,百分号 `%` 需要转义。 15. 应用启动时未打开画面,可能是脚本执行时机不正确或画面加载错误,检查启动脚本和画面配置。 16. 数据库查询或插入失败,可能是因为连接超时、数据冲突或SQL语句错误,检查数据库连接设置和SQL语句。 17. KingSCADA的全局脚本和局部脚本大小无硬性限制,但过大的脚本可能导致性能下降,建议合理拆分和优化脚本。 18. 类似于组态王的`ListLoadFileName()`功能,KingSCADA可使用`ListBox`控件配合`EnumFiles()`函数加载同一类型的文件名。 19. 获取加密锁序列号,需调用相应的API函数,具体方法需查阅官方文档。 20. 使用`KDBGetDataset()`操作Access数据库时出现“对象关闭”错误,通常是因为数据集未正确打开或已关闭,确保在打开状态下进行操作。 21. 图素对象属性中的`hotkey`热键用于设置快捷键,当用户按下指定的组合键时,将触发图素的事件。 以上是针对步科触摸屏脚本函数的常见问题及解决办法,理解和掌握这些知识有助于提高在KingSCADA中的编程效率和问题排查能力。