ADO方式去访问用户归档数据库

Dim sPro 

 Dim sDsn 

 Dim sSer 

 Dim sCon 

 Dim sSql 

 Dim oRs 

 Dim conn 

 Dim oCom 

 Dim oItem 

 Dim m, n, s

 Dim hourdate 

 Dim secdate 

 Dim k

 Dim oList

 Set oList = ScreenItems("Para_Listview")

 oList.View =3

 oList.ListItems.Clear

 ''[RED]WinCCOLEDBProvider[/RED]

 sPro = "Provider=WinCCOLEDBProvider.1;"

 sDsn = "Catalog=CC_extrudin_07_09_12_14_02_42R;"

 sSer = "Data Source=.\WinCC"

 sCon = sPro + sDsn + sSer

 'sSql = "TAG:R,'ProcessvalueArchive\NewTag','0000-00-00 00:00:00.000','0000-00-01 00:00:00.000'"

 sSql = "SELECT * FROM UA#JobData"

 MsgBox "Open with:" & vbCr & sCon & vbCr & sSql & vbCr

 Set conn = CreateObject("ADODB.Connection")

 conn.ConnectionString = sCon

 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
 这段代码中,sqL查询有问题,请问怎么修改

问题补充:
在问一下在C脚本里面可以实现打印的函数PDRPrintJob()在VBS脚本里面那怎么实现

最佳答案

想必这不是你自己写的吧?

  这段代码要想执行成功,有几个条件:
  1、画面有ListView控件,名字叫Para_Listview
  2、项目当前运行数据库名称为CC_extrudin_07_09_12_14_02_42R。其实可以通过HMIRuntime.Tags("@DataSourceNameRT").Read动态获得
  3、项目创建有用户归档,名称为JobData

  既然不是连接变量归档,就不要使用WinCCOLEDBProvider.1驱动,改为如下:
  Dim DSN
  DSN = HMIRuntime.Tags("@DatasourceNameRT").Read
  strConn="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security
  Info=False;Data Source=.\WINCC;Initial Catalog='" & DSN & "';"
  

 补充问题:VBS没有办法调用C的打印函数,但是可以采用异步的方法,也就是VBS置位一个内部变量,C全局脚本判断该内部变量是否为1,如为1则调用PDRPrintJob(),同时将内部变量复位。

提问者对于答案的评价:
呵呵,今天下午我自己已经解决了,和你说的方法一样

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

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

相关推荐

  • 总控监控

    整个车间有很多独立的控制系统,PLC分别有S7-200, S7-300等,各设备间没有通信要求,我在总控室想对各设备进行监控,硬件配置方面我在每套PLC上加装以太网模块,…

    SIMATIC WinCC 2019年6月11日
  • pcs7 V8.0 安装完后。WINCC tools 里面是空的!

    pcs7 V8.0 安装完后。WINCC tools 里面是空的!桌面上也没有图标,系统是 win7 64位 …

    2021年7月5日
  • wincc显示控制问题

    各位大哥,我想在WINCC画面中,通过一个标准对象如“矩形或圆的颜色的变化显示’多个‘报警信息”,比如风机1、风机2、风机3等等的故障、也就是任何一个风机故障,这个标准对象都能反映…

    SIMATIC WinCC 2019年6月11日
  • 变量触发全局脚本的问题

    有量个EXE个程序,需要通过变量的变化来调用,现在要用全局脚本来做。 情况是这样的,当变量1=1  变量2=0时调用EXE1。当变量1=1 …

    SIMATIC WinCC 2019年6月11日
  • vb通过oledb访问归档数据库的问题

    sPro = "Provider=WinCCOLEDBProvider.1;" ‘//定义服务提供者 sDsn&nbsp…

    SIMATIC WinCC 2019年6月11日
  • WICC 出现 serious error 报错

    serious errora serious error occurred(0x0813141a) 最佳答案 建议检查兼容性。有可能是软件和…

    SIMATIC WinCC 2021年7月5日
  • wincc flexible弹出小窗口怎么做?

    比如我在画面有2个按钮,按后分别会弹出各自的小窗口,按1按钮弹出小窗口,里面有几个选择按钮,如果此时再按2按钮,1按钮的小窗口会自动关闭弹出2按钮对应的小窗口。  最佳答…

    SIMATIC WinCC 2019年6月11日
  • 如何利用一个变量把另一个变量写值(0、1)

    如何利用一个变量把另一个变量写值(0、1) 问题补充:利用内部变量tag值给内部变量tag1写值,都是二进制,为什么不行?tag1的值不会变。程序如下:大家帮忙分析一下 …

    SIMATIC WinCC 2019年6月11日
  • 线段绕一点旋转问题

    我用wincc画了一条直线,想让它绕着其中一个断点顺时针旋转,怎么做?帮帮忙,谢谢 最佳答案 供参考   (用的内部变量)线属性-旋转参考坐标设45(…

    SIMATIC WinCC 2019年6月11日
  • wincc 关闭变量丢失提示对话框

    使用变量前缀写变量总提示丢失变量 好烦人有时候改变量,一个问题提示好几编,点的都烦死了。这块程序写的,点来点去真啰嗦啊 最佳答案 1、使用变量前缀方法一定要使用WinCC…

    SIMATIC WinCC 2021年7月5日