WinCC、Connectivity Pack 连接数据库问题(补充2)

(1)我使用OLE-DB访问本地数据库,VBS使用的是@DataSourceNameRT访问数据库,不知怎么的报错,求解答啊,谢谢。
(2)WINCC数据库的名称在哪里啊,本地的SQL 2005工具我点击了下,看不见啊,求大神啊,现在看文档都说使用@DataSourceNameRT的变量访问最好,但是又报错。求帮助啊,谢谢
我是用的是 WINCC FLEXIABLE 2008 
源代码

Function WinCCDataSourceAcess(connObj,pSQL)

'建立到数据库的连接
'读取本地的WinCC运行数据库名称
Dim DatasourceNameRT,DataConnectionName

Set DatasourceNameRT = HmiRuntime.Tags("@DatasourceNameRT")
DatasourceNameRT=DatasourceNameRT.Read

'定义数据库连接字符串      
Dim sPro,sDsn, sSer 
sPro = "Provider=WinCCOLEDBProvider.1;"
sDsn =  "Catalog=" & DatasourceNameRT & ";"
sSer = "Data Source=.\WinCC"
DataConnectionName = sPro + sDsn + sSer

' 定义查询语句字符串
Dim sSQL
sSQL=pSQL

'建立连接
Dim oRs,oCom,conn
Set conn = CreateObject("ADODB.Connection")
Set conn=connObj
conn.ConnectionString = DataConnectionName
conn.CursorLocation = 3
conn.Open

'创建查询的命令文本
Set oRs = CreateObject("ADODB.Recordset")
Set oCom = CreateObject("ADODB.Command")
oCom.CommandType = 1
Set oCom.ActiveConnection = conn
oCom.CommandText=sSQL

'执行查询
Set oRs = oCom.Execute

'返回结果
Set WinCCDataSourceAccess=oRs

If Err.Number <> 0 Then

'MsgBox  "error Code" & Err.Number & "Source:" & Err.Source & "error description" & Err.Description
Err.Clear

End If

On Error GoTo 0

End Function

图片说明:

WinCC、Connectivity Pack 连接数据库问题(补充2)   

最佳答案

建议你将@DatasourceNameRT换成实际的数据库的名称,因为该变量 是WINCC组态软件的内部系统变量,你的脚本在WINCC里面是可行,放在WINCC FLEXIABLE 2008 中,不一定能识别。
        另外,我怎么觉得你写的脚本像是WINCC里面的脚本啊,不会弄差了吧??
         建议 参考一下以下资料:
         http://support.automation.siemens.com/CN/llisapi.dllfunc=cslib.csinfo&lang=zh&objid=26283062&caller=view

提问者对于答案的评价:
虽然没解决问题,但是还有参考的价值

专家置评

答非所问!WINCC FLEXIABLE 2008与wincc v6/v7是完全不同的两个软件。
F0359 SIMATIC WinCC和SIMATIC WinCC Flexible的区别 
http://www.ad.siemens.com.cn/download/searchResult.aspx?searchText=F0359

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年11月23日 下午3:40
下一篇 2017年11月23日 下午3:40

相关推荐

  • wincc静态文本

    我打开项目时静态文本文字怎么显示问号?请指教谢谢 最佳答案 在图形编辑器里插入静态文本时,静态文本的文本的属性默认的是 “??????”,不加修改,运行后就显示为&nbs…

    SIMATIC WinCC 2019年6月11日
  • wincc数据显示问题

    WINCC激活时弹出CCArchiveManager.exe遇到问题需要关闭,激活之后在线趋势和报表自动与数据库断开连接,数据无法查询,这个问题挺难搞,西门子官方说是WINCC与系…

    SIMATIC WinCC 2019年6月11日
  • 通过vbs在excel中记录数据的问题

    想实现在WINCC中生成excel报表的功能,在网上搜集了一些代码,现在的可以通过vbs中CreateObject的方法实现基本的读写。但有一个问题始终无法解决:每次在记录数据时,…

    SIMATIC WinCC 2018年3月6日
  • 在wincc上加报警

    现场项目时一个服务器加六个客户机,现在想在现场增加几个报警,使在服务器上的项目管理器中增加吗? 最佳答案 是的根据你的C/S结构方式不同,有得也能在客户机上做,不过在服务器上做了,…

    SIMATIC WinCC 2017年6月6日
  • access如何通过opc访问wincc数据

    如何通过OPC将WINCC 数据导入ACCESS数据库,最好有实例。 O(∩_∩)O谢谢!!! 邮件:hexianjing101@163.com&nb…

    SIMATIC WinCC 2019年6月11日
  • wincc如何实现对用户密码做到期提醒

    已经做好用户登录密码修改之类的操作,但是客户想要给做成能定期提示用户修改密码。比如说30天当用户1登陆时提示他密码即将到期,及时修改密码之类的 问题补充:好吧,先说下我自己的想法吧…

    SIMATIC WinCC 2017年6月19日
  • WinCC flexible 2007问题

    各位大哥,在你们帮助下,软件装好了,但问题又来了,我的K-TP178触摸屏坏了,按不动,不能进入传送状态,有办法把里面的程序调出来吗,还有K-TP178不能回传只能备份吗,如备份能…

    SIMATIC WinCC 2019年6月11日
  • modbus TCP如何同时使用两台wincc同时监控数据。

    一台智能仪表使用modbus TCP协议,使用一台wincc7.4上位机监控操作正常,不能同时使用两台上位机同时监控。问题是如何设置成两台上位机同时监控智能仪表mobus…

    SIMATIC WinCC 2021年7月5日
  • 通讯实现

    我想让plcsim与wincc通讯 然后再让wincc与simulink进行opc通讯,但是这三者好像不能安装在同一系统,怎样办? 最佳答案 将simulink&nbsp…

    SIMATIC WinCC 2021年7月5日
  • WINCC中的运行系统RT和组态,运行RC版有什么区别

    WINCC中的运行系统RT和组态`运行RC版有什么区别? 运行系统RT有什么功能? 组态`运行RC版有什么功能? 问题补充:我想再问下,是否RC和RT都要做好相…

    SIMATIC WinCC 2019年6月11日