我用用户归档做了个报表,但另存一直解决不了,以下是我的脚本,希望有高手可以指正我的错误;
CZQ:用户归档的名
riqiua:归档数据的域名
yaxia1:归档数据的域名
riqishuru:输入/输出域的变量
gb-lmj:计算机名
Sub OnbuttonDown(ByVal Item,Byval Flags,ByVal x,ByVal y)
Dim riqishuru
set riqishuru=HMIRuntime.Tags("riqishuru")
Dim riqi
Dim strcn,cn
Dim rs
Dim strSQL
Dim comm
strcn="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DBNAME;Data Source=gh-lmj\wincc"
set cn=CreateObject("ADODB.Connection")
set rs=CreateObject("ADODB.Recordset")
set comm=CreateObject("ADODB.command")
cn.ConnectionString=strcn
cn.cursorlocation=3
cn.open
comm.commandtype=1
comm.activeconnection=cn
riqi=CStr(year(now))&"-"&CStr(month(now))&"-"&CStr(day(now))
Dim objexcelapp
set objexcelapp=createobject("excel.application")
With objexcelapp
.visible=True
.wordbooks.open("F:\source.xls")
.activewordbook.activesheet.select
.displayalerts=false
end with
riqishuru.read
strSQL="select * from UA#czq where riqiua like '"&riqishuru&"'"
comm.commandtext=strSQL
set rs=comm.execute
if Not rs.eof then
rs.movefirst
objexcelapp.wordsheets(1).cell(5,3).value=rs("yaxia1")
end if
objexcelapp.activewordbook.save
objexcelapp.activewordbook.close
objexcelapp.quit
set objexcelapp=Nothing
rs.close
cn.close
set rs=Nothing
set cmm=Nothing
set cn=Nothing
end sub
以上是我在WINCC的脚本,我觉得好像SQL连接那里出了问题,真正的原因还不知道,strcn="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DBNAME;Data Source=gh-lmj\wincc"
在这一段不知道有没有问题,我是照抄别人的脚本的,那个catalog这里是不是应该用SQL里面那个长长后面的名字???我试过也还不行。
希望各位高手可以看看指出错误,最好把错误的改正的贴一贴出来
如果有现成的例子可否发我一份?我不想用什么DDE,DAT@MONITOR什么的。
不胜感激!!!!
最佳答案
Initial Catalog就是你要访问的那个数据库的名字。
人家原本写的DBNAME的英文就是“数据库名字”的意思
每个项目都不一样。
建议调用系统变量dsnnamert来做
提问者对于答案的评价:
这个我知道,不过还是谢谢大家,错在SQL的查询语句和RS的取数据的方式那里,我今天已经搞定了。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc273414.html