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日 下午8:41
下一篇 2019年6月10日 下午8:41

相关推荐

  • wincc读取数据不稳定如何解决

    从PIC1500中用AS读取一个模拟量,该模拟量是在PLC程序的DB数据块中,是一个可调节阀门的开度,在PLC中该阀门开度稳定是一个常值,但是在wincc中变量是不稳定的,由常值突…

    SIMATIC WinCC 2017年6月8日
  • 用户归档上传与删除

    用ID JOB的方式做好后,-1 6 可以上传,返回值为0;但,-1 8却不能删除,返回值为-1,请问是哪里有问题呢? 问题补充:问题是,我…

    SIMATIC WinCC 2018年12月14日
  • 两台电脑的wincc项目文件同步

    项目中经常有2台电脑作为上位机,在组态时通常是先做好一台,然后复制到另一台电脑运行即可,我的问题是:是否可通过一条指令实现两台电脑的wincc项目文件同步,省去文件拷来拷去。请教大…

    SIMATIC WinCC 2021年7月5日
  • wincc显示的问题

    用wincc同时显示多个画面在几个不同的显示器上,控制1显示器时,其它的显示器无变化,以此类推。 问一下:1.在wincc里如何解决这个问题。 2.电脑硬件如何…

    SIMATIC WinCC 2019年6月11日
  • wincc哪个版本支持项目语言为俄文

    现在要做一个项目,项目文本需要显示俄文。目前手上有wincc7.0sp3亚洲版,没有欧洲版,不知道是否需要购买欧洲版的wincc?项目文本如何能实现中文和俄文的切换? 最佳答案 不…

    SIMATIC WinCC 2021年7月5日
  • 有7台313C-2DP和WINCC FLEXBLE连接

    有7台313C-2DP和AUDIT   FOR  WINCC FLEXBLE连接,电脑配5611。问题1.这样配置可以组…

    SIMATIC WinCC 2019年6月11日
  • 人机选型

    要求:有Profibus-DP和USB接口,7寸彩色屏,请推荐型号,或发相关系列选型样本给我,谢谢! 问题补充:连接CPU226CN PLC或1200系列PLC, 最佳答…

    SIMATIC WinCC 2017年7月30日
  • wicc报错

    WICC6.0 SP3以前运行正常,最近经常报错,当打开画面后,单击,屏幕出现stg open storage hr=80030002&nb…

    SIMATIC WinCC 2019年6月11日
  • WINCC的动画

    在WINCC中通过一个开关接通后2个图片交替闪烁 最佳答案 还是全局脚本,做一个定时器。通过定时器来触发交替显示图片。 提问者对于答案的评价:谢谢

    SIMATIC WinCC 2017年6月27日
  • wincc显示问题

    在wincc控制画面显示四个子控制画面,当点击任一个画面时,这个子画面屏显示,请问高手如何实现啊 最佳答案 1. 在画面中添加4个画面窗口,将这4个画面窗口分别与4个pd…

    SIMATIC WinCC 2019年6月11日