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