关于报表脚本,大神给讲讲这段脚本

已锁定

20161014Z404V2

  • 帖子

    52
  • 精华

    0
  • 被关注

    6

论坛等级:游侠

注册时间:2016-10-14

普通 普通 如何晋级?

关于报表脚本,大神给讲讲这段脚本

445

3

2016-12-23 20:03:07

Sub OnClick(ByVal Item)                                                                                                                                                                                          

On Error Resume Next

Dim SQL_NAME

SQL_NAME="ZYFJ_DAY"

ScreenItems("DateFrom1").value=DateAdd("d", +1, ScreenItems("DateFrom").value)

Dim By, Bm, Bd

Dim Ny, Nm, Nd

Dim BeginDate,BeginDate1 

Dim EndDate,EndDate1  

Dim DateFrom,DateFrom1


Set DateFrom = ScreenItems("DateFrom")

Set DateFrom1 = ScreenItems("DateFrom1")

 By = Year(DateFrom.Value)

 Bm = Month(DateFrom.Value)

 Bd = Day(DateFrom.Value)

 Ny = Year(DateFrom1.Value)

 Nm = Month(DateFrom1.Value)

 Nd = Day(DateFrom1.Value)

BeginDate = By & "-" & Bm & "-" & Bd & " " &"00:00:00" 

EndDate  = By & "-" & Bm & "-" & Bd & " " &"23:00:59" 

BeginDate1 = Ny & "-" & Nm & "-" & Nd & " " & "00:00:00" 

EndDate1 = Ny & "-" & Nm & "-" & Nd & " " & "00:59:00" 

Dim SQL

SQL = "Select ThisTime,E1,E2,E3,E4,E5,E6,E7,E8,E9,E10,E11,E12,E13 FROM UA#TL_Daily WHERE  ThisDay BETWEEN '" & BeginDate & "' and '" & EndDate & "'  or ThisDay BETWEEN '" & BeginDate1 & "' and '" & EndDate1 & "' "


HMIRuntime.Trace  vbCrLf & BeginDate

HMIRuntime.Trace  vbCrLf & EndDate 

HMIRuntime.Trace  vbCrLf & SQL



Dim SQL_Path  

SQL_Path=HMIRuntime.ActiveProject.Path & "\SQL\" 

HMIRuntime.Trace  vbCrLf & "SQL_Path: " & SQL_Path      


HMIRuntime.Trace  vbCrLf & SQL


Dim Adodc1

Set Adodc1 = ScreenItems("Adodc1")

Adodc1.ConnectionString="DSN=" & HMIRuntime.Tags("@DatasourceNameRT").Read

Adodc1.RecordSource=SQL

Adodc1.Refresh


Dim Spreadsheet1

Set Spreadsheet1=ScreenItems("Spreadsheet1")


    Dim ssConstants

   

    Set ssConstants = Spreadsheet1.Constants


Spreadsheet1.ActiveSheet.Protection.Enabled = False


Spreadsheet1.XMLURL=SQL_Path & SQL_Name & ".xml"



Dim i, Temp1

Dim intIRow 


Spreadsheet1.ActiveSheet.Cells(2, 12).Value=By & "-" & Bm & "-" & Bd


intIRow=5

If Adodc1.Recordset.recordcount<>0 Then


Do While Not Adodc1.Recordset.eof

intIRow=intIRow+1


 For i=0 To Adodc1.Recordset.Fields.Count-1

 Spreadsheet1.ActiveSheet.Cells(intIRow, i+1).Value = Adodc1.Recordset.Fields(i)


If i=0 Then

Spreadsheet1.ActiveSheet.Cells(intIRow, i+1).NumberFormat ="HH:MM:SS"


 End If 

  Next 

  

Adodc1.Recordset.MoveNext

Loop


Else

 HMIRuntime.Trace  vbCrLf &  "no data found!!!!"

End If 

Spreadsheet1.ActiveSheet.Cells(35, 12).Value=Now

MsgBox("查询完成,记录数:" & Adodc1.Recordset.recordcount )


Set Adodc1=Nothing


End Sub

这是一段报表的脚本,我就是想问问如果我换个项目还用这段脚本需要改什么地方?有知道的请加QQ165676754

关于报表脚本,大神给讲讲这段脚本 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC WinCC / Panel

共有33026条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。