crystal 报告最后打印空白页
crystal report prints blank page at end
这个问题快把我逼疯了。
我正在使用
EPSON TM-T88V printer
打印,之前还好好的一晚上OS升级到WIN10就疯了。我有一家餐厅的 POS,所以如果我第一次打印特定 table 的账单,它会在账单后打印空白页,因此它太长了。但我再次打印它打印完美。打电话给爱普生,测试页有一些问题,所以他们知道如何修复它,因为支持仅限于测试页,所以就留在那里了。当我尝试 POS 时,它是一样的。
这是我的打印代码
private void BillReceipt_Load(object sender, EventArgs e)
{
try
{
string sqlqry = "Select tb.TableNo,Pax,WaiterName,ItemCode,ItemName,Quantity,Amount,tb.BillNo,OrderType,RoundOffAmount as RoundOff, Discount,Gratuity,dues,Date1,tb.Time,ModeOfPayment,CardNo,CardHolderName,BankName,TotalAmount,VAT,ServiceTax,AmountPaid,Comments as comment,CustomerName,offeramount,DeliveryTax,Phoneno,Address From tblOrder o,tblBilling tb Where tb.KOTNo=@kotno and tb.KOTNo=o.KOTNo and o.KOTcancel='False'and o.Quantity>'0'and KOTCancel='False'";
SqlCommand cmd = new SqlCommand(sqlqry, connectionclass.con);
cmd.Parameters.AddWithValue("@kotno", NewOrderBL.KOTNo);
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
DataSet3 ds = new DataSet3();
adapter.Fill(ds, "Billing");
if (ds.Tables["Billing"].Rows.Count == 0)
{
MessageBox.Show("No Data Found", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
if (deliverybl.order == "Delivery")
{
PrintBillDelivery printbilldelivery = new PrintBillDelivery();
printbilldelivery.SetDataSource(ds);
crystalReportViewer1.ReportSource = printbilldelivery;
System.Drawing.Printing.PrintDocument printDocument = new System.Drawing.Printing.PrintDocument();
printbilldelivery.PrintOptions.PrinterName = printDocument.PrinterSettings.PrinterName;
printbilldelivery.PrintOptions.PrinterName = "EPSON TM-T88V Receipt";//for JAPNA PC
printbilldelivery.PrintToPrinter(1, false, 0, 0);
}
else
{
PrintBillReceipt2 printbillreceipt2 = new PrintBillReceipt2();
printbillreceipt2.SetDataSource(ds);
crystalReportViewer1.ReportSource = printbillreceipt2;
System.Drawing.Printing.PrintDocument printDocument = new System.Drawing.Printing.PrintDocument();
printbillreceipt2.PrintOptions.PrinterName = printDocument.PrinterSettings.PrinterName;
printbillreceipt2.PrintOptions.PrinterName = "EPSON TM-T88V Receipt";//for JAPNA PC
printbillreceipt2.PrintToPrinter(1, false, 0, 0);
}
//////////////////////////////////////////////////
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
finally { connectionclass.disconnect(); }
NewOrderBL.KOTNo = string.Empty;
onlinebl.crystalreport = "";
this.DialogResult = DialogResult.OK;
// this.Close();
}
如果您需要任何其他信息,请告诉我 know.So 请帮忙。谢谢
我能够解决这个问题是因为 WIN 10,一旦我能够恢复到 WIN 8,它就会像以前一样工作。
我认为的原因是 crystal 报告版本 13.x 与 WIN 10 不兼容(虽然不确定)
这个问题快把我逼疯了。
我正在使用
EPSON TM-T88V printer
打印,之前还好好的一晚上OS升级到WIN10就疯了。我有一家餐厅的 POS,所以如果我第一次打印特定 table 的账单,它会在账单后打印空白页,因此它太长了。但我再次打印它打印完美。打电话给爱普生,测试页有一些问题,所以他们知道如何修复它,因为支持仅限于测试页,所以就留在那里了。当我尝试 POS 时,它是一样的。
这是我的打印代码
private void BillReceipt_Load(object sender, EventArgs e)
{
try
{
string sqlqry = "Select tb.TableNo,Pax,WaiterName,ItemCode,ItemName,Quantity,Amount,tb.BillNo,OrderType,RoundOffAmount as RoundOff, Discount,Gratuity,dues,Date1,tb.Time,ModeOfPayment,CardNo,CardHolderName,BankName,TotalAmount,VAT,ServiceTax,AmountPaid,Comments as comment,CustomerName,offeramount,DeliveryTax,Phoneno,Address From tblOrder o,tblBilling tb Where tb.KOTNo=@kotno and tb.KOTNo=o.KOTNo and o.KOTcancel='False'and o.Quantity>'0'and KOTCancel='False'";
SqlCommand cmd = new SqlCommand(sqlqry, connectionclass.con);
cmd.Parameters.AddWithValue("@kotno", NewOrderBL.KOTNo);
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
DataSet3 ds = new DataSet3();
adapter.Fill(ds, "Billing");
if (ds.Tables["Billing"].Rows.Count == 0)
{
MessageBox.Show("No Data Found", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
if (deliverybl.order == "Delivery")
{
PrintBillDelivery printbilldelivery = new PrintBillDelivery();
printbilldelivery.SetDataSource(ds);
crystalReportViewer1.ReportSource = printbilldelivery;
System.Drawing.Printing.PrintDocument printDocument = new System.Drawing.Printing.PrintDocument();
printbilldelivery.PrintOptions.PrinterName = printDocument.PrinterSettings.PrinterName;
printbilldelivery.PrintOptions.PrinterName = "EPSON TM-T88V Receipt";//for JAPNA PC
printbilldelivery.PrintToPrinter(1, false, 0, 0);
}
else
{
PrintBillReceipt2 printbillreceipt2 = new PrintBillReceipt2();
printbillreceipt2.SetDataSource(ds);
crystalReportViewer1.ReportSource = printbillreceipt2;
System.Drawing.Printing.PrintDocument printDocument = new System.Drawing.Printing.PrintDocument();
printbillreceipt2.PrintOptions.PrinterName = printDocument.PrinterSettings.PrinterName;
printbillreceipt2.PrintOptions.PrinterName = "EPSON TM-T88V Receipt";//for JAPNA PC
printbillreceipt2.PrintToPrinter(1, false, 0, 0);
}
//////////////////////////////////////////////////
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
finally { connectionclass.disconnect(); }
NewOrderBL.KOTNo = string.Empty;
onlinebl.crystalreport = "";
this.DialogResult = DialogResult.OK;
// this.Close();
}
如果您需要任何其他信息,请告诉我 know.So 请帮忙。谢谢
我能够解决这个问题是因为 WIN 10,一旦我能够恢复到 WIN 8,它就会像以前一样工作。
我认为的原因是 crystal 报告版本 13.x 与 WIN 10 不兼容(虽然不确定)