WinCC 交叉索引中索引不到的变量和画面
首先来看看什么情况会导致交叉索引无法索引到变量和画面呢?
这种情况会出现在脚本中使用变量和画面时,由于脚本编写没有参照 WinCC 中的规范,则会出现交叉索引无法索引到变量和画面的问题。
- 无法索引到变量的情况:
这通常会出现在 C 脚本中使用的变量,如果没有按照 WinCC 规范编写则会出现,如下图所示的情况
从图中可以看到,明明在 C 脚本中使用了 2 个变量,并且编译和执行都没有问题,而在交叉索引中这 2 个变量的使用状态却仍为“未使用”状态。
如果使用 VB 脚本操作变量情况则相对好一些,如果没有按照规范编写倒是也能索引出来。
- 无法索引到画面的情况:
C 脚本中使用的画面,如果没有按照 WinCC 规范编写则会出现如下图所示的情况
可以看到在 C 脚本中使用了画面“CRScreen1”,并且编译和执行也都没有问题,而在交叉索引中这 2 个画面的使用状态也是“未使用”状态。
如果使用 VB 脚本实现同样的功能,而编写时也没有参照 WinCC 的编写规范,就不会像在 VB 脚本中使用变量那么幸运了,同样也是无法被正确索引出来的。
可以看到在VB脚本中使用了画面“CRScreen1”,并且编译和执行也都没有问题,而在交叉索引中这 2 个画面的使用状态也是“未使用”状态。
可能很多工程师会有疑问,用了这么些年的 WinCC ,写了这么多的脚本,功能执行也都没有什么问题,为什么要遵循 WinCC 的脚本编写规范?规范在哪里有描述呢?
是的,在实际应用中没有完全按照 WinCC 的脚本规范编写,确实也不太会影响实际的执行结果。但是一旦需要通过交叉索引查找在脚本中使用过的变量和画面时,麻烦就会出现。那这个编写规范在哪里呢?
- C 脚本的 WinCC 编码规则
打开WinCC 目录和索引(在线帮助系统) > 使用 WinCC > 用于创建函数和动作的 ANSI-C > 创建和编辑动作 > WinCC 编码规则
在这为了阅读方便也就不摘抄了。只要按照规范修改之前的 C 脚本,交叉索引也就能正确的索引到脚本中使用的变量和画面了。修改后如下图。
从图中可以看到,按照规范修改了变量“CRTag1”的使用之后,交叉索引就可以正确索引出变量的使用状态并链接到其使用的位置了。而仍未按规范修改的变量“CRTag2”则还是无法被正确索引。
- VB 脚本的 WinCC 编码规则
打开WinCC 目录和索引(在线帮助系统) > 使用 WinCC > 用于创建过程和动作的 VBS > CrossReference 的使用
从实际测试效果来看,对于变量在 VBS 中的使用却没有那么严格。而对于画面的使用,如果没有按照规范编写确实是无法正确索引出来。按照规范修改之前的 VB 脚本之后,也就能正确索引出脚本中画面的使用了。修改后如下图。
由此可见,程序编写的规范化是多么的重要。有个好消息是,如果 C 脚本之前未按 WinCC 规范编写而导致交叉索引无法正确索引时,有个小工具可以帮到大家。那就是 Cross Reference Assistant(交叉索引助手)。
通过开始菜单打开交叉索引助手程序,打开时,会有关于交叉索引助手的相关说明,如下图:
然后根据向导进行操作,如下图。
操作开始前将脚本编辑器以及画面编辑器关闭。操作完成后,全局脚本和画面脚本中的 C 脚本对变量与画面的引用将会转换为规范的编写,如下图。
关于交叉索引更详细的内容请参考:
https://support.industry.siemens.com/cs/cn/zh/view/109780818
欢迎访问西门子1847工业学习平台,这是一个官方的学习平台,能够帮助您高效获得实用和权威的资料。
西门子1847工业学习平台https://www.ad.siemens.com.cn/1847/?utm_term=1847&channel_link_type=web&utm_campaign=1847%E4%B8%BB%E9%A1%B5%E6%8E%A8%E5%B9%BF&sat_cf=1&utm_medium=article&_channel_track_key=xlxc5BrE&utm_source=csdn&utm_content=article
WinCC 交叉索引中索引不到的变量和画面相关推荐
- mysql索引 聚集索引_Mysql 索引实现原理. 聚集索引, 非聚集索引
Mysql索引实现: B-tree,B是balance,一般用于数据库的索引.使用B-tree结构可以显著减少定位记录时所经历的中间过程,从而加快存取速度.而B+tree是B-tree的一个变种,My ...
- mysql复合索引(联合索引)的使用场景
什么是联合索引? 联合索引又叫复合索引.对于复合索引:Mysql从左到右的使用索引中的字段,一个查询可以只使用索引中的一部份,但只能是最左侧部分.例如索引是key index (a,b,c). 可以支 ...
- mysql复合索引使用场景_mysql复合索引(联合索引)的使用场景
什么是联合索引? 联合索引又叫复合索引.对于复合索引:Mysql从左到右的使用索引中的字段,一个查询可以只使用索引中的一部份,但只能是最左侧部分.例如索引是key index (a,b,c). 可以支 ...
- mysql复合索引的应用场景_mysql复合索引(联合索引)的使用场景
什么是联合索引? 联合索引又叫复合索引.对于复合索引:Mysql从左到右的使用索引中的字段,一个查询可以只使用索引中的一部份,但只能是最左侧部分.例如索引是key index (a,b,c). 可以支 ...
- 11G Concept 第三章翻译 Indexes and Index-Organized Tables(索引和索引组织表)
Indexes and Index-Organized Tables(索引及索引组织表) 本章讨论index(索引),它是schema object,它能加快访问行的速度 还讨论了index-orga ...
- pandas索引复合索引dataframe数据、索引dataframe中指定行和指定列交叉格子的数据内容(getting a specific value)、使用元组tuple表达复合索引的指定行
pandas索引复合索引dataframe数据.索引dataframe中指定行和指定列交叉格子的数据内容(getting a specific value).使用元组tuple表达复合索引的指定行 目 ...
- pandas获取dataframe中索引值最大值所在的数据行(get dataframe row of max index value)
pandas获取dataframe中索引值最大值所在的数据行(get dataframe row of max index value) 目录 pandas获取dataframe中索引值最大值所在的数 ...
- Pandas中xs()函数索引复合索引数据的不同切面数据(索引复合索引中需要的数据):索引列复合索引中的一个切面、索引行复合索引中的一个切面
Pandas中xs()函数索引复合索引数据的不同切面数据(索引复合索引中需要的数据):索引列复合索引中的一个切面.索引行复合索引中的一个切面 目录
- 索引中丢失 IN 或 OUT 参数:: 103,解决办法
索引中丢失 IN 或 OUT 参数:: 103 这个原因是数据库中的字段类型与SQL语句中的类型不匹配造成的,103代表第103个字段参数错误.找到对应参数配置或者SQL中这个参数的类型是否与数据库 ...
最新文章
- C语言的数顺序输出与反序输出_只愿与一人十指紧扣_新浪博客
- postgresql创建表
- 将Numpy加速700倍——CuPy
- 节点插入--对比jQuery和JavaScript方法(一)
- python能和c语音交互吗_Python和C语言交互--ctypes,struct
- ai人工智能的数据服务_数据科学和人工智能如何改变超市购物
- 线性代数常用的公式LaTeX表示
- AMS1117典型电路
- js 小写金额转大写金额
- 明翰英语教学系列之雅思篇V1.9(持续更新)
- python2.0下载_【Python for S60V2】Python for S60V2 V2.0官方免费下载_正式版下载-多特软件站...
- 逆波兰算法(后缀表达式)
- 学习MySQL这一篇就够了
- C语言中关于二进制的换算
- 关于pos打印机通过tcp/ip操作打印指令集
- Linux_进程控制(创建进程,等待进程,进程终止)
- 垂直搜索开发:垂直搜索引擎开发全过程[原创]
- c++解一元三次方程
- win10计算机怎么连接网络,win10怎么设置宽带连接,教您修复宽带连接问题
- 中小企业数字化转型的痛点分析
热门文章
- c语言编程题:m个人围成一圈,每数n个人就踢出一个直到剩下一个人,m个人围成一圈,1,2,3循环报数,报到3的人退出,并... m个人围成一个圈有多少种方法?...
- 安卓图形之MPAndroidChart3.0详解一——折线图
- 处理机调度之作业调度
- 视频怎么做成GIF动图?教你一键在线视频转GIF制作
- SkeyeVSS实现消防安全通道智能识别监控解决方案
- android当u盘,堪称神器!小软件让安卓当U盘亦可读文件
- 『转』FFMPEG目前为止支持的所有格式列表
- springboot mvnw.cmd not working
- 80年代看深圳90年代看浦东21世纪看南沙
- 【现代卫星导航系统】之 GPS 卫星导航系统