西门WINCC 脚本的问题

已锁定

手机用户20181123623898

  • 帖子

    5
  • 精华

    0
  • 被关注

    1

论坛等级:游士

注册时间:2018-11-23

黄金 黄金 如何晋级?

西门WINCC 脚本的问题

486

1

2019-08-28 15:10:53

我用wincc 做报表的时候,想通过前台输入四个字段往SQL里有个产品批次库表里写数据,按一下按钮写一次,要求是批次号不能重复,我在SQL表里做了限制是不能重复的,但在脚本里无法判断也不知道怎么判断字符串里的数字错误(有重复)执行程序时,wincc会报错,如果点取消,程序会停止执行,再次再启动不了,如果停止了怎么也启动不了,除非重启WINCC ,停止执行后就是输入不重复的数字也不会往表写东西,

我的问题 是在脚本里的什么地方加个判断语句就是字符串的返回值错误的意思,我输出个提示框有重复重新输入,点确定可重新输入。不要让那些乱七八遭的调试错误的提示出来,我在wincc里把提示和脚本调试时关了,输入重复倒是什么也不弹,但是也不会执行,也不会写成功数据。

1.jpg

2.jpg

3.jpg

我的写入脚本代码如下,

Option Explicit

Function action


'On Error Resume Next         '脚本出现错误,跳出

'在VBS脚本中,WINCC的变量不能直接使用,所以需要定义内部变量,获取到WINCC的变量

Dim EndB,First 

EndB = HMIRuntime.Tags("P0").Read                 '读取停止标志

            

If EndB=1 Then                                          '设备停止时,执行存储数据


'定义数据库连接,SQL脚本执行等,不需要变动

Dim objConnection            

Dim strCon                   

Dim strSQL           

Dim objCommand               

'strCon= "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;password=20140226;Initial Catalog=WINCC;Data Source=.\WINCC"  'SQL用户名密码登录

strCon=  "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=WINCC;Data Source=.\WINCC"    

Dim Data01,Data02,Data03

Data01 = HMIRuntime.Tags("HMI-IN_PRODUCT_NUM").Read

Data02 = HMIRuntime.Tags("HMI-IN_PRODUCT_NAME").Read  

Data03 = HMIRuntime.Tags("HMI-IN_PRODUCT_WEIGHT").Read       

                 

  

 

    strSQL="INSERT INTO weight (product_num,product_name,product_weight) VALUES ('"&Data01&"','"&Data02&"','"&Data03&"')"

   


Set objConnection= CreateObject("ADODB.Connection")                 '创建连接对象

objConnection.ConnectionString= strCon                              '连接对象赋值

objConnection.Open                                                  '打开数据库连接

Set objCommand= CreateObject("ADODB.Command")                       '创建执行对象

With objCommand

.ActiveConnection= objConnection

.CommandText= strSQL

End With

objCommand.Execute                                                  '执行SQL命令,更新数据库

Set objCommand= Nothing                                             '清空Command命令

objConnection.Close                                                 '关闭数据库连接

Set objConnection= Nothing

MsgBox "插入成功"                                          '清空数据库连接字符串

End If

End Function


西门WINCC 脚本的问题 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC WinCC / Panel

共有32569条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。