Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Crystal report在打印时未显示数据,而它';s在报表查看器上正确显示数据_C#_.net_Crystal Reports - Fatal编程技术网

C# Crystal report在打印时未显示数据,而它';s在报表查看器上正确显示数据

C# Crystal report在打印时未显示数据,而它';s在报表查看器上正确显示数据,c#,.net,crystal-reports,C#,.net,Crystal Reports,我在crystal report上有一些奇怪的行为。它在报表查看器上正确显示数据。但是,当我尝试打印或导出同一报告时,它会打印空白报告(仅显示参数值)。我花了几个小时试图解决这个问题,但运气不好。任何帮助都将不胜感激 代码: 报表查看器预览: 报告打印/导出: 您用于导出/打印和预览的代码可能不同。在打印/导出报告之前,比较两个代码并检查是否用数据填充数据集。cr对象是什么?可能是@KuKeC所说的,第一个打印是cryRpt object方法的结果,第二个是另一个方法的结果。向我们展示更多的代

我在crystal report上有一些奇怪的行为。它在报表查看器上正确显示数据。但是,当我尝试打印或导出同一报告时,它会打印空白报告(仅显示参数值)。我花了几个小时试图解决这个问题,但运气不好。任何帮助都将不胜感激

代码:

报表查看器预览:

报告打印/导出:


您用于导出/打印和预览的代码可能不同。在打印/导出报告之前,比较两个代码并检查是否用数据填充数据集。cr对象是什么?可能是@KuKeC所说的,第一个打印是cryRpt object方法的结果,第二个是另一个方法的结果。向我们展示更多的代码,特别是执行不同打印的函数以及如何调用它们。导出/打印和预览的代码可能不一样。在打印/导出报告之前,比较两个代码并检查是否用数据填充数据集。cr对象是什么?可能是@KuKeC所说的,第一个打印是cryRpt object方法的结果,第二个是另一个方法的结果。向我们展示更多的代码,特别是执行不同打印的函数以及如何调用它们
                        string fr = "{tblRegistration.id} = " + sID;
                        string img = Application.StartupPath + @"\Report\" + query.rptName + ".rpt";
                        ReportDocument cryRpt = new ReportDocument();
                        TableLogOnInfos crtableLogoninfos = new TableLogOnInfos();
                        TableLogOnInfo crtableLogoninfo = new TableLogOnInfo();
                        ConnectionInfo crConnectionInfo = new ConnectionInfo();
                        Tables CrTables;
                        cryRpt.Load(img);
                        crConnectionInfo.ServerName = Program.serverName;
                        crConnectionInfo.DatabaseName = Program.dbName;
                        crConnectionInfo.UserID = Program.saName;
                        crConnectionInfo.Password = Program.pw;
                        CrTables = cryRpt.Database.Tables;
                        foreach (CrystalDecisions.CrystalReports.Engine.Table CrTable in CrTables)
                        {
                            crtableLogoninfo = CrTable.LogOnInfo;
                            crtableLogoninfo.ConnectionInfo = crConnectionInfo;
                            CrTable.ApplyLogOnInfo(crtableLogoninfo);
                        }

                        cryRpt.SetParameterValue("date", DateTime.Now.Date);
                        cr.SelectionFormula = fr;
                        if (!print)
                            cr.ReportSource = cryRpt;
                        else
                            cryRpt.PrintToPrinter(1, true, 1, 1);