wincc6.2使用VBS脚本写入SQL数据库不执行问题

我在使用wincc进行流量统计时遇到一个问题,使用wincc6.2版本,通过VBS编程写入数据库,采用1s的定时器作为触发条件,每天23:59:58进行一次写入数据库,在离线进行测试时一切正常,但上线后只有第1次执行正常,其它时候无法写入数据库,通过逐条判断,是写入VBS中的objCommand.Execute不执行,因为具有查询功能,因此在打开主画面时就连接数据库,且不关断,请诸位高手能否指点一二,感激不尽!

代码如下:
连接数据库:
Sub objConnection
  Dim objConnection,strConnectionString
  strConnectionString ="Driver={SQL Server};Server=.\WINCC;uid=;pass=;database=Flow_accumulative" 

  Set objConnection = CreateObject("ADODB.Connection") 
  objConnection.ConnectionString = strConnectionString 
  objConnection.open 
 
  HMIRuntime.DataSet.Add "objConnection",objConnection

End Sub
执行写入操作:
Sub WriteFlowACC
  Dim objConnection,objCommand,strSQL
  objConnection= HMIRuntime.DataSet("objConnection").Value
  Dim Objtag1,Objtag2
  Dim yy,mm,hh,dd,mn,ss,formatdates
  Set Objtag1 = HMIRuntime.Tags("Air_flow_accumulative")
  Set Objtag2 = HMIRuntime.Tags("Water_flow_accumulayive")
  Objtag1.Read 
  Objtag2.Read 
  yy = Year(Now)
  mm = Month(Now)
  dd = Day(Now)
  hh = Hour(Now)
  mn = Minute(Now)
  ss = Second(Now)
  If mm < 10 Then
    mm = "0" & mm
  End If
  If dd <10 Then
    dd = "0" & dd
  End If
  If hh <10 Then
    hh = "0" & hh
  End If 
  If mn < 10 Then
    mn = "0" & mn
  End If
  If ss <10 Then
    ss = "0" & ss
  End If 
  formatdates =" " & yy & "年" & mm & "月"  & dd & "日" 
    strSQL = "insert into FLOW_ACC (Sequance_NO,Air_flow_accumulative,Water_flow_accumulayive,Insertime) values("
    strSQL = strSQL & "'" & formatdates & "',"
    strSQL = strSQL & "'" & Objtag1.Value & "',"
    strSQL = strSQL & "'" & Objtag2.Value & "',"  
    strSQL = strSQL & "getdate())"
  Set objCommand = CreateObject("ADODB.Command") 
  With objCommand 
    .ActiveConnection = objConnection 
    .CommandText = strSQL 
  End With 
  objCommand.Execute 
End Sub

问题补充:
谢谢各位,问题已经找到,是数据结构的问题,在建数据表的时候使用了精确数据类型decimal(9,2),将浮点数写入的时候会造成不执行,修改数据表数据内容后恢复正常。

最佳答案

看看以下链接对您有没有帮助:
《巧妙运用WinCC V6.0 VBS 脚本实现对 SQL Server数据库的存储与查寻》
http://www.autooo.net/autooo/ruanjian/jishu/2007-09-19/15040_2.html
《wincc中使用VBS脚本读写SQLServer数据库文件》
http://wenku.baidu.com/view/01105a32a32d7375a4178033.html
《第一次接触WINCC中的数据库,求助。在WINCC中用VBS脚本向SQL数据库循环写数据》
http://www.ad.siemens.com.cn/club/bbs/post.aspx?b_id=5&a_id=496335
《wincc6.2_脚本系统》
http://www.doc88.com/p-987399177911.html
《WinCC V60 VBS 脚本实现对 SQL Server数据库的存储与查寻》
http://www.docin.com/p-282249278.html

提问者对于答案的评价:
谢谢

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc255780.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月10日
下一篇 2019年6月10日

相关推荐

  • WinCCshouquan

    请问:WinCCV7.0授权长期秘钥到底如何选择?试了很多次不同授权组合,但一直都有提示A9WRC?0700缺失许可证,下图是现在所安装的授权组合,仍然不行。望高手指点迷津,谢谢 …

    2021年7月5日
  • TP177a的屏

    我要做两个切换,使用的是“开关”,分别是手动/自动和单动/联动,通过文本切换的方式,在仿真和实际使用时,发现单动/联动的开关没有问题,可以正常切换,但是手动/自动的开关总是显示为一…

    SIMATIC WinCC 2017年11月4日
  • WINCC控制200PLC问题

    WINCC通过PCACCESS软件控制200PLC,程序是启动后Q点每隔3秒顺序启动,现在问题是按下停止按钮后Q点又自动启动,程序没问题,调试很成功,就是用WINCC画面控制后出现…

    SIMATIC WinCC 2021年7月5日
  • 怎么将外部变量和全局变量相连

    当做画面模板时,为了不使用变量前缀。。用了个全局变量。怎么让全局变量使用的是外部变量啊?就是在画面模板操作的不是带前缀的外部变量。 最佳答案 楼主是希望画面模版中某些不使用变量前缀…

    SIMATIC WinCC 2019年6月11日
  • 如何用C脚本获得画面窗口标题内容

    如何用C脚本获得画面窗口标题内容, 最佳答案 可以使用GetPropChar("画面窗口名字","对象名","对象属性名&quot…

    SIMATIC WinCC 2019年6月11日
  • wincc各颜色的值

    我想问一下我在使用wincc的C脚本时,需要用到颜色的值,不知到那里能找到? 问题补充:用滚动条的我会,我就是想用C语言试一下,就是不知它们具体的值! 最佳答案 下载中心有winc…

    SIMATIC WinCC 2019年6月11日
  • WINCC冗余服务器,曲线显示突然丢失了

    WINCC冗余服务器,曲线显示突然丢失了!左边实时曲线是有的,右边只有高高报和低低报的曲线。看了曲线链接状态也是正常的,求大神解决 图片说明:    &nbsp…

    2021年7月5日
  • wincc 7.0 C脚本编程故障

    系统对C脚本本能正常编译和保存,系统报错line 0 error (008f): code is restricted&…

    SIMATIC WinCC 2017年11月26日
  • WinCC v6.2开关量写入PLC

    我现在用RS485PPI电缆实现了PLCS7-224和WinCC v6.2的连接,可以读取PLC内部的值,如VD2之类的实时值,现在我想在WinCC做一个开关可以控制PL…

    SIMATIC WinCC 2017年5月28日
  • flexible advance 如何更换版本

    我有一个程序是flexible advance 1.67版本的,但是我现在电脑里安装的是1.83版本的。怎么才能打开程序呀 ?急!!!谢谢 最佳答案 …

    SIMATIC WinCC 2017年6月24日