OPOS如何在财政打印机上开放日?
我的代码无效...
device = new OPOSFiscalPrinterClass();
device.Open("FiscPrinter"); //Opened succes
device.ClaimDevice(1000); //Claimed success
device.DeviceEnabled = true; //Enabled success
if (device.DayOpened)
{
device.PrintZReport();
}
device.FiscalReceiptType = (int)OPOSFiscalPrinterConstants.FPTR_RT_SALES;
device.BeginFiscalReceipt(true); //After that: ResultCode=114, ResultCodeExtended=221, PrinterState=2, DayOpened=false
device.PrintRecItem("Milk", 25.00M, 10000, 0, 25.00M, "");
device.EndFiscalReceipt(false); //After that: Receipt cannot be closed, ResultCode=114, ResultCodeExtended=207
device.Release();
device.Close();
尝试使用UnifiedPOS文档。 怎么了?
答案 0 :(得分:1)
Okey,财务打印机必须有一个操作员/用户,之后你可以使用BeginFiscalReceipt。
答案 1 :(得分:1)
为了完成收据,您需要在收据结束前发出一个小计命令和一个付款命令。 例如
device.PrintRecSubtotal(25.00M);
device.PrintRecCash(25.00M);
答案 2 :(得分:0)
ResultCodeExtended 207 = OPOS_EFPTR_WRONG_STATE:财务打印机当前未处于“财政收据”状态。你需要做一个小计
device.PrintRecSubTotal(25.00M);
device.PrintRecTotal(25.00M, 25.00M, 'P'); //Total = 25.00M, Payment = 25.00M
您的代码也可以按照以下方式完成
device.FiscalReceiptType = (int)OPOSFiscalPrinterConstants.FPTR_RT_SALES
或
device.FiscalReceiptType = 4; // FPTR_RT_SALES -> 4