public bool PrintOrderSlipComposition(long ProductID, string ProductCode, string ProductUnitCode, decimal Quantity, bool bolWillPrintProductComposition) { bool boRetValue = false; bool bolRetailPlusOSPrinter1ItemHeaderPrinted = false; bool bolRetailPlusOSPrinter2ItemHeaderPrinted = false; bool bolRetailPlusOSPrinter3ItemHeaderPrinted = false; bool bolRetailPlusOSPrinter4ItemHeaderPrinted = false; bool bolRetailPlusOSPrinter5ItemHeaderPrinted = false; Data.ProductComposition clsProductComposition = new Data.ProductComposition(mConnection, mTransaction); mConnection = clsProductComposition.Connection; mTransaction = clsProductComposition.Transaction; System.Data.DataTable dt = clsProductComposition.ListAsDataTable(ProductID); clsProductComposition.CommitAndDispose(); foreach (System.Data.DataRow dr in dt.Rows) { 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()); long lProductID = Convert.ToInt64(dr["ProductID"]); string stProductCode = "" + dr["ProductCode"].ToString(); string stProductUnitCode = "" + dr["UnitCode"].ToString(); decimal decQuantity = Convert.ToDecimal(dr["Quantity"]); string strItemRemarks = "" + dr["ItemRemarks"].ToString(); if (orderSlipPrinter1 && !bolRetailPlusOSPrinter1ItemHeaderPrinted) { bolRetailPlusOSPrinter1ItemHeaderPrinted = true; PrintItemToOSPrinter(ProductCode, ProductUnitCode, Quantity, AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter1, bolWillPrintProductComposition, strItemRemarks); } if (orderSlipPrinter2 && !bolRetailPlusOSPrinter2ItemHeaderPrinted) { bolRetailPlusOSPrinter2ItemHeaderPrinted = true; PrintItemToOSPrinter(ProductCode, ProductUnitCode, Quantity, AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter2, bolWillPrintProductComposition, strItemRemarks); } if (orderSlipPrinter3 && !bolRetailPlusOSPrinter3ItemHeaderPrinted) { bolRetailPlusOSPrinter3ItemHeaderPrinted = true; PrintItemToOSPrinter(ProductCode, ProductUnitCode, Quantity, AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter3, bolWillPrintProductComposition, strItemRemarks); } if (orderSlipPrinter4 && !bolRetailPlusOSPrinter4ItemHeaderPrinted) { bolRetailPlusOSPrinter4ItemHeaderPrinted = true; PrintItemToOSPrinter(ProductCode, ProductUnitCode, Quantity, AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter4, bolWillPrintProductComposition, strItemRemarks); } if (orderSlipPrinter5 && !bolRetailPlusOSPrinter5ItemHeaderPrinted) { bolRetailPlusOSPrinter5ItemHeaderPrinted = true; PrintItemToOSPrinter(ProductCode, ProductUnitCode, Quantity, AceSoft.RetailPlus.OrderSlipPrinter.RetailPlusOSPrinter5, bolWillPrintProductComposition, strItemRemarks); } if (!PrintOrderSlipComposition(lProductID, stProductCode, stProductUnitCode, decQuantity, bolWillPrintProductComposition)) { // if there are no product composition // print the product only if (orderSlipPrinter1) { PrintItemCompositionToOSPrinter(" " + stProductCode, stProductUnitCode, decQuantity, OrderSlipPrinter.RetailPlusOSPrinter1); } if (orderSlipPrinter2) { PrintItemCompositionToOSPrinter(" " + stProductCode, stProductUnitCode, decQuantity, OrderSlipPrinter.RetailPlusOSPrinter2); } if (orderSlipPrinter3) { PrintItemCompositionToOSPrinter(" " + stProductCode, stProductUnitCode, decQuantity, OrderSlipPrinter.RetailPlusOSPrinter3); } if (orderSlipPrinter4) { PrintItemCompositionToOSPrinter(" " + stProductCode, stProductUnitCode, decQuantity, OrderSlipPrinter.RetailPlusOSPrinter4); } if (orderSlipPrinter5) { PrintItemCompositionToOSPrinter(" " + stProductCode, stProductUnitCode, decQuantity, OrderSlipPrinter.RetailPlusOSPrinter5); } } boRetValue = true; } return boRetValue; }
public bool PrintOrderSlipCountCompositionHeader(long ProductID, int iRetailPlusOSPrinter1Ctr, int iRetailPlusOSPrinter2Ctr, int iRetailPlusOSPrinter3Ctr, int iRetailPlusOSPrinter4Ctr, int iRetailPlusOSPrinter5Ctr, out int RetailPlusOSPrinter1Ctr, out int RetailPlusOSPrinter2Ctr, out int RetailPlusOSPrinter3Ctr, out int RetailPlusOSPrinter4Ctr, out int RetailPlusOSPrinter5Ctr) { // returns // false if no product composition // true if with product composition bool boRetValue = false; Data.ProductComposition clsProductComposition = new Data.ProductComposition(mConnection, mTransaction); mConnection = clsProductComposition.Connection; mTransaction = clsProductComposition.Transaction; System.Data.DataTable dt = clsProductComposition.ListAsDataTable(ProductID); foreach (System.Data.DataRow dr in dt.Rows) { 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()); if (orderSlipPrinter1) { iRetailPlusOSPrinter1Ctr++; } if (orderSlipPrinter2) { iRetailPlusOSPrinter2Ctr++; } if (orderSlipPrinter3) { iRetailPlusOSPrinter3Ctr++; } if (orderSlipPrinter4) { iRetailPlusOSPrinter4Ctr++; } if (orderSlipPrinter5) { iRetailPlusOSPrinter5Ctr++; } long lProductID = Convert.ToInt64(dr["ProductID"]); PrintOrderSlipCountCompositionHeader(lProductID, iRetailPlusOSPrinter1Ctr, iRetailPlusOSPrinter2Ctr, iRetailPlusOSPrinter3Ctr, iRetailPlusOSPrinter4Ctr, iRetailPlusOSPrinter5Ctr, out RetailPlusOSPrinter1Ctr, out RetailPlusOSPrinter2Ctr, out RetailPlusOSPrinter3Ctr, out RetailPlusOSPrinter4Ctr, out RetailPlusOSPrinter5Ctr); boRetValue = true; } RetailPlusOSPrinter1Ctr = iRetailPlusOSPrinter1Ctr; RetailPlusOSPrinter2Ctr = iRetailPlusOSPrinter2Ctr; RetailPlusOSPrinter3Ctr = iRetailPlusOSPrinter3Ctr; RetailPlusOSPrinter4Ctr = iRetailPlusOSPrinter4Ctr; RetailPlusOSPrinter5Ctr = iRetailPlusOSPrinter5Ctr; return boRetValue; }