public void PrintCashiersReport() { DialogResult loginresult = GetWriteAccess(mclsSalesTransactionDetails.CashierID, AccessTypes.PrintCashierReport); if (loginresult == DialogResult.None) { LogInWnd login = new LogInWnd(); login.AccessType = AccessTypes.PrintCashierReport; login.Header = "Print Cashier Report"; login.TerminalDetails = mclsTerminalDetails; login.ShowDialog(this); loginresult = login.Result; login.Close(); login.Dispose(); } if (loginresult == DialogResult.OK) { DateTime dte = DateTime.Now; Data.CashierReports clsCashierReport = new Data.CashierReports(mConnection, mTransaction); mConnection = clsCashierReport.Connection; mTransaction = clsCashierReport.Transaction; Data.CashierReportDetails Details = clsCashierReport.Details(mclsSalesTransactionDetails.CashierID, Constants.TerminalBranchID, mclsTerminalDetails.TerminalNo); clsCashierReport.CommitAndDispose(); DialogResult result = DialogResult.OK; if (mclsTerminalDetails.PreviewTerminalReport) { CashierReportWnd clsCashierReportWnd = new CashierReportWnd(); clsCashierReportWnd.TerminalDetails = mclsTerminalDetails; clsCashierReportWnd.Details = Details; clsCashierReportWnd.CashierName = mCashierName; clsCashierReportWnd.ShowDialog(this); result = clsCashierReportWnd.Result; clsCashierReportWnd.Close(); clsCashierReportWnd.Dispose(); } if (result == DialogResult.OK) { //PrintCashiersReportDelegate cashierreportDel = new PrintCashiersReportDelegate(PrintCashiersReport); PrintCashiersReport(Details); } } }
public void ReprintZRead() { DialogResult result = GetWriteAccess(mclsSalesTransactionDetails.CashierID, AccessTypes.ReprintZRead); if (result == DialogResult.None) { LogInWnd login = new LogInWnd(); login.AccessType = AccessTypes.PrintZRead; login.Header = "Re-Print ZREAD Report"; login.TerminalDetails = mclsTerminalDetails; login.ShowDialog(this); result = login.Result; login.Close(); login.Dispose(); } if (result == DialogResult.OK) { bool boWithTF = true; TerminalHistoryDateWnd clsTerminalHistoryDateWnd = new TerminalHistoryDateWnd(); clsTerminalHistoryDateWnd.TerminalDetails = mclsTerminalDetails; clsTerminalHistoryDateWnd.WithTF = boWithTF; clsTerminalHistoryDateWnd.ShowDialog(this); DialogResult clsTerminalHistoryDateWndresult = clsTerminalHistoryDateWnd.Result; DateTime dtDateLastInitialized = clsTerminalHistoryDateWnd.DateLastInitialized; Keys keyCommand = clsTerminalHistoryDateWnd.keyCommand; clsTerminalHistoryDateWnd.Close(); clsTerminalHistoryDateWnd.Dispose(); if (clsTerminalHistoryDateWndresult == System.Windows.Forms.DialogResult.OK) { Data.TerminalReportHistory clsTerminalReportHistory = new Data.TerminalReportHistory(mConnection, mTransaction); mConnection = clsTerminalReportHistory.Connection; mTransaction = clsTerminalReportHistory.Transaction; if (keyCommand == Keys.F12) //override boWithTF, so that it will get the actual if it is an F12 { boWithTF = false; } // get the details, boWithTF will determine if it will be selected from esales or from actual Data.TerminalReportDetails Details = clsTerminalReportHistory.Details(mclsTerminalDetails.BranchDetails.BranchID, mclsTerminalDetails.TerminalNo, dtDateLastInitialized, boWithTF); clsTerminalReportHistory.CommitAndDispose(); decimal OldTrustFund = mclsTerminalDetails.TrustFund; if (keyCommand == Keys.F12) //override even if boWithTF=true { mclsTerminalDetails.TrustFund = 0; Details.TrustFund = 0; } else { mclsTerminalDetails.TrustFund = Details.TrustFund; } AceSoft.Common.SYSTEMTIME st = new AceSoft.Common.SYSTEMTIME(); // set the sytem date to NextDetails DateLastInitialized st = AceSoft.Common.ConvertToSystemTime(Details.DateLastInitialized.AddSeconds(-2).ToUniversalTime()); mdtCurrentDateTime = DateTime.Now; tmr.Enabled = true; tmr.Start(); AceSoft.Common.SetSystemTime(ref st); TerminalReportWnd clsTerminalReportWnd = new TerminalReportWnd(); clsTerminalReportWnd.SysConfigDetails = mclsSysConfigDetails; clsTerminalReportWnd.TerminalDetails = mclsTerminalDetails; clsTerminalReportWnd.Details = Details; clsTerminalReportWnd.CashierName = mCashierName; clsTerminalReportWnd.TerminalReportType = TerminalReportType.ZRead; clsTerminalReportWnd.ShowDialog(this); result = clsTerminalReportWnd.Result; clsTerminalReportWnd.Close(); clsTerminalReportWnd.Dispose(); if (result == DialogResult.OK) { //PrintZReadDelegate printzreadDel = new PrintZReadDelegate(PrintZRead); //printzreadDel.BeginInvoke(Details, null, null); RePrintZRead(Details); InsertAuditLog(AccessTypes.ReprintZRead, "Re-Print ZRead report: TerminalNo=" + mclsTerminalDetails.TerminalNo + " DateLastInitialized=" + dtDateLastInitialized.ToString("yyyy-MM-dd hh:mm") + " @ Branch: " + mclsTerminalDetails.BranchDetails.BranchCode); } // set the sytem date to NextDetails DateLastInitialized st = AceSoft.Common.ConvertToSystemTime(mdtCurrentDateTime.ToUniversalTime()); AceSoft.Common.SetSystemTime(ref st); tmr.Stop(); tmr.Enabled = false; mclsTerminalDetails.TrustFund = OldTrustFund; } } }
public void PrintTerminalReport() { DialogResult loginresult = GetWriteAccess(mclsSalesTransactionDetails.CashierID, AccessTypes.PrintTerminalReport); if (loginresult == DialogResult.None) { LogInWnd login = new LogInWnd(); login.AccessType = AccessTypes.PrintTerminalReport; login.Header = "Print Terminal Report"; login.TerminalDetails = mclsTerminalDetails; login.ShowDialog(this); loginresult = login.Result; login.Close(); login.Dispose(); } if (loginresult == DialogResult.OK) { Data.TerminalReport clsTerminalReport = new Data.TerminalReport(mConnection, mTransaction); mConnection = clsTerminalReport.Connection; mTransaction = clsTerminalReport.Transaction; Data.TerminalReportDetails Details = clsTerminalReport.Details(mclsTerminalDetails.BranchDetails.BranchID, mclsTerminalDetails.TerminalNo); Details.InitializedBy = mclsSalesTransactionDetails.CashierName; clsTerminalReport.CommitAndDispose(); // always set to zero for BIR purposes Details.TrustFund = 0; DialogResult result = DialogResult.OK; if (mclsTerminalDetails.PreviewTerminalReport) { TerminalReportWnd clsTerminalReportWnd = new TerminalReportWnd(); clsTerminalReportWnd.SysConfigDetails = mclsSysConfigDetails; clsTerminalReportWnd.TerminalDetails = mclsTerminalDetails; clsTerminalReportWnd.Details = Details; clsTerminalReportWnd.CashierName = mCashierName; clsTerminalReportWnd.TerminalReportType = TerminalReportType.TerminalReport; clsTerminalReportWnd.ShowDialog(this); result = clsTerminalReportWnd.Result; clsTerminalReportWnd.Close(); clsTerminalReportWnd.Dispose(); } if (result == DialogResult.OK) { //PrintTerminalReportDelegate terminalreportDel = new PrintTerminalReportDelegate(PrintTerminalReport); //terminalreportDel.BeginInvoke(Details, null, null); PrintTerminalReport(Details); } } }
public void PrintCollectionReceipt() { try { if (mclsTerminalDetails.AutoPrint == PrintingPreference.Auto) { MessageBox.Show("Sorry this option is not applicable for Auto-Print receipt.", "RetailPlus", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2); return; } if (!mboIsInTransaction) { MessageBox.Show("No active transaction is found! Please transact first.", "RetailPlus", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2); return; } DialogResult loginresult = GetWriteAccess(mclsSalesTransactionDetails.CashierID, AccessTypes.CloseTransaction); if (loginresult == DialogResult.None) { LogInWnd login = new LogInWnd(); login.AccessType = AccessTypes.CloseTransaction; login.Header = "Print Collection Receipt"; login.TerminalDetails = mclsTerminalDetails; login.ShowDialog(this); loginresult = login.Result; login.Close(); login.Dispose(); } if (loginresult == DialogResult.OK) { CRSReports.CR rpt = new CRSReports.CR(); AceSoft.RetailPlus.Client.ReportDataset rptds = new AceSoft.RetailPlus.Client.ReportDataset(); System.Data.DataRow drNew; /****************************sales transaction *****************************/ Data.SalesTransactions clsSalesTransactions = new Data.SalesTransactions(mConnection, mTransaction); mConnection = clsSalesTransactions.Connection; mTransaction = clsSalesTransactions.Transaction; Data.SalesTransactionDetails clsSalesTransactionDetails = clsSalesTransactions.Details(mclsSalesTransactionDetails.TransactionNo, mclsTerminalDetails.TerminalNo, mclsTerminalDetails.BranchID); Data.Contacts clsContact = new Data.Contacts(mConnection, mTransaction); Data.ContactDetails clsContactDetails = clsContact.Details(clsSalesTransactionDetails.CustomerID); if (clsSalesTransactionDetails.isExist) { drNew = rptds.Transactions.NewRow(); drNew["TransactionID"] = clsSalesTransactionDetails.TransactionID; drNew["TransactionNo"] = clsSalesTransactionDetails.TransactionNo; drNew["ORNo"] = clsSalesTransactionDetails.ORNo; drNew["CustomerName"] = clsSalesTransactionDetails.CustomerName; drNew["CustomerAddress"] = clsContactDetails.Address; drNew["CustomerTerms"] = clsSalesTransactionDetails.Terms; drNew["CustomerModeOfterms"] = clsSalesTransactionDetails.ModeOfTerms; drNew["CustomerBusinessName"] = clsContactDetails.BusinessName; drNew["CustomerTelNo"] = clsContactDetails.TelephoneNo; drNew["CashierName"] = clsSalesTransactionDetails.CashierName; drNew["CreatedByName"] = clsSalesTransactionDetails.CreatedByName; drNew["AgentName"] = clsSalesTransactionDetails.AgentName; drNew["TerminalNo"] = clsSalesTransactionDetails.TerminalNo; drNew["TransactionDate"] = clsSalesTransactionDetails.TransactionDate; drNew["DateSuspended"] = clsSalesTransactionDetails.DateSuspended.ToString(); drNew["DateResumed"] = clsSalesTransactionDetails.DateResumed; drNew["TransactionStatus"] = clsSalesTransactionDetails.TransactionStatus; drNew["SubTotal"] = clsSalesTransactionDetails.SubTotal; drNew["ItemsDiscount"] = clsSalesTransactionDetails.ItemsDiscount; //drNew["SNRItemsDiscount"] = clsSalesTransactionDetails.SNRItemsDiscount; //drNew["PWDItemsDiscount"] = clsSalesTransactionDetails.PWDItemsDiscount; //drNew["OtherItemsDiscount"] = clsSalesTransactionDetails.OtherItemsDiscount; drNew["Discount"] = clsSalesTransactionDetails.Discount; drNew["VAT"] = clsSalesTransactionDetails.VAT; drNew["VATableAmount"] = clsSalesTransactionDetails.VATableAmount; //drNew["ZeroRatedSales"] = clsSalesTransactionDetails.ZeroRatedSales; drNew["LocalTax"] = clsSalesTransactionDetails.LocalTax; drNew["AmountPaid"] = clsSalesTransactionDetails.AmountPaid; drNew["CashPayment"] = clsSalesTransactionDetails.CashPayment; drNew["ChequePayment"] = clsSalesTransactionDetails.ChequePayment; drNew["CreditCardPayment"] = clsSalesTransactionDetails.CreditCardPayment; drNew["CreditPayment"] = clsSalesTransactionDetails.CreditPayment; drNew["DebitPayment"] = clsSalesTransactionDetails.DebitPayment; drNew["BalanceAmount"] = clsSalesTransactionDetails.BalanceAmount; drNew["ChangeAmount"] = clsSalesTransactionDetails.ChangeAmount; drNew["DateClosed"] = clsSalesTransactionDetails.DateClosed; drNew["PaymentType"] = clsSalesTransactionDetails.PaymentType.ToString("d"); drNew["Charge"] = clsSalesTransactionDetails.Charge; drNew["isConsignment"] = clsSalesTransactionDetails.isConsignment; drNew["CRNo"] = clsSalesTransactionDetails.CRNo.ToString().PadLeft(15, '0'); rptds.Transactions.Rows.Add(drNew); /****************************sales transaction items*****************************/ Data.SalesTransactionItems clsSalesTransactionItems = new Data.SalesTransactionItems(mConnection, mTransaction); mConnection = clsSalesTransactionItems.Connection; mTransaction = clsSalesTransactionItems.Transaction; System.Data.DataTable dt = clsSalesTransactionItems.List(clsSalesTransactionDetails.TransactionID, clsSalesTransactionDetails.TransactionDate, "TransactionItemsID", SortOption.Ascending); foreach (System.Data.DataRow dr in dt.Rows) { drNew = rptds.SalesTransactionItems.NewRow(); foreach (System.Data.DataColumn dc in rptds.SalesTransactionItems.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.SalesTransactionItems.Rows.Add(drNew); } } clsSalesTransactions.CommitAndDispose(); rpt.SetDataSource(rptds); CrystalDecisions.CrystalReports.Engine.ParameterFieldDefinition paramField; CrystalDecisions.Shared.ParameterValues currentValues; CrystalDecisions.Shared.ParameterDiscreteValue discreteParam; paramField = rpt.DataDefinition.ParameterFields["CompanyName"]; discreteParam = new CrystalDecisions.Shared.ParameterDiscreteValue(); discreteParam.Value = CompanyDetails.CompanyName; currentValues = new CrystalDecisions.Shared.ParameterValues(); currentValues.Add(discreteParam); paramField.ApplyCurrentValues(currentValues); paramField = rpt.DataDefinition.ParameterFields["PrintedBy"]; discreteParam = new CrystalDecisions.Shared.ParameterDiscreteValue(); discreteParam.Value = mclsSalesTransactionDetails.CashierName; currentValues = new CrystalDecisions.Shared.ParameterValues(); currentValues.Add(discreteParam); paramField.ApplyCurrentValues(currentValues); paramField = rpt.DataDefinition.ParameterFields["PackedBy"]; discreteParam = new CrystalDecisions.Shared.ParameterDiscreteValue(); discreteParam.Value = mclsSalesTransactionDetails.WaiterName; // grpItems.Text.Remove(0, 11); currentValues = new CrystalDecisions.Shared.ParameterValues(); currentValues.Add(discreteParam); paramField.ApplyCurrentValues(currentValues); paramField = rpt.DataDefinition.ParameterFields["CompanyAddress"]; discreteParam = new CrystalDecisions.Shared.ParameterDiscreteValue(); discreteParam.Value = CompanyDetails.Address1 + ((!string.IsNullOrEmpty(CompanyDetails.Address2) ? Environment.NewLine + CompanyDetails.Address2 + ", " : " ")) + CompanyDetails.City + " " + CompanyDetails.Country + ((!string.IsNullOrEmpty(CompanyDetails.OfficePhone) ? Environment.NewLine + "Tel #: " + CompanyDetails.OfficePhone + " " : " ")) + ((!string.IsNullOrEmpty(CompanyDetails.OfficePhone) ? Environment.NewLine + "FaxPhone #: " + CompanyDetails.FaxPhone + " " : " ")); currentValues = new CrystalDecisions.Shared.ParameterValues(); currentValues.Add(discreteParam); paramField.ApplyCurrentValues(currentValues); paramField = rpt.DataDefinition.ParameterFields["BIRInfo"]; discreteParam = new CrystalDecisions.Shared.ParameterDiscreteValue(); discreteParam.Value = "TIN : " + CompanyDetails.TIN + " VAT Reg." + Environment.NewLine + "BIR Acc #: " + CONFIG.AccreditationNo + " SN#: " + CONFIG.MachineSerialNo + Environment.NewLine + "Permit No: FP102014-064-0015149-00000"; currentValues = new CrystalDecisions.Shared.ParameterValues(); currentValues.Add(discreteParam); paramField.ApplyCurrentValues(currentValues); paramField = rpt.DataDefinition.ParameterFields["TINNo"]; discreteParam = new CrystalDecisions.Shared.ParameterDiscreteValue(); discreteParam.Value = mclsSalesTransactionDetails.CustomerDetails.TINNo; currentValues = new CrystalDecisions.Shared.ParameterValues(); currentValues.Add(discreteParam); paramField.ApplyCurrentValues(currentValues); paramField = rpt.DataDefinition.ParameterFields["LTONo"]; discreteParam = new CrystalDecisions.Shared.ParameterDiscreteValue(); discreteParam.Value = mclsSalesTransactionDetails.CustomerDetails.LTONo; currentValues = new CrystalDecisions.Shared.ParameterValues(); currentValues.Add(discreteParam); paramField.ApplyCurrentValues(currentValues); //foreach (CrystalDecisions.CrystalReports.Engine.ReportObject objPic in rpt.Section1.ReportObjects) //{ // if (objPic.Name.ToUpper() == "PICLOGO1") // { // objPic = new Bitmap(Application.StartupPath + "/images/ReportLogo.jpg"); // } //} //CRViewer.Visible = true; //CRViewer.ReportSource = rpt; //CRViewer.Show(); try { DateTime logdate = DateTime.Now; string logsdir = System.Configuration.ConfigurationManager.AppSettings["logsdir"].ToString(); if (!Directory.Exists(logsdir + logdate.ToString("MMM"))) { Directory.CreateDirectory(logsdir + logdate.ToString("MMM")); } string logFile = logsdir + logdate.ToString("MMM") + "/CR_" + clsSalesTransactionDetails.TransactionNo + logdate.ToString("yyyyMMddhhmmss") + ".doc"; rpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.WordForWindows, logFile); } catch { } if (isPrinterOnline(mclsTerminalDetails.SalesInvoicePrinterName)) { rpt.PrintOptions.PrinterName = mclsTerminalDetails.SalesInvoicePrinterName; rpt.PrintToPrinter(1, false, 0, 0); } else { clsEvent.AddEventLn("will not print delivery receipt. printer is offline.", true, mclsSysConfigDetails.WillWriteSystemLog); } rpt.Close(); rpt.Dispose(); } } catch (Exception ex) { InsertErrorLogToFile(ex); } }
public void PrintParkingTicket() { try { if (mclsTerminalDetails.AutoPrint == PrintingPreference.Auto) { MessageBox.Show("Sorry this option is not applicable for Auto-Print receipt.", "RetailPlus", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2); return; } if (!mboIsInTransaction) { MessageBox.Show("No active transaction is found! Please transact first.", "RetailPlus", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2); return; } DialogResult loginresult = GetWriteAccess(mclsSalesTransactionDetails.CashierID, AccessTypes.CloseTransaction); if (loginresult == DialogResult.None) { LogInWnd login = new LogInWnd(); login.AccessType = AccessTypes.CloseTransaction; login.Header = "Print Parking Ticket Access Validation"; login.TerminalDetails = mclsTerminalDetails; login.ShowDialog(this); loginresult = login.Result; login.Close(); login.Dispose(); } if (loginresult == DialogResult.OK) { PrintingPreference oldCONFIG_AutoPrint = mclsTerminalDetails.AutoPrint; mclsTerminalDetails.AutoPrint = PrintingPreference.Normal; PrintReportHeaderSection(true, DateTime.MinValue); mboIsItemHeaderPrinted = true; AceSoft.BarcodePrinter clsBarcodePrinter = new BarcodePrinter(); if (mclsTerminalDetails.IsPrinterDotMatrix) { msbToPrint.Append(clsBarcodePrinter.GenerateBarCode(mclsSalesTransactionDetails.TransactionNo, AceSoft.printerModel.EpsonTest, barcodeType.EAN13) + Environment.NewLine); msbToPrint.Append(CenterString("-/- PARKING TICKET -/-", mclsTerminalDetails.MaxReceiptWidth) + Environment.NewLine); msbToPrint.Append(CenterString("NOT VALID AS RECEIPT", mclsTerminalDetails.MaxReceiptWidth) + Environment.NewLine); } else { msbToPrint.Append(clsBarcodePrinter.GenerateBarCode(mclsSalesTransactionDetails.TransactionNo, AceSoft.printerModel.Epson, barcodeType.EAN13) + Environment.NewLine); msbToPrint.Append(RawPrinterHelper.escBoldHOn + CenterString("-/- PARKING TICKET -/-", mclsTerminalDetails.MaxReceiptWidth) + RawPrinterHelper.escBoldHOff + Environment.NewLine); msbToPrint.Append(RawPrinterHelper.escBoldHOn + CenterString("NOT VALID AS RECEIPT", mclsTerminalDetails.MaxReceiptWidth) + RawPrinterHelper.escBoldHOff + Environment.NewLine); } PrintReportPageHeaderSection(true); msbToPrint.Append(Environment.NewLine + RawPrinterHelper.escEmphasizedOn + CenterString("TIME IN: " + mclsSalesTransactionDetails.TransactionDate.ToString("MM/dd/yyyy hh:mm tt"), mclsTerminalDetails.MaxReceiptWidth) + RawPrinterHelper.escEmphasizedOff + Environment.NewLine + Environment.NewLine); PrintReportFooterSection(false, TransactionStatus.ParkingTicket, mclsSalesTransactionDetails.ItemSold, mclsSalesTransactionDetails.QuantitySold, mclsSalesTransactionDetails.SubTotal, mclsSalesTransactionDetails.Discount, mclsSalesTransactionDetails.Charge, 0, 0, 0, 0, 0, 0, 0, 0, 0, null, null, null, null); mboIsItemHeaderPrinted = false; mclsTerminalDetails.AutoPrint = oldCONFIG_AutoPrint; } } catch (Exception ex) { InsertErrorLogToFile(ex, "ERROR!!! Printing Parking Slip: "); } Cursor.Current = Cursors.Default; }
public bool PrintOrderSlip(bool WillReprintAll, bool isFromSuspendTransaction = false) { bool boRetValue = true; if (mclsTerminalDetails.AutoPrint == PrintingPreference.Auto) { MessageBox.Show("Sorry this option is not applicable for Auto-Print receipt.", "RetailPlus", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2); return false; } if (!mboIsInTransaction) { MessageBox.Show("No active transaction is found! Please transact first.", "RetailPlus", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2); return false; } DialogResult loginresult = GetWriteAccess(mclsSalesTransactionDetails.CashierID, AccessTypes.SuspendTransaction); if (loginresult == DialogResult.None) { LogInWnd login = new LogInWnd(); login.AccessType = AccessTypes.SuspendTransaction; login.Header = "Print Order Slip Validation"; login.TerminalDetails = mclsTerminalDetails; login.ShowDialog(this); loginresult = login.Result; login.Close(); login.Dispose(); } if (loginresult != DialogResult.OK) { boRetValue = false; } else { if (mclsTerminalDetails.ReceiptType == TerminalReceiptType.SalesInvoice) { PrintSalesInvoice(); } else if (mclsTerminalDetails.ReceiptType == TerminalReceiptType.DeliveryReceipt) { PrintDeliveryReceipt(); } else if (mclsTerminalDetails.ReceiptType == TerminalReceiptType.SalesInvoiceAndDR) { PrintSalesInvoice(); PrintDeliveryReceipt(); } else if (mclsTerminalDetails.ReceiptType == TerminalReceiptType.SalesInvoiceForLX300Printer) { PrintSalesInvoiceToLX(TerminalReceiptType.SalesInvoiceForLX300Printer); } //Added May 11, 2010 else if (mclsTerminalDetails.ReceiptType == TerminalReceiptType.SalesInvoiceOrDR) { PrintDeliveryReceipt(); } //Added January 17, 2011 else if (mclsTerminalDetails.ReceiptType == TerminalReceiptType.SalesInvoiceForLX300PlusPrinter) { PrintSalesInvoiceToLX(TerminalReceiptType.SalesInvoiceForLX300PlusPrinter); } //Added February 22, 2011 else if (mclsTerminalDetails.ReceiptType == TerminalReceiptType.SalesInvoiceForLX300PlusAmazon) { PrintSalesInvoiceToLX(TerminalReceiptType.SalesInvoiceForLX300PlusAmazon); //8.5inc x 7inch } else { Cursor.Show(); Cursor.Current = Cursors.WaitCursor; /************************* * Check if will reprint all items for ALT + S * December 18, 2008 * **********************/ bool bolRetailPlusOSPrinter1HeaderPrinted = false; bool bolRetailPlusOSPrinter2HeaderPrinted = false; bool bolRetailPlusOSPrinter3HeaderPrinted = false; bool bolRetailPlusOSPrinter4HeaderPrinted = false; bool bolRetailPlusOSPrinter5HeaderPrinted = false; Data.ProductComposition clsProductComposition = new Data.ProductComposition(mConnection, mTransaction); mConnection = clsProductComposition.Connection; mTransaction = clsProductComposition.Transaction; Data.Products clsProduct = new Data.Products(mConnection, mTransaction); mConnection = clsProduct.Connection; mTransaction = clsProduct.Transaction; // print order slip items in each printer foreach (System.Data.DataRow dr in ItemDataTable.Rows) { bool OrderSlipPrinted = Convert.ToBoolean(dr["OrderSlipPrinted"]); /**** * 05Dec2014 remove the WillReprintAll * it's only tagged as printed if success print * ***/ if (!OrderSlipPrinted || WillReprintAll) //if (!OrderSlipPrinted) { /**************************************** * Update items that are already printed * December 18, 2008 * * 05Dec2014 Remove this, should only set to true if success printing ****************************************/ //Int64 iTransactionItemsID = Convert.ToInt64(dr["TransactionItemsID"]); //clsSalesTransactionItems.UpdateOrderSlipPrinted(true, iTransactionItemsID, mclsSalesTransactionDetails.TransactionDate); if (dr["Quantity"].ToString() != "VOID" && dr["Quantity"].ToString().IndexOf("RETURN") == -1) { //string stItemNo = "" + dr["ItemNo"].ToString(); long lProductID = Convert.ToInt64(dr["ProductID"]); bool bolWillPrintProductComposition = clsProduct.WillPrintProductComposition(lProductID); string stProductCode = "" + dr["ProductCode"].ToString(); string stProductUnitCode = "" + dr["ProductUnitCode"].ToString(); decimal decQuantity = Convert.ToDecimal(dr["Quantity"]); string strItemRemarks = "" + dr["ItemRemarks"].ToString(); bool orderSlipPrinter1 = bool.Parse(dr["OrderSlipPrinter1"].ToString()); bool orderSlipPrinter2 = bool.Parse(dr["OrderSlipPrinter2"].ToString()); bool orderSlipPrinter3 = bool.Parse(dr["OrderSlipPrinter3"].ToString()); bool orderSlipPrinter4 = bool.Parse(dr["OrderSlipPrinter4"].ToString()); bool orderSlipPrinter5 = bool.Parse(dr["OrderSlipPrinter5"].ToString()); // print the headers if (orderSlipPrinter1 && !bolRetailPlusOSPrinter1HeaderPrinted) { bolRetailPlusOSPrinter1HeaderPrinted = true; PrintOrderSlipHeader(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter1, WillReprintAll); } if (orderSlipPrinter2 && !bolRetailPlusOSPrinter2HeaderPrinted) { bolRetailPlusOSPrinter2HeaderPrinted = true; PrintOrderSlipHeader(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter2, WillReprintAll); } if (orderSlipPrinter3 && !bolRetailPlusOSPrinter3HeaderPrinted) { bolRetailPlusOSPrinter3HeaderPrinted = true; PrintOrderSlipHeader(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter3, WillReprintAll); } if (orderSlipPrinter4 && !bolRetailPlusOSPrinter4HeaderPrinted) { bolRetailPlusOSPrinter4HeaderPrinted = true; PrintOrderSlipHeader(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter4, WillReprintAll); } if (orderSlipPrinter5 && !bolRetailPlusOSPrinter5HeaderPrinted) { bolRetailPlusOSPrinter5HeaderPrinted = true; PrintOrderSlipHeader(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter5, WillReprintAll); } // print product composition first: // if there are product compositions no need to print product if (bolWillPrintProductComposition) { if (!PrintOrderSlipComposition(lProductID, stProductCode, stProductUnitCode, decQuantity, bolWillPrintProductComposition)) { // if there are no product composition // print the product only if (orderSlipPrinter1) { PrintItemToOSPrinter(stProductCode, stProductUnitCode, decQuantity, OrderSlipPrinter.RetailPlusOSPrinter1, true, strItemRemarks); } if (orderSlipPrinter2) { PrintItemToOSPrinter(stProductCode, stProductUnitCode, decQuantity, OrderSlipPrinter.RetailPlusOSPrinter2, true, strItemRemarks); } if (orderSlipPrinter3) { PrintItemToOSPrinter(stProductCode, stProductUnitCode, decQuantity, OrderSlipPrinter.RetailPlusOSPrinter3, true, strItemRemarks); } if (orderSlipPrinter4) { PrintItemToOSPrinter(stProductCode, stProductUnitCode, decQuantity, OrderSlipPrinter.RetailPlusOSPrinter4, true, strItemRemarks); } if (orderSlipPrinter5) { PrintItemToOSPrinter(stProductCode, stProductUnitCode, decQuantity, OrderSlipPrinter.RetailPlusOSPrinter5, true, strItemRemarks); } } } else { // if there are no product composition // print the product only if (orderSlipPrinter1) { PrintItemToOSPrinter(stProductCode, stProductUnitCode, decQuantity, OrderSlipPrinter.RetailPlusOSPrinter1, true, strItemRemarks); } if (orderSlipPrinter2) { PrintItemToOSPrinter(stProductCode, stProductUnitCode, decQuantity, OrderSlipPrinter.RetailPlusOSPrinter2, true, strItemRemarks); } if (orderSlipPrinter3) { PrintItemToOSPrinter(stProductCode, stProductUnitCode, decQuantity, OrderSlipPrinter.RetailPlusOSPrinter3, true, strItemRemarks); } if (orderSlipPrinter4) { PrintItemToOSPrinter(stProductCode, stProductUnitCode, decQuantity, OrderSlipPrinter.RetailPlusOSPrinter4, true, strItemRemarks); } if (orderSlipPrinter5) { PrintItemToOSPrinter(stProductCode, stProductUnitCode, decQuantity, OrderSlipPrinter.RetailPlusOSPrinter5, true, strItemRemarks); } } } /**************************************** * Update items that are already printed * December 18, 2008 * * 05Dec2014 Remove this, should only set to true if success printing ****************************************/ // dr["OrderSlipPrinted"] = true.ToString(); } } clsProductComposition.CommitAndDispose(); // print order slip footer in each printer if (bolRetailPlusOSPrinter1HeaderPrinted) { if (isPrinterOnline(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter1.ToString("G"))) { if (!PrintOrderSlipFooter(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter1)) { ShowOrderSlipPrinterError(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter1, isFromSuspendTransaction); boRetValue = false; } else UpdateOrderSlipAsPrinted(OrderSlipPrinter.RetailPlusOSPrinter1); //boRetValue = boRetValue; } else { ShowOrderSlipPrinterError(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter1, isFromSuspendTransaction, true); boRetValue = false; } } if (bolRetailPlusOSPrinter2HeaderPrinted) { if (isPrinterOnline(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter2.ToString("G"))) { if (!PrintOrderSlipFooter(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter2)) { ShowOrderSlipPrinterError(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter2, isFromSuspendTransaction); boRetValue = false; } else UpdateOrderSlipAsPrinted(OrderSlipPrinter.RetailPlusOSPrinter2); //boRetValue = boRetValue; } else { ShowOrderSlipPrinterError(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter2, isFromSuspendTransaction, true); boRetValue = false; } } if (bolRetailPlusOSPrinter3HeaderPrinted) { if (isPrinterOnline(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter3.ToString("G"))) { if (!PrintOrderSlipFooter(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter3)) { ShowOrderSlipPrinterError(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter3, isFromSuspendTransaction); boRetValue = false; } else UpdateOrderSlipAsPrinted(OrderSlipPrinter.RetailPlusOSPrinter3); //boRetValue = boRetValue } else { ShowOrderSlipPrinterError(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter3, isFromSuspendTransaction, true); boRetValue = false; } } if (bolRetailPlusOSPrinter4HeaderPrinted) { if (isPrinterOnline(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter4.ToString("G"))) { if (!PrintOrderSlipFooter(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter4)) { ShowOrderSlipPrinterError(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter4, isFromSuspendTransaction); boRetValue = false; } else UpdateOrderSlipAsPrinted(OrderSlipPrinter.RetailPlusOSPrinter4); //boRetValue = boRetValue; } else { ShowOrderSlipPrinterError(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter4, isFromSuspendTransaction, true); boRetValue = false; } } if (bolRetailPlusOSPrinter5HeaderPrinted) { if (isPrinterOnline(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter5.ToString("G"))) { if (!PrintOrderSlipFooter(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter5)) { ShowOrderSlipPrinterError(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter5, isFromSuspendTransaction); boRetValue = false; } else UpdateOrderSlipAsPrinted(OrderSlipPrinter.RetailPlusOSPrinter5); } else { ShowOrderSlipPrinterError(AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter5, isFromSuspendTransaction, true); boRetValue = false; } } Cursor.Current = Cursors.Default; Cursor.Hide(); // show message only if boRetValue=true // no need to message if boRetValue=false, coz it has already shown error message if (boRetValue && !isFromSuspendTransaction) { if (WillReprintAll) MessageBox.Show("Order's has been re-send to Kitchen/Bar printer's.", "RetailPlus", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); else MessageBox.Show("Order's has been sent to Kitchen/Bar printer's.", "RetailPlus", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); } } } return boRetValue; }
public void PrintCheckOutBill() { if (mclsTerminalDetails.AutoPrint == PrintingPreference.Auto) { MessageBox.Show("Sorry this option is not applicable for Auto-Print receipt.", "RetailPlus", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2); return; } if (!mboIsInTransaction) { MessageBox.Show("No active transaction is found! Please transact first.", "RetailPlus", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2); return; } DialogResult loginresult = GetWriteAccess(mclsSalesTransactionDetails.CashierID, AccessTypes.PrintCheckOutBill); if (loginresult == DialogResult.None) { LogInWnd login = new LogInWnd(); login.AccessType = AccessTypes.CloseTransaction; login.Header = "Print Check-Out Bill Access Validation"; login.TerminalDetails = mclsTerminalDetails; login.ShowDialog(this); loginresult = login.Result; login.Close(); login.Dispose(); } if (loginresult == DialogResult.OK) { PrintingPreference oldCONFIG_AutoPrint = mclsTerminalDetails.AutoPrint; mclsTerminalDetails.AutoPrint = PrintingPreference.Normal; /***** * Put a separate ReportHeader for Check-OutBill * Due to security reasons that check-out bill is use as a receipt. * January 14, 2008 * ***/ PrintCheckOutBillHeader(); /*** end of Jan 14 ***/ foreach (System.Data.DataRow dr in ItemDataTable.Rows) { if (dr["Quantity"].ToString().IndexOf("RETURN") != -1) { string stItemNo = "" + dr["ItemNo"].ToString(); string stProductCode = "" + dr["ProductCode"].ToString() + "-RET"; string stProductUnitCode = "" + dr["ProductUnitCode"].ToString(); if (!string.IsNullOrEmpty(dr["MatrixDescription"].ToString())) stProductCode += "-" + dr["MatrixDescription"].ToString(); decimal decQuantity = Convert.ToDecimal(dr["Quantity"].ToString().Replace(" - RETURN", "").Trim()); decimal decPrice = Convert.ToDecimal(dr["Price"]); decimal decDiscount = Convert.ToDecimal(dr["Discount"]); decimal decAmount = Convert.ToDecimal(dr["Amount"]) * -1; decimal decVAT = Convert.ToDecimal(dr["VAT"]); decimal decEVAT = Convert.ToDecimal(dr["EVAT"]); decimal decPromoApplied = Convert.ToDecimal(dr["PromoApplied"]); string stDiscountCode = "" + dr["DiscountCode"].ToString(); DiscountTypes ItemDiscountType = (DiscountTypes)Enum.Parse(typeof(DiscountTypes), dr["ItemDiscountType"].ToString()); PrintItem(stItemNo, stProductCode, stProductUnitCode, decQuantity, decPrice, decDiscount, decPromoApplied, decAmount, decVAT, decEVAT, stDiscountCode, ItemDiscountType); } else if (dr["Quantity"].ToString().IndexOf("DEMO") != -1) { string stItemNo = "" + dr["ItemNo"].ToString(); string stProductCode = "" + dr["ProductCode"].ToString() + "-DEMO"; string stProductUnitCode = "" + dr["ProductUnitCode"].ToString(); if (!string.IsNullOrEmpty(dr["MatrixDescription"].ToString())) stProductCode += "-" + dr["MatrixDescription"].ToString(); decimal decQuantity = Convert.ToDecimal(dr["Quantity"].ToString().Replace(" - DEMO", "").Trim()); decimal decPrice = Convert.ToDecimal(dr["Price"]); decimal decDiscount = Convert.ToDecimal(dr["Discount"]); decimal decAmount = Convert.ToDecimal(dr["Amount"]); decimal decVAT = Convert.ToDecimal(dr["VAT"]); decimal decEVAT = Convert.ToDecimal(dr["EVAT"]); decimal decPromoApplied = Convert.ToDecimal(dr["PromoApplied"]); string stDiscountCode = "" + dr["DiscountCode"].ToString(); DiscountTypes ItemDiscountType = (DiscountTypes)Enum.Parse(typeof(DiscountTypes), dr["ItemDiscountType"].ToString()); PrintItem(stItemNo, stProductCode, stProductUnitCode, decQuantity, decPrice, decDiscount, decPromoApplied, decAmount, decVAT, decEVAT, stDiscountCode, ItemDiscountType); } else if (dr["Quantity"].ToString() != "VOID") { string stItemNo = "" + dr["ItemNo"].ToString(); string stProductCode = "" + dr["ProductCode"].ToString(); if (!string.IsNullOrEmpty(dr["MatrixDescription"].ToString())) stProductCode += "-" + dr["MatrixDescription"].ToString(); string stProductUnitCode = "" + dr["ProductUnitCode"].ToString(); decimal decQuantity = Convert.ToDecimal(dr["Quantity"]); decimal decPrice = Convert.ToDecimal(dr["Price"]); decimal decDiscount = Convert.ToDecimal(dr["Discount"]); decimal decAmount = Convert.ToDecimal(dr["Amount"]); decimal decVAT = Convert.ToDecimal(dr["VAT"]); decimal decEVAT = Convert.ToDecimal(dr["EVAT"]); decimal decPromoApplied = Convert.ToDecimal(dr["PromoApplied"]); string stDiscountCode = "" + dr["DiscountCode"].ToString(); DiscountTypes ItemDiscountType = (DiscountTypes)Enum.Parse(typeof(DiscountTypes), dr["ItemDiscountType"].ToString()); PrintItem(stItemNo, stProductCode, stProductUnitCode, decQuantity, decPrice, decDiscount, decPromoApplied, decAmount, decVAT, decEVAT, stDiscountCode, ItemDiscountType); } } PrintReportFooterSection(true, TransactionStatus.Closed, mclsSalesTransactionDetails.ItemSold, mclsSalesTransactionDetails.QuantitySold, mclsSalesTransactionDetails.SubTotal, mclsSalesTransactionDetails.Discount, mclsSalesTransactionDetails.Charge, 0, 0, 0, 0, 0, 0, 0, 0, 0, null, null, null, null); mboIsItemHeaderPrinted = false; mclsTerminalDetails.AutoPrint = oldCONFIG_AutoPrint; } }
public DialogResult GetWriteAccessAndLogin(Int64 UID, AccessTypes AccessType, string OverridingHeader = "") { DialogResult loginresult = GetWriteAccess(mclsSalesTransactionDetails.CashierID, AccessType); if (loginresult == DialogResult.None) { string strHeader = OverridingHeader; if (string.IsNullOrEmpty(strHeader)) { switch (AccessType) { case AccessTypes.PrintTransactionHeader: strHeader = "Print Transaction Header"; break; case AccessTypes.ChangeQuantity: strHeader = "Change Quantity"; break; case AccessTypes.ChangePrice: strHeader = "Change Price"; break; case AccessTypes.ReturnItem: strHeader = "Return Item Access"; break; case AccessTypes.ApplyItemDiscount: strHeader = "Apply Item Discount"; break; case AccessTypes.Contacts: strHeader = "Update customer information"; break; case AccessTypes.SuspendTransaction: strHeader = "Suspend Transaction No. " + mclsSalesTransactionDetails.TransactionNo; break; case AccessTypes.ResumeTransaction: strHeader = "Resume Suspended Transaction"; break; case AccessTypes.ResumeSuspendedOpenTransaction: strHeader = "Resume Suspended Open Transaction"; break; case AccessTypes.VoidTransaction: strHeader = "Void Transaction No. " + mclsSalesTransactionDetails.TransactionNo; break; case AccessTypes.Withhold: strHeader = "WithHold Amount"; break; case AccessTypes.Disburse: strHeader = "Disburse Amount"; break; case AccessTypes.PaidOut: strHeader = "Paid-Out Amount"; break; case AccessTypes.MallForwarder: strHeader = "Mall Data Forwarder"; break; case AccessTypes.VoidItem: strHeader = "Void Item"; break; case AccessTypes.CashCount: strHeader = "Issue Cash Count"; break; case AccessTypes.EnterFloat: strHeader = "Enter Float or Beginning Balance"; break; case AccessTypes.InitializeZRead: strHeader = "Initialize Z-Read"; break; case AccessTypes.CreateTransaction: strHeader = "Create Transaction"; break; case AccessTypes.CloseTransaction: strHeader = "Close Transaction"; break; case AccessTypes.ReleaseItems: strHeader = "Release Items"; break; case AccessTypes.LogoutFE: strHeader = "Logout"; break; case AccessTypes.ApplyTransDiscount: strHeader = "Apply Transaction Discount"; break; case AccessTypes.ChargeType: strHeader = "Apply Transaction Charge"; break; case AccessTypes.OpenDrawer: strHeader = "Open Drawer"; break; case AccessTypes.CreditPayment: strHeader = "Enter Credit Payment"; break; case AccessTypes.RefundTransaction: strHeader = "Refund Transaction"; break; case AccessTypes.RewardCardIssuance: strHeader = "Issue new Reward Card"; break; case AccessTypes.RewardCardChange: strHeader = "Reward Card Replacement"; break; case AccessTypes.CreditCardIssuance: strHeader = "Issue new Credit Card"; break; case AccessTypes.CreditCardChange: strHeader = "Credit Card Replacement"; break; case AccessTypes.PackUnpackTransaction: strHeader = "Pack/Unpack Transaction Access Validation"; break; case AccessTypes.ReprintTransaction: strHeader = "Reprint Transaction Access Validation"; break; case AccessTypes.PrintZRead: strHeader = "Print ZRead Access Validation"; break; case AccessTypes.PrintXRead: strHeader = "Print XRead Access Validation"; break; case AccessTypes.PrintHourlyReport: strHeader = "Print Hourly Report Access Validation"; break; case AccessTypes.PrintGroupReport: strHeader = "Print Group/Dept. Report Access Validation"; break; case AccessTypes.PrintPLUReport: strHeader = "Print PLU Report Access Validation"; break; case AccessTypes.PrintElectronicJournal: strHeader = "Print EJournal Report Access Validation"; break; default: strHeader = AccessType.ToString(); break; } } LogInWnd login = new LogInWnd(); login.AccessType = AccessType; login.Header = strHeader; login.TerminalDetails = mclsTerminalDetails; login.ShowDialog(this); loginresult = login.Result; AccessUserDetails clsAccessUserDetails = login.AccessUserDetails; login.Close(); login.Dispose(); if (loginresult != System.Windows.Forms.DialogResult.OK) loginresult = System.Windows.Forms.DialogResult.Cancel; else { // 06Jun2015 : do an override event log if (UID != clsAccessUserDetails.UID) { clsEvent.AddEventLn("[Override: " + AccessType.ToString("") + "] " + clsAccessUserDetails.Name + ": " + strHeader, true); } } } return loginresult; }
public void DoLogin() { try { LogInWnd login = new LogInWnd(); login.AccessType = AccessTypes.LoginFE; login.Header = "Enter user name and password to login."; login.TerminalDetails = mclsTerminalDetails; login.ShowDialog(this); DialogResult loginResult = login.Result; Int64 UserID = login.UserID; DialogResult loginresult = login.Result; login.Close(); login.Dispose(); if (loginresult == DialogResult.OK) { clsEvent.AddEventLn("UID: [" + UserID.ToString() + "] successfully logged-in.", true); clsEvent.AddEventLn("Checking if beggining balance already initialized.", true); // check if already initialize beginning balance. if (!IsBeginningBalanceInitialized(UserID)) { clsEvent.AddEventLn("Not yet initialized and cancelled."); return; } clsEvent.AddEventLn("Done. Balance is already initialized.", true); Cursor.Current = Cursors.WaitCursor; // ZRead and Beginning balance is already initialize // Process Transaction. lblPress.Tag = DateTime.Now.ToString("MMM/dd/yyyy hh:mm:ss tt"); CashierLogsDetails clsLogDetails = new CashierLogsDetails(); clsLogDetails.CashierID = UserID; clsLogDetails.LoginDate = Convert.ToDateTime(lblPress.Tag.ToString()); clsLogDetails.BranchID = mclsTerminalDetails.BranchID; clsLogDetails.TerminalNo = mclsTerminalDetails.TerminalNo; clsLogDetails.IPAddress = System.Net.Dns.GetHostName(); clsLogDetails.LogoutDate = clsLogDetails.LoginDate; clsLogDetails.Status = CashierLogStatus.LoggedIn; CashierLogs clsCashierLogs = new CashierLogs(mConnection, mTransaction); mConnection = clsCashierLogs.Connection; mTransaction = clsCashierLogs.Transaction; lblCashierName.Tag = clsCashierLogs.Insert(clsLogDetails).ToString(); this.UnLock(UserID); this.LoadOptions(); // need to do this to reload the defaults this.InitializeTransaction(UserID, false); clsCashierLogs.CommitAndDispose(); txtBarCode.Focus(); InsertAuditLog(AccessTypes.LoginFE, "System login at terminal no. " + mclsTerminalDetails.TerminalNo + " @ Branch: " + mclsTerminalDetails.BranchDetails.BranchCode); clsEvent.AddEventLn("System is now ready for transaction. Current user: "******"ERROR!!! System login: TRACE: "); Cursor.Current = Cursors.Default; throw ex; } }
public DialogResult GetWriteAccessAndLogin(Int64 UID, AccessTypes AccessType, string OverridingHeader = "") { DialogResult loginresult = GetWriteAccess(CashierID, AccessType); if (loginresult == DialogResult.None) { string strHeader = OverridingHeader; if (string.IsNullOrEmpty(strHeader)) { switch (AccessType) { case AccessTypes.PrintTransactionHeader: strHeader = "Print Transaction Header"; break; case AccessTypes.ChangeQuantity: strHeader = "Change Quantity"; break; case AccessTypes.ChangePrice: strHeader = "Change Price"; break; case AccessTypes.ReturnItem: strHeader = "Return Item Access"; break; case AccessTypes.ApplyItemDiscount: strHeader = "Apply Item Discount"; break; case AccessTypes.Contacts: strHeader = "Update customer information"; break; case AccessTypes.SuspendTransaction: strHeader = "Suspend Transaction No. "; break; case AccessTypes.ResumeTransaction: strHeader = "Resume Suspended Transaction"; break; case AccessTypes.ResumeSuspendedOpenTransaction: strHeader = "Resume Suspended Open Transaction"; break; case AccessTypes.VoidTransaction: strHeader = "Void Transaction No. "; break; case AccessTypes.Withhold: strHeader = "WithHold Amount"; break; case AccessTypes.Disburse: strHeader = "Disburse Amount"; break; case AccessTypes.PaidOut: strHeader = "Paid-Out Amount"; break; case AccessTypes.MallForwarder: strHeader = "Mall Data Forwarder"; break; case AccessTypes.VoidItem: strHeader = "Void Item"; break; case AccessTypes.CashCount: strHeader = "Issue Cash Count"; break; case AccessTypes.EnterFloat: strHeader = "Enter Float or Beginning Balance"; break; case AccessTypes.InitializeZRead: strHeader = "Initialize Z-Read"; break; case AccessTypes.CreateTransaction: strHeader = "Create Transaction"; break; case AccessTypes.CloseTransaction: strHeader = "Close Transaction"; break; case AccessTypes.ReleaseItems: strHeader = "Release Items"; break; case AccessTypes.LogoutFE: strHeader = "Logout"; break; case AccessTypes.ApplyTransDiscount: strHeader = "Apply Transaction Discount"; break; case AccessTypes.ChargeType: strHeader = "Apply Transaction Charge"; break; case AccessTypes.OpenDrawer: strHeader = "Open Drawer"; break; case AccessTypes.CreditPayment: strHeader = "Enter Credit Payment"; break; case AccessTypes.RefundTransaction: strHeader = "Refund Transaction"; break; case AccessTypes.RewardCardIssuance: strHeader = "Issue new Reward Card"; break; case AccessTypes.RewardCardChange: strHeader = "Reward Card Replacement"; break; case AccessTypes.CreditCardIssuance: strHeader = "Issue new Credit Card"; break; case AccessTypes.CreditCardChange: strHeader = "Credit Card Replacement"; break; case AccessTypes.PackUnpackTransaction: strHeader = "Pack/Unpack Transaction Access Validation"; break; case AccessTypes.ReprintTransaction: strHeader = "Reprint Transaction Access Validation"; break; case AccessTypes.PrintZRead: strHeader = "Print ZRead Access Validation"; break; case AccessTypes.PrintXRead: strHeader = "Print XRead Access Validation"; break; case AccessTypes.PrintHourlyReport: strHeader = "Print Hourly Report Access Validation"; break; case AccessTypes.PrintGroupReport: strHeader = "Print Group/Dept. Report Access Validation"; break; case AccessTypes.PrintPLUReport: strHeader = "Print PLU Report Access Validation"; break; case AccessTypes.PrintElectronicJournal: strHeader = "Print EJournal Report Access Validation"; break; default: strHeader = AccessType.ToString(); break; } } LogInWnd login = new LogInWnd(); login.AccessType = AccessType; login.Header = strHeader; login.TerminalDetails = mclsTerminalDetails; login.ShowDialog(this); loginresult = login.Result; login.Close(); login.Dispose(); if (loginresult != System.Windows.Forms.DialogResult.OK) { loginresult = System.Windows.Forms.DialogResult.Cancel; } } return(loginresult); }