在"打印"对话框中打印时,WPF查看器崩溃

2020-09-24 01:05发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好,

在通过单击工具栏上的"打印"按钮(请参见下图1)后WPF查看器显示的打印对话框来打印报告时,在单击"打印"对话框中的"打印"按钮(请参见下图2)后,查看器将崩溃。

下面的第三张图描述了Visual Studio 2013中的错误消息。

我有用于Visual Studio的SAP Crystal Reports版本13.0.20.2399。

这是代码关联:

 private ReportViewer()//将其构造函数设为私有
 {
      InitializeComponent();
     //将水晶报表查看器所有者属性设置为此包含窗口
    //(防止引用报表中的公式字段时出错)
       crystalReportsViewer1.Owner = Window.GetWindow(this);
     //最初隐藏工具面板视图
      this.crystalReportsViewer1.ToggleSidePanel = Constants.Sid​​ePanelKind.None;


  私有void DeptBatchIdCards_Report()
    {
            //存储报告路径的变量
             字符串exeFolder = System.Windows.Forms.Application.StartupPath;
             字符串reportPath = System.IO.Path.Combine(exeFolder,@" ReportViews \ DeptBatch_IdCards.rpt");


            //创建报告文档对象并设置报告的数据源
             ReportDocument deptBatchIdCardsReport = new ReportDocument();
             deptBatchIdCardsReport.Load(reportPath);




             deptBatchIdCardsReport.SetDataSource(_employeeBO.GetEmployeeIdCard_List(Client.gblClientID,_deptList));
        
            //设置水晶报表查看器的报表源
             deptBatchIdCardsReport.Refresh();
             this.crystalReportsViewer1.ViewerCore.ReportSource = deptBatchIdCardsReport;
            
 }
 

图片1。

图片2。

图片3。

非常感谢!

R

(9.8 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好,

在通过单击工具栏上的"打印"按钮(请参见下图1)后WPF查看器显示的打印对话框来打印报告时,在单击"打印"对话框中的"打印"按钮(请参见下图2)后,查看器将崩溃。

下面的第三张图描述了Visual Studio 2013中的错误消息。

我有用于Visual Studio的SAP Crystal Reports版本13.0.20.2399。

这是代码关联:

 private ReportViewer()//将其构造函数设为私有
 {
      InitializeComponent();
     //将水晶报表查看器所有者属性设置为此包含窗口
    //(防止引用报表中的公式字段时出错)
       crystalReportsViewer1.Owner = Window.GetWindow(this);
     //最初隐藏工具面板视图
      this.crystalReportsViewer1.ToggleSidePanel = Constants.Sid​​ePanelKind.None;


  私有void DeptBatchIdCards_Report()
    {
            //存储报告路径的变量
             字符串exeFolder = System.Windows.Forms.Application.StartupPath;
             字符串reportPath = System.IO.Path.Combine(exeFolder,@" ReportViews \ DeptBatch_IdCards.rpt");


            //创建报告文档对象并设置报告的数据源
             ReportDocument deptBatchIdCardsReport = new ReportDocument();
             deptBatchIdCardsReport.Load(reportPath);




             deptBatchIdCardsReport.SetDataSource(_employeeBO.GetEmployeeIdCard_List(Client.gblClientID,_deptList));
        
            //设置水晶报表查看器的报表源
             deptBatchIdCardsReport.Refresh();
             this.crystalReportsViewer1.ViewerCore.ReportSource = deptBatchIdCardsReport;
            
 }
 

图片1。

图片2。

图片3。

非常感谢!

R

(9.8 kB)
付费偷看设置
发送
8条回答
我是小鹏鹏啊
1楼 · 2020-09-24 01:30.采纳回答

SP 22中的WPF查看器已有更新。一个已知的问题是在Windows 10 1709版和Windows 7 SP1上打印风景。

它已经升级,应该在SP 23中进行修复。

你们可以在这里使用SP 22进行测试吗?

https: //wiki.scn.sap.com/wiki/display/BOBJ/Crystal+Reports%2C+Developer+for+Visual+Studio+Downloads

请阅读SP 21的信息,必须对SP 22做同样的事情。

如果可以的话,我将确认并在SP 23中得到修复。

Don

昵称总是被占用
2楼-- · 2020-09-24 01:45

在打印对话框中,使用"打印到PDF"选项也会产生相同的错误结果。

谢谢。

R。

哎,真难
3楼-- · 2020-09-24 01:46

您的项目是32位还是64位?

该驱动程序是否支持任何一个平台?

如果打印,它可以工作吗? 来自CR Designer?

愤怒的猪头君
4楼-- · 2020-09-24 01:49

嗨,Rudy,

您要打印到传真还是纸?

我安装了驱动程序,但没有收到 错误或崩溃,但由于权限或使用Office 2016而不起作用,因为通讯簿中没有人。 在64位模式下,您需要安装64位版本的Office才能打印到通讯簿。

如果从查看器的"打印"按钮打印,会发生什么情况?

放入 在Try/Catch块中查看打印例程,看看异常是什么。或者使用DebugDiag查看崩溃的dll。

Don

d56caomao
5楼-- · 2020-09-24 01:48

-鲁迪- 2天前

嗨,唐,

谢谢您的输入。

但是,当我同时尝试了x86或x64并更新了打印机驱动程序时,我仍然会得到相同的错误结果。

在打印对话框中,使用"打印到PDF"选项也会产生相同的错误结果。

我甚至还卸载了Visual Studio的SAP Crystal Reports,然后为该项目安装了x86的32位运行时,仍然得到相同的错误结果。

还有其他可能性吗?

再次感谢。

R。

吹牛啤
6楼-- · 2020-09-24 01:31

嗨,唐,

我正在打印到纸上。

我还尝试了"打印到PDF"(而不是到通讯录),它还会产生与先前指定的相同的错误。

从WPF查看器打印时,请查看准确结果的原始帖子图像。

我没有打印例程(因此无法放置try/catch块),因为打印功能是通过WPF查看器工具栏的"打印"按钮执行的。

无论如何,选择打印机然后单击打印后,崩溃会在打印对话框本身上发生。

非常感谢。

R。

路亽曱_Ryan
7楼-- · 2020-09-24 01:51

我从波哥大-哥伦比亚写信,但我遇到了同样的问题,请按"打印"按钮,然后Crystal报告会生成错误,必须重新启动该应用程序。 为什么会发生这种情况?

一周热门 更多>