Foxtable(狐表)用户栏目专家坐堂 → 输出报表


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

主题:输出报表

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


加好友 发短信
等级:幼狐 帖子:50 积分:686 威望:0 精华:0 注册:2012/7/26 12:56:00
输出报表  发帖心情 Post By:2012/9/23 16:16:00 [只看该作者]

请问老师,我在输出报表,特别是多张报表时,比如出库单,每张都要重命名,能否直接根据出库单号直接命名,并存储在指定文件夹中,比如我有客户名叫“AA”,生成出库单为“AA-CK-2012-09-23-1”,在生成报表时直接命名为“AA-CK-2012-09-23-1”,并存储在AA文件夹的2012中,谢谢

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/9/24 10:59:00 [只看该作者]

可以的:
 
http://www.foxtable.com/help/topics/1145.htm


 
例如:
 
Dim Book As New XLS.Book(ProjectPath & "Attachments\出库单.xls") '打开模板
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Sheet(6,6).Value = "制单人:" & User.Name '修改模板,加入制单人信息
Book.Build() '生成细节区
Book.Save("c:\reports\test.xls") '保存工作簿
Dim Proc As New Process '打开工作簿
Proc.File = Tables("客户").Current("客户名称") & "-CK-" & Foramt(Date.Today,"yyyy-MM-dd") & ".xls"
Proc.Start()


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


加好友 发短信
等级:幼狐 帖子:50 积分:686 威望:0 精华:0 注册:2012/7/26 12:56:00
  发帖心情 Post By:2012/9/24 14:07:00 [只看该作者]

弱弱的问一下,这串代码加在哪里?我加在报表事件的BeforeBuild,总是不对

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


加好友 发短信
等级:等待验证 帖子:3855 积分:20692 威望:0 精华:5 注册:2012/6/21 14:03:00
  发帖心情 Post By:2012/9/24 14:42:00 [只看该作者]

用户已被锁定

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/9/24 15:39:00 [只看该作者]

以下是引用gzyt在2012-9-23 16:16:00的发言:
请问老师,我在输出报表,特别是多张报表时,比如出库单,每张都要重命名,能否直接根据出库单号直接命名,并存储在指定文件夹中,比如我有客户名叫“AA”,生成出库单为“AA-CK-2012-09-23-1”,在生成报表时直接命名为“AA-CK-2012-09-23-1”,并存储在AA文件夹的2012中,谢谢

在AfterBuild事件里写这句代码

e.Book.Save(保存的文件路径.xls)

路径自己根据自己的实际需要而定。

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


加好友 发短信
等级:幼狐 帖子:50 积分:686 威望:0 精华:0 注册:2012/7/26 12:56:00
  发帖心情 Post By:2012/9/25 8:18:00 [只看该作者]

狐爸,这串代码总是报错,

Dim Book As New XLS.Book(ProjectPath & "Attachments\出库单.xls") '打开模板
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Sheet(6,6).Value = "制单人:" & User.Name '修改模板,加入制单人信息
Book.Build() '生成细节区
Book.Save("c:\reports\test.xls") '保存工作簿
Dim Proc As New Process '打开工作簿
Proc.File = Tables("客户").Current("客户名称") & "-CK-" & Foramt(Date.Today,"yyyy-MM-dd") & ".xls"
Proc.Start()
只要是红色的部分,不一致,就会报错。


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/9/25 11:08:00 [只看该作者]

Dim fl As String = Tables("客户").Current("客户名称") & "-CK-" & Foramt(Date.Today,"yyyy-MM-dd") & ".xls"
Dim Book As New XLS.Book(ProjectPath & "Attachments\出库单.xls") '打开模板
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Sheet(6,6).Value = "制单人:" & User.Name '修改模板,加入制单人信息
Book.Build() '生成细节区
Book.Save(fl) '保存工作簿
Dim Proc As New Process '打开工作簿
Proc.File = fl
Proc.Start()

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


加好友 发短信
等级:幼狐 帖子:50 积分:686 威望:0 精华:0 注册:2012/7/26 12:56:00
  发帖心情 Post By:2012/9/26 12:57:00 [只看该作者]

Dim fl As String =  ProjectPath & "Reports" & "\" &  Tables("出库单").Current("出库编号")  & ".xls"
Dim Book As New XLS.Book(ProjectPath & "Attachments\出库单模板.xls") '打开模板
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Sheet(6,6).Value = "制单人:" & User.Name '修改模板,加入制单人信息
Book.Build() '生成细节区
Book.Save(fl) '保存工作簿
Dim Proc As New Process '打开工作簿
Proc.File = fl
Proc.Start()

还是应该要有保存地址才行,谢谢老师,不过只能加在按钮里吗,我没有窗口,不是很方便


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/9/26 14:13:00 [只看该作者]

不用窗口,也可以用菜单按钮

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/9/26 14:23:00 [只看该作者]

 楼主,其实你这个问题,是可以通过 报表事件 解决的。

 认真看看这一章 http://www.foxtable.com/help/topics/1960.htm

 还有就是,看看 5楼。

 回到顶部
总数 11 1 2 下一页