以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  【excel报表】非关联表用代码怎么实现关联表数据打印?附上代码麻烦老师指导修正,谢谢!  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=109057)

--  作者:李孝春
--  发布时间:2017/11/3 13:31:00
--  【excel报表】非关联表用代码怎么实现关联表数据打印?附上代码麻烦老师指导修正,谢谢!
【excel报表】非关联表用代码怎么实现关联表数据打印?附上代码麻烦老师指导修正,谢谢!

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:卷宗管理台帐.xls


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看

如果更改模版如下后就提示报错非关联表怎么创建细节区呢?

图片点击可在新窗口打开查看此主题相关图片如下:3.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:4.png
图片点击可在新窗口打开查看

 目前创建了三个关联
卷宗入库与(入库明细  涉案款物   款物明细)
因扫码录入  款物录入 系使用清单 随机录入 所以没有创建关联
现在想实现扫码录入  款物录入 的数据也随表打印  怎么实现呢

借用下面的代码使用实现报错:
.NET Framework 版本:2.0.50727.8669
Foxtable 版本:2017.10.26.1
错误所在事件:窗口,卷宗入库,Button8,Click
详细错误信息:
未将对象引用设置到对象的实例。


Dim Book As New XLS.Book(ProjectPath & "Attachments\\卷宗管理台帐.xls") \'打开模板
Dim fl As String = ProjectPath & "Reports\\" & e.form.controls("TextBox1").text  & "卷宗管理台帐.xls"
MessageBox.Show(e.form.controls("TextBox1").text)
Dim Sheet As XLS.Sheet = Book.Sheets(0)
With Sheet.PrintSetting
    .PaperKind = 11 \'设为A4纸
    .LandScape = True \'横向打印
    .MarginLeft = 20 \'左右边距设为20毫米
    .MarginRight = 20
    .MarginTop = 15 \'上下边距设为15毫米
    .MarginBottom = 15
End With
book.AddDataTable("卷宗入库","db","Select * f rom {卷宗入库} where 卷宗编号= \'" & e.form.controls("TextBox1").text & "\'")
book.AddDataTable("扫码录入","db","Select * f rom {扫码录入} where 卷宗编号= \'" & e.form.controls("TextBox1").text & "\'") \'添加子表
book.AddDataTable("款物录入","db","Select * f rom {款物录入} where 案件编号= \'" & e.form.controls("TextBox1").text & "\'") \'添加子表
book.AddRelation("卷宗入库","卷宗编号","扫码录入","卷宗编号") \'建立关联
Book.Build() \'生成细节区
Book.Save(fl) \'保存工作簿
Dim Proc As New Process
Proc.File = fl
Proc.Verb = "Print" \'指定动作
Proc.Start()
[此贴子已经被作者于2017/11/3 13:34:55编辑过]

--  作者:有点甜
--  发布时间:2017/11/3 14:45:00
--  

关联表打印,只能打印:父、子、孙...这样的表;不能打印:父、子、子、子、子...这样的表

 

如果存在关联,那就用代码设置关联 http://www.foxtable.com/webhelp/scr/1942.htm

 

如果不存在关联,那就无法直接打印。