现在想了一个曲线的方法 按钮的代码改成
Dim s As String
Dim l As WinForm.CheckedListBox = e.Form.Controls("CheckedListBox1")
If l.items.Count>0 Then
For Each Index As Integer In l.CheckedIndices
If s > "" Then
s = s & ","
End If
s = s & "'" & l.Items(Index) & "'"
Next
If s > "" Then
DataTables("工单").loadFilter = "工单号 In (" & s & ")"
DataTables("工单").load
vars("生成计划")=true
End If
Else
MessageBox.show("请选择导出工单!","提示")
End If
beforeload:vars("生成计划")=false
afterload:
e.DataTable.LoadChildren("acp")
e.DataTable.LoadChildren("apo")
e.DataTable.LoadChildren("ace")
e.DataTable.LoadChildren("acd")
if vars("生成计划")=true then
Dim Book As New XLS.Book(ProjectPath & "Attachments\生产计划单.xls") '打开模板
Dim fl As String = ProjectPath & "Reports\生产计划单.xls"
Book.Build() '生成报表
Book.Save(fl)
Dim Proc As New Process
Proc.File = fl
Proc.Start()
endif
现在能正常工作了 但是我觉得肯定哪里BUG