Foxtable(狐表)用户栏目专家坐堂 → 批量导出excel报表


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

主题:批量导出excel报表

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


加好友 发短信
等级:狐神 帖子:6887 积分:43621 威望:0 精华:0 注册:2009/3/2 14:07:00
批量导出excel报表  发帖心情 Post By:2024/7/22 16:35:00 [只看该作者]

帮助中介绍的是一次生成一张出库单,现需要批量导出出库单,代码怎么写?

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


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

哪个帮助?

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


加好友 发短信
等级:狐神 帖子:6887 积分:43621 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2024/7/22 16:51:00 [只看该作者]

官方的帮助文档,如
Dim Book As New XLS.Book(ProjectPath & "Attachments\出库单.xls")
Dim
fl As String = ProjectPath & "Reports\出库单.xls"
book
.AddDataTable("出库","数据源名称","Sel\ect * from {出库} where 出库单编号= 'CK-20030726001'") '添加父表
book
.AddDataTable("出库明细","数据源名称","Sel\ect * from {出库明细} where 出库单编号= 'CK-20030726001'") '添加子表
book
.AddRelation("出库","出库单编号","出库明细","出库单编号") '建立关联
Book
.Build() '生成细节区
Book
.Save(fl) '保存工作簿
Dim
Proc As New Process '打开工作簿
Proc
.File = fl
Proc
.Start()
[此贴子已经被作者于2024/7/22 16:54:09编辑过]

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


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

比如 

dim ss() as string = {"CK-20030726001","CK-20030726002")
for each s as string in ss
Dim Book As New XLS.Book(ProjectPath & "Attachments\出库单.xls")
Dim
 fl As String = ProjectPath & "Reports\出库单" & s & ".xls"
book
.AddDataTable("出库","数据源名称","Sel\ect * from {出库} where 出库单编号= '" & s & "'"'添加父表
book
.AddDataTable("出库明细","数据源名称","Sel\ect * from {出库明细} where 出库单编号= '" & s & "'"'添加子表
book
.AddRelation("出库","出库单编号","出库明细","出库单编号"'建立关联
Book
.Build() '生成细节区
Book
.Save(fl) '保存工作簿
next

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


加好友 发短信
等级:狐神 帖子:6887 积分:43621 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2024/7/22 20:04:00 [只看该作者]

Dim ss() As String = {"16", "17"}
Dim Book As New XLS.Book(ProjectPath & "Attachments\出库单.xlsx")
Dim fl As String
fl = ProjectPath & "Reports\出库单.xls"
For Each s As String In ss
    Dim t As Integer = s 
    book.AddDataTable("出库", "用友", "Sel\ect * from {g_业务} where xh= " & t) '添加父表
    book.AddDataTable("出库明细", "用友", "Sele\ct * From {jz_业务库} where g_业务id = " & t) '添加子表
    book.AddRelation("出库", "xh", "出库明细", "g_业务id") '建立关联
Next
Book.Build() '生成细节区
Book.Save(fl) '保存工作簿
Dim Proc As New Process '打开工作簿
Proc.File = fl
Proc.Start()

这段代码不运行


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


加好友 发短信
等级:狐神 帖子:6887 积分:43621 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2024/7/22 20:04:00 [只看该作者]

---------------------------
版本:2022.8.18.1
---------------------------
代码执行出错,错误信息:



System.Data.DuplicateNameException: 名为“出库”的 DataTable 已属于此 DataSet。

   在 System.Data.DataTableCollection.RegisterName(String name, String tbNamespace)

   在 System.Data.DataTableCollection.BaseAdd(DataTable table)

   在 System.Data.DataTableCollection.Add(DataTable table)

   在 Foxtable.XLS.Book.O_0__0_._.()

   在 Foxtable.XLS.Book.O_0__0_._.(Int32[] A_0)

   在 UserCode.Test()



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


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

把基础学好一点吧。只能按4楼的用法,都在循环里处理

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


加好友 发短信
等级:狐神 帖子:6887 积分:43621 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2024/7/22 21:03:00 [只看该作者]

Dim ss() As String = {"17", "16", "19"}
Dim fl As String
For Each s As String In ss
    Dim Book As New XLS.Book(ProjectPath & "Attachments\出库单.xlsx")
    fl = ProjectPath & "Reports\出库单.xls"
    Dim t As Integer = s 
    book.AddDataTable("出库", "用友", "Sel\ect * from {g_业务} where xh= " & t) '添加父表
    book.AddDataTable("出库明细", "用友", "Se\lect * From {jz_业务库} where g_业务id = " & t) '添加子表
    book.AddRelation("出库", "xh", "出库明细", "g_业务id") '建立关联
    Book.Build() '生成细节区
    Book.Save(fl) '保存工作簿
Next
    Dim Proc As New Process '打开工作簿
    Proc.File = fl
    Proc.Start()

能运行,但没有实现连续批量生成报表的目的。

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


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

fl = ProjectPath & "Reports\出库单" & s & ".xls"

最后3行没有什么用,去掉

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


加好友 发短信
等级:狐神 帖子:6887 积分:43621 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2024/7/23 9:06:00 [只看该作者]

批量单据要在同一个工作表的。

 回到顶部
总数 22 1 2 3 下一页