Foxtable(狐表)用户栏目专家坐堂 → 请问这个是.NET的版本问题吗?


  共有2566人关注过本帖树形打印复制链接

主题:请问这个是.NET的版本问题吗?

帅哥哟,离线,有人找我吗?
9EQ98
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:486 积分:4427 威望:0 精华:0 注册:2014/1/16 16:55:00
请问这个是.NET的版本问题吗?  发帖心情 Post By:2021/11/7 21:48:00 [只看该作者]

图片点击可在新窗口打开查看

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106853 积分:543472 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/11/7 21:54:00 [只看该作者]

应该和版本无关。打印的数据太多,或者打印了大量图片,显示内存溢出

 回到顶部
帅哥哟,离线,有人找我吗?
9EQ98
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:486 积分:4427 威望:0 精华:0 注册:2014/1/16 16:55:00
  发帖心情 Post By:2021/11/7 22:44:00 [只看该作者]

BOOK.SAVE
有不有关闭语句,我可能是因为批量导出了文件

 回到顶部
帅哥哟,离线,有人找我吗?
9EQ98
  4楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:486 积分:4427 威望:0 精华:0 注册:2014/1/16 16:55:00
  发帖心情 Post By:2021/11/7 22:46:00 [只看该作者]

For Each dr As DataRow In drs
    Y1 =Y1 + 1
    生产合同编号 = dr("生产合同编号")
    姓名 = dr("新建人")
    状态 = dr("状态")
    Path = ProjectPath & "\报表\" & "生产合同\" & 状态 & "\"
    fl = Path & 生产合同编号 & "-" & 姓名 & ".xls"
    
    Book.Build() '生成细节区
    Book.Save(fl) '保存工作簿
    StatusBar.Message3 = Y1 & "/" & 合同数量 & " / " & 生产合同编号
    
Next


 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106853 积分:543472 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/11/7 22:48:00 [只看该作者]

贴出完整代码

 回到顶部
帅哥哟,离线,有人找我吗?
9EQ98
  6楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:486 积分:4427 威望:0 精华:0 注册:2014/1/16 16:55:00
  发帖心情 Post By:2021/11/7 22:55:00 [只看该作者]

Dim 批量循环条件 As String
批量循环条件 = "状态 = '" & "审批通过" & "' "
批量循环条件 = 批量循环条件 & " And Year(生产合同日期) = " & Date.Now.Year

If _登录人工作组.Contains("业务审批组") = False Then
    批量循环条件 = 批量循环条件 & " And 新建人 = '" & _登录人 & "'"
End If

Dim 生产合同编号 As String
Dim 姓名 As String
Dim 状态 As String
Dim Path As String = ""
Dim fl As String = ""

Dim Book As New XLS.Book(ProjectPath & "Attachments\生产合同-报表.xls")

Dim drs As List(of DataRow)  = DataTables("生产合同").SQLSelect(批量循环条件)

Dim 合同数量 As Integer = DRS.Count
Dim Y1 As Integer = 0
StatusBar.Message2 = 批量循环条件
StatusBar.Message3 = 合同数量

If 合同数量 = 0 Then
    MESSAGEBOX.SHOW("没有打印导出的生产合同")
    Return
End If

For Each dr As DataRow In drs
    Y1 =Y1 + 1
    生产合同编号 = dr("生产合同编号")
    姓名 = dr("新建人")
    状态 = dr("状态")
    Path = ProjectPath & "\报表\" & "生产合同\" & 状态 & "\"
    fl = Path & 生产合同编号 & "-" & 姓名 & ".xls"
    
    Book.Build() '生成细节区
    Book.Save(fl) '保存工作簿
    StatusBar.Message3 = Y1 & "/" & 合同数量 & " / " & 生产合同编号
    
Next


 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106853 积分:543472 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/11/7 23:05:00 [只看该作者]

……
Dim 生产合同编号 As String
Dim 姓名 As String
Dim 状态 As String
Dim Path As String = ""
Dim fl As String = ""

Dim drs As List(of DataRow)  = DataTables("生产合同").SQLSelect(批量循环条件)

Dim 合同数量 As Integer = DRS.Count
Dim Y1 As Integer = 0
StatusBar.Message2 = 批量循环条件
StatusBar.Message3 = 合同数量

If 合同数量 = 0 Then
    MESSAGEBOX.SHOW("没有打印导出的生产合同")
    Return
End If

For Each dr As DataRow In drs
    Y1 =Y1 + 1
    生产合同编号 = dr("生产合同编号")
    姓名 = dr("新建人")
    状态 = dr("状态")
    Path = ProjectPath & "\报表\" & "生产合同\" & 状态 & "\"
    fl = Path & 生产合同编号 & "-" & 姓名 & ".xls"
    Dim Book As New XLS.Book(ProjectPath & "Attachments\生产合同-报表.xls")
    Book.Build() '生成细节区
    Book.Save(fl) '保存工作簿
    StatusBar.Message3 = Y1 & "/" & 合同数量 & " / " & 生产合同编号
    Application.DoEvents
Next

 回到顶部