sqwd 发表于 2024-11-12 11:22:31

C1FlexViewer 批量打印多个报表

C1FlexViewer 控件加载C1FlexReport ,InspectionFormPrint.flxr内容,怎么做到一次打印多个表格
C1FlexViewer控件预览单个表格,能自动触发打印操作并关闭窗口吗?怎么实现

Richard.Ma 发表于 2024-11-12 16:54:40

我没明白你说的“一次打印多个表格”是什么意思。多个表格是指什么?

如果你指的是这个flxr中的多个report的话,本身加载方法每次也只能加载一个,那么你应该是在一个打印完以后,在去加载另一个report,循环加载打印

sqwd 发表于 2024-11-12 17:04:22

本帖最后由 sqwd 于 2024-11-12 17:10 编辑

Richard.Ma 发表于 2024-11-12 16:54
我没明白你说的“一次打印多个表格”是什么意思。多个表格是指什么?

如果你指的是这个flxr中的多个repo ...

C:\Users\Lisd\AppData\Local\Temp\企业微信截图_1731402166648.png

那正常使用C1FlexViewer一次加载一个报表,怎么自动触发打印呢。我现在需求是希望一键触发多张报表进行打印,报表格式相同,内容不同

Richard.Ma 发表于 2024-11-14 12:29:37

你只要初始化一个flexreport对象,然后用下面的代码来让在加载完成后打印就行
                flxRpt = new C1FlexReport();
                flxRpt.BusyStateChanged += (s, ee) => {
                  if (flxRpt != null && !flxViewer.DocumentSource.IsBusy)
                  {
                        flxRpt.Print();
                  }
                };
                flxRpt.Load(file, reportName);

sqwd 发表于 2024-11-15 16:38:33

本帖最后由 sqwd 于 2024-11-15 17:49 编辑

Richard.Ma 发表于 2024-11-12 16:54
我没明白你说的“一次打印多个表格”是什么意思。多个表格是指什么?

如果你指的是这个flxr中的多个repo ...
你好,C1FlexViewer 搭配C1FlexReport加载定义好的.flxr文件使用,想批量打印数据不同的表格。 使用您推荐的办法调用flxRpt.Print();会报以下错误“System.InvalidOperationExceptionHResult=0x80131509Message=对象的当前状态使该操作无效。”
您那边有C# wpf可以运行的批量导出的示例项目吗,或者我按装软件后,会自带的有那些示例可以参考呢

Richard.Ma 发表于 2024-11-15 22:54:29

你是要批量打印,那么和flexviewer就没有什么关系,也就和WPF没关系了,不管是wpf还是winforms,C1FlexReport类对象是相同的。打印只是需要循环的去把文件中的每个report加载到C1FlexReport对象中,在加载完成(IsBusy为false)时,来打印就行
页: [1]
查看完整版本: C1FlexViewer 批量打印多个报表