我在winform p.o.s项目中使用了水晶报告,问题是当我试图将报告保存或打印为pdf时,它会出现错误“试图除以零”,但预览工作正常
下面是print方法的代码片段
public void PrintReceipt(int id)
{
pagesTab.SetPage(7);
receipt_Template1.SetDataSource(_productService._orderDetails.Where(ol => ol.OrderId == id).ToList());
var order = _productService._orderList.Where(ol => ol.Id == id).FirstOrDefault();
var mop = order.ModeOfPayment;
var amountpaid = order.AmountPaid;
var totalamount = order.Total;
var change = order.Change;
var customerName = order.CustomerName;
var dateOfPurchase = order.DateOfPurchase;
var orderId = order.Id;
receipt_Template1.SetParameterValue("pMop", mop);
receipt_Template1.SetParameterValue("pAmountPaid", amountpaid);
receipt_Template1.SetParameterValue("pTotal", totalamount);
receipt_Template1.SetParameterValue("pChange", change);
receipt_Template1.SetParameterValue("pCustomerName", customerName);
receipt_Template1.SetParameterValue("pDateOfPurchase", dateOfPurchase);
receipt_Template1.SetParameterValue("pOrderId", orderId);
crystalReportViewer1.ReportSource = receipt_Template1;
}
}
下面是rpt文件
以下是部分属性
报告标题
页眉
详情
页脚
报告页脚
是什么引起的?
我试过切换一些属性,如“抑制”,但仍然不起作用,试着看我的公式字段,但没有一个执行任何可能导致除以零的数学运算。
1条答案
按热度按时间djmepvbi1#
我已经发现了问题原来“微软到PDF”不允许小收据大小,但我仍然设法将其导出为PDF使用水晶报告导出到磁盘“receipt_Template1.ExportToDisk(导出类型。PortableDocFormat,pdfFilePath);”