private void SetDataSource(ReportDocument Report) { Int64 iID = 0; try { if (Request.QueryString["task"].ToString().ToLower() == "reportfromposted" && Request.QueryString["retid"].ToString() != null) { iID = Convert.ToInt64(Request.QueryString["retid"].ToString()); } else { iID = Convert.ToInt64(Common.Decrypt(Request.QueryString["retid"].ToString(), Session.SessionID)); } lblReferrer.ToolTip = iID.ToString(); } catch { iID = long.Parse(lblReferrer.ToolTip); } ReportDataset rptds = new ReportDataset(); POReturns clsPOReturns = new POReturns(); System.Data.DataTable dt = clsPOReturns.ListAsDataTable(DebitMemoID: iID); POReturnItems clsPOReturnItems = new POReturnItems(clsPOReturns.Connection, clsPOReturns.Transaction); System.Data.DataTable dtitems = clsPOReturnItems.ListAsDataTable(iID); clsPOReturns.CommitAndDispose(); foreach(System.Data.DataRow dr in dt.Rows) { DataRow drNew = rptds.POReturns.NewRow(); foreach (DataColumn dc in rptds.POReturns.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.POReturns.Rows.Add(drNew); } foreach(System.Data.DataRow dr in dtitems.Rows) { DataRow drNew = rptds.POReturnItems.NewRow(); foreach (DataColumn dc in rptds.POReturnItems.Columns) drNew[dc] = dr[dc.ColumnName]; rptds.POReturnItems.Rows.Add(drNew); } Report.SetDataSource(rptds); SetParameters(Report); }
private void LoadItems() { DataClass clsDataClass = new DataClass(); POReturnItems clsPOReturnItems = new POReturnItems(); lstItem.DataSource = clsPOReturnItems.ListAsDataTable(Convert.ToInt64(lblDebitMemoID.Text), SortField: "DebitMemoItemID", SortOrder: SortOption.Ascending).DefaultView; lstItem.DataBind(); clsPOReturnItems.CommitAndDispose(); lstItemFixCssClass(); }
private void AddItemToInventory(long DebitMemoID) { POReturnDetails clsPOReturnDetails = Details(DebitMemoID); ERPConfig clsERPConfig = new ERPConfig(base.Connection, base.Transaction); ERPConfigDetails clsERPConfigDetails = clsERPConfig.Details(); POReturnItems clsPOReturnItems = new POReturnItems(base.Connection, base.Transaction); ProductUnit clsProductUnit = new ProductUnit(base.Connection, base.Transaction); Products clsProduct = new Products(base.Connection, base.Transaction); ProductVariationsMatrix clsProductVariationsMatrix = new ProductVariationsMatrix(base.Connection, base.Transaction); Inventory clsInventory = new Inventory(base.Connection, base.Transaction); //MySqlDataReader myReader = clsPOReturnItems.List(DebitMemoID, "DebitMemoItemID", SortOption.Ascending); System.Data.DataTable dt = clsPOReturnItems.ListAsDataTable(DebitMemoID); foreach (System.Data.DataRow dr in dt.Rows) { long lngProductID = Convert.ToInt64(dr["ProductID"]); // myReader.GetInt64("ProductID"); int intProductUnitID = Convert.ToInt16(dr["ProductUnitID"]); // myReader.GetInt16("ProductUnitID"); decimal decItemQuantity = Convert.ToDecimal(dr["Quantity"]); // myReader.GetDecimal("Quantity"); decimal decQuantity = clsProductUnit.GetBaseUnitValue(lngProductID, intProductUnitID, decItemQuantity); long lngVariationMatrixID = Convert.ToInt64(dr["VariationMatrixID"]); // myReader.GetInt64("VariationMatrixID"); string strMatrixDescription = dr["MatrixDescription"].ToString(); // "" + myReader["MatrixDescription"].ToString(); string strProductCode = dr["ProductCode"].ToString(); // "" + myReader["ProductCode"].ToString(); string strProductUnitCode = dr["ProductUnitCode"].ToString(); // "" + myReader["ProductUnitCode"].ToString(); decimal decUnitCost = Convert.ToDecimal(dr["UnitCost"]); // myReader.GetDecimal("UnitCost"); decimal decItemCost = Convert.ToDecimal(dr["Amount"]); // myReader.GetDecimal("Amount"); decimal decVAT = Convert.ToDecimal(dr["VAT"]); // myReader.GetDecimal("VAT"); /******************************************* * Subtract from Inventory * ****************************************/ // clsProduct.SubtractQuantity(ProductID, Quantity); // if (VariationMatrixID != 0) { clsProductVariationsMatrix.SubtractQuantity(VariationMatrixID, Quantity);} // July 26, 2011: change the above codes to the following clsProduct.SubtractQuantity(clsPOReturnDetails.BranchID, lngProductID, lngVariationMatrixID, decQuantity, Products.getPRODUCT_INVENTORY_MOVEMENT_VALUE(PRODUCT_INVENTORY_MOVEMENT.DEDUCT_PURCHASE_RETURN), DateTime.Now, clsPOReturnDetails.MemoNo, clsPOReturnDetails.PurchaserName); /******************************************* * Add to Inventory Analysis * ****************************************/ InventoryDetails clsInventoryDetails = new InventoryDetails(); clsInventoryDetails.PostingDateFrom = clsERPConfigDetails.PostingDateFrom; clsInventoryDetails.PostingDateTo = clsERPConfigDetails.PostingDateTo; clsInventoryDetails.PostingDate = clsPOReturnDetails.PostingDate; clsInventoryDetails.ReferenceNo = clsPOReturnDetails.MemoNo; clsInventoryDetails.ContactID = clsPOReturnDetails.SupplierID; clsInventoryDetails.ContactCode = clsPOReturnDetails.SupplierCode; clsInventoryDetails.ProductID = lngProductID; clsInventoryDetails.ProductCode = strProductCode; clsInventoryDetails.VariationMatrixID = lngVariationMatrixID; clsInventoryDetails.MatrixDescription = strMatrixDescription; clsInventoryDetails.PReturnQuantity = decQuantity; clsInventoryDetails.PReturnCost = decItemCost - decVAT; clsInventoryDetails.PReturnVAT = decItemCost; //Purchase Return with VAT clsInventory.Insert(clsInventoryDetails); } }
public void Cancel(long DebitMemoID, DateTime CancelledDate, string Remarks, long CancelledByID) { try { string SQL= "UPDATE tblPODebitMemo SET " + "CancelledDate = @CancelledDate, " + "CancelledRemarks = @CancelledRemarks, " + "CancelledByID = @CancelledByID, " + "POReturnStatus = @POReturnStatus " + "WHERE DebitMemoID = @DebitMemoID;"; MySqlCommand cmd = new MySqlCommand(); cmd.CommandType = System.Data.CommandType.Text; cmd.CommandText = SQL; MySqlParameter prmCancelledDate = new MySqlParameter("@CancelledDate",MySqlDbType.DateTime); prmCancelledDate.Value = CancelledDate.ToString("yyyy-MM-dd HH:mm:ss"); cmd.Parameters.Add(prmCancelledDate); MySqlParameter prmCancelledRemarks = new MySqlParameter("@CancelledRemarks",MySqlDbType.String); prmCancelledRemarks.Value = Remarks; cmd.Parameters.Add(prmCancelledRemarks); MySqlParameter prmCancelledByID = new MySqlParameter("@CancelledByID",MySqlDbType.Int64); prmCancelledByID.Value = CancelledByID; cmd.Parameters.Add(prmCancelledByID); MySqlParameter prmPOReturnStatus = new MySqlParameter("@POReturnStatus",MySqlDbType.Int16); prmPOReturnStatus.Value = POReturnStatus.Cancelled.ToString("d"); cmd.Parameters.Add(prmPOReturnStatus); MySqlParameter prmDebitMemoID = new MySqlParameter("@DebitMemoID",MySqlDbType.Int64); prmDebitMemoID.Value = DebitMemoID; cmd.Parameters.Add(prmDebitMemoID); base.ExecuteNonQuery(cmd); /******************************************* * Update the status of items * ****************************************/ POReturnItems clsPOReturnItems = new POReturnItems(base.Connection, base.Transaction); clsPOReturnItems.Cancel(DebitMemoID); } catch (Exception ex) { throw base.ThrowException(ex); } }
public void Post(long DebitMemoID, string SupplierDocNo, DateTime PostingDate) { try { string SQL= "UPDATE tblPODebitMemo SET " + "SupplierDocNo = @SupplierDocNo, " + "PostingDate = @PostingDate, " + "POReturnStatus = @POReturnStatus, " + "DebitMemoStatus = @DebitMemoStatus " + "WHERE DebitMemoID = @DebitMemoID;"; MySqlCommand cmd = new MySqlCommand(); cmd.CommandType = System.Data.CommandType.Text; cmd.CommandText = SQL; MySqlParameter prmSupplierDocNo = new MySqlParameter("@SupplierDocNo",MySqlDbType.String); prmSupplierDocNo.Value = SupplierDocNo; cmd.Parameters.Add(prmSupplierDocNo); MySqlParameter prmPostingDate = new MySqlParameter("@PostingDate",MySqlDbType.DateTime); prmPostingDate.Value = PostingDate.ToString("yyyy-MM-dd HH:mm:ss"); cmd.Parameters.Add(prmPostingDate); MySqlParameter prmPOReturnStatus = new MySqlParameter("@POReturnStatus",MySqlDbType.Int16); prmPOReturnStatus.Value = POReturnStatus.Posted.ToString("d"); cmd.Parameters.Add(prmPOReturnStatus); MySqlParameter prmDebitMemoStatus = new MySqlParameter("@DebitMemoStatus",MySqlDbType.Int16); prmDebitMemoStatus.Value = DebitMemoStatus.Posted.ToString("d"); cmd.Parameters.Add(prmDebitMemoStatus); MySqlParameter prmDebitMemoID = new MySqlParameter("@DebitMemoID",MySqlDbType.Int64); prmDebitMemoID.Value = DebitMemoID; cmd.Parameters.Add(prmDebitMemoID); base.ExecuteNonQuery(cmd); /******************************************* * Update the status of items * ****************************************/ POReturnItems clsPOReturnItems = new POReturnItems(base.Connection, base.Transaction); clsPOReturnItems.Post(DebitMemoID); /******************************************* * Update Vendor Account * ****************************************/ AddItemToInventory(DebitMemoID); } catch (Exception ex) { throw base.ThrowException(ex); } }
private void UpdateAccounts(long DebitMemoID) { try { POReturnDetails clsPOReturnDetails = Details(DebitMemoID); ChartOfAccounts clsChartOfAccount = new ChartOfAccounts(base.Connection, base.Transaction); // update ChartOfAccountIDAPTracking as credit clsChartOfAccount.UpdateCredit(clsPOReturnDetails.ChartOfAccountIDAPTracking, clsPOReturnDetails.SubTotal); // update Deposit & APContra clsChartOfAccount.UpdateDebit(clsPOReturnDetails.ChartOfAccountIDAPContra, clsPOReturnDetails.Discount); // update Freight & APTracking clsChartOfAccount.UpdateDebit(clsPOReturnDetails.ChartOfAccountIDAPTracking, clsPOReturnDetails.Freight); clsChartOfAccount.UpdateCredit(clsPOReturnDetails.ChartOfAccountIDAPFreight, clsPOReturnDetails.Freight); // update Deposit & APTracking clsChartOfAccount.UpdateDebit(clsPOReturnDetails.ChartOfAccountIDAPTracking, clsPOReturnDetails.Deposit); clsChartOfAccount.UpdateCredit(clsPOReturnDetails.ChartOfAccountIDAPVDeposit, clsPOReturnDetails.Deposit); POReturnItems clsPOReturnItems = new POReturnItems(base.Connection, base.Transaction); System.Data.DataTable dt = clsPOReturnItems.ListAsDataTable(DebitMemoID); foreach (System.Data.DataRow dr in dt.Rows) { int iChartOfAccountIDPurchase = Int16.Parse(dr["ChartOfAccountIDPurchase"].ToString()); int iChartOfAccountIDTaxPurchase = Int16.Parse(dr["ChartOfAccountIDTaxPurchase"].ToString()); decimal decVAT = decimal.Parse(dr["VAT"].ToString()); decimal decVATABLEAmount = decimal.Parse(dr["Amount"].ToString()) - decVAT; // update purchase as debit clsChartOfAccount.UpdateCredit(iChartOfAccountIDPurchase, decVATABLEAmount); // update tax as debit clsChartOfAccount.UpdateCredit(iChartOfAccountIDTaxPurchase, decVAT); } } catch (Exception ex) { throw base.ThrowException(ex); } }
private void UpdateItemReceiveStatus(long DebitMemoItemID, DebitMemoItemReceivedStatus clsDebitMemoItemReceivedStatus, decimal ReceivedQuantity) { POReturnItems clsPOReturnItems = new POReturnItems(); clsPOReturnItems.UpdateReceiveStatus(DebitMemoItemID, clsDebitMemoItemReceivedStatus, ReceivedQuantity); clsPOReturnItems.CommitAndDispose(); }
private void LoadItem(string stID) { POReturnItems clsPOReturnItems = new POReturnItems(); POReturnItemDetails clsPOReturnItemsDetails = clsPOReturnItems.Details(Convert.ToInt64(stID)); clsPOReturnItems.CommitAndDispose(); cboProductCode.Items.Clear(); cboVariation.Items.Clear(); cboProductUnit.Items.Clear(); txtProductCode.Text = clsPOReturnItemsDetails.BarCode; cmdProductCode_Click(null, null); cboProductCode.SelectedIndex = cboProductCode.Items.IndexOf(new ListItem(clsPOReturnItemsDetails.ProductCode, clsPOReturnItemsDetails.ProductID.ToString())); if (clsPOReturnItemsDetails.VariationMatrixID == 0) { cboVariation.Items.Add(new ListItem("No Variation", "0")); cboVariation.SelectedIndex = 0; } else { cboVariation.SelectedIndex = cboVariation.Items.IndexOf(new ListItem(clsPOReturnItemsDetails.MatrixDescription, clsPOReturnItemsDetails.VariationMatrixID.ToString())); } if (clsPOReturnItemsDetails.ProductUnitID == 0) { cboProductUnit.Items.Add(new ListItem("No Unit", "0")); cboProductUnit.SelectedIndex = 0; } else { cboProductUnit.SelectedIndex = cboProductUnit.Items.IndexOf(new ListItem(clsPOReturnItemsDetails.ProductUnitCode, clsPOReturnItemsDetails.ProductUnitID.ToString())); } txtQuantity.Text = clsPOReturnItemsDetails.Quantity.ToString("###0.##0"); txtPrice.Text = clsPOReturnItemsDetails.UnitCost.ToString("###0.##0"); txtDiscount.Text = clsPOReturnItemsDetails.DiscountApplied.ToString("###0.##0"); if (clsPOReturnItemsDetails.DiscountType == DiscountTypes.Percentage) chkInPercent.Checked = true; else { chkInPercent.Checked = false; } txtAmount.Text = clsPOReturnItemsDetails.Amount.ToString("###0.##0"); txtRemarks.Text = clsPOReturnItemsDetails.Remarks; lblPODebitMemoItemID.Text = stID; chkIsTaxable.Checked = clsPOReturnItemsDetails.IsVatable; ////Added Jan 1, 2010 4:20PM : For selling information //txtSellingQuantity.Text = "1"; //try //{ txtMargin.Text = decimal.Parse(Convert.ToString(((clsPOReturnItemsDetails.SellingPrice - clsPOReturnItemsDetails.UnitCost) / clsPOReturnItemsDetails.UnitCost) * 100)).ToString("###0.##0"); } //catch { txtMargin.Text = "0.00"; } //txtSellingPrice.Text = clsPOReturnItemsDetails.SellingPrice.ToString("###0.##0"); //txtVAT.Text = clsPOReturnItemsDetails.SellingVAT.ToString("###0.##0"); //txtEVAT.Text = clsPOReturnItemsDetails.SellingEVAT.ToString("###0.##0"); //txtLocalTax.Text = clsPOReturnItemsDetails.SellingLocalTax.ToString("###0.##0"); ////Added April 28, 2010 4:20PM : For selling information //txtOldSellingPrice.Text = clsPOReturnItemsDetails.OldSellingPrice.ToString("###0.##0"); //// Aug 9, 2011 : Lemu //// For Required Inventory Days //txtRID.Text = clsPOReturnItemsDetails.RID.ToString(); txtProductCode.Focus(); ShowCommandButtons(true); }
private void UpdateItem() { if (isChkListSingle() == true) { string stID = GetFirstID(); if (stID!=null) { POReturnItems clsPOReturnItems = new POReturnItems(); POReturnItemDetails clsPOReturnItemDetails = clsPOReturnItems.Details(Convert.ToInt64(stID)); clsPOReturnItems.CommitAndDispose(); cboProductCode.Items.Clear(); cboVariation.Items.Clear(); cboProductUnit.Items.Clear(); cboProductCode.Items.Add(new ListItem(clsPOReturnItemDetails.ProductCode, clsPOReturnItemDetails.ProductID.ToString())); cboProductCode.SelectedIndex = 0; if (clsPOReturnItemDetails.VariationMatrixID == 0) { cboVariation.Items.Add(new ListItem("No Variation", "0")); } else { cboVariation.Items.Add(new ListItem(clsPOReturnItemDetails.MatrixDescription, clsPOReturnItemDetails.VariationMatrixID.ToString())); } cboVariation.SelectedIndex = 0; cboProductUnit.Items.Add(new ListItem(clsPOReturnItemDetails.ProductUnitCode, clsPOReturnItemDetails.ProductUnitID.ToString())); cboProductUnit.SelectedIndex = 0; txtQuantity.Text = clsPOReturnItemDetails.Quantity.ToString("###0.#0"); txtPrice.Text = clsPOReturnItemDetails.UnitCost.ToString("###0.#0"); txtDiscount.Text = clsPOReturnItemDetails.Discount.ToString("###0.#0"); if (clsPOReturnItemDetails.DiscountType == DiscountTypes.Percentage) chkInPercent.Checked = true; else { chkInPercent.Checked = false; } txtAmount.Text = clsPOReturnItemDetails.Amount.ToString("###0.#0"); txtRemarks.Text = clsPOReturnItemDetails.Remarks; lblPODebitMemoItemID.Text = stID; chkIsTaxable.Checked = clsPOReturnItemDetails.IsVatable; } } else { string stScript = "<Script>"; stScript += "window.alert('Cannot update more than one record. Please select at least one record to update.')"; stScript += "</Script>"; Response.Write(stScript); } }
private bool DeleteItems() { bool boRetValue = false; string stIDs = ""; foreach(DataListItem item in lstItem.Items) { HtmlInputCheckBox chkList = (HtmlInputCheckBox) item.FindControl("chkList"); if (chkList!=null) { if (chkList.Checked == true) { stIDs += chkList.Value + ","; boRetValue = true; } } } if (boRetValue) { POReturnItems clsPOReturnItems = new POReturnItems(); clsPOReturnItems.Delete( stIDs.Substring(0,stIDs.Length-1)); POReturns clsPOReturns = new POReturns(clsPOReturnItems.Connection, clsPOReturnItems.Transaction); clsPOReturns.SynchronizeAmount(Convert.ToInt64(lblDebitMemoID.Text)); POReturnDetails clsPOReturnDetails = clsPOReturns.Details(Convert.ToInt64(lblDebitMemoID.Text)); clsPOReturnItems.CommitAndDispose(); UpdateFooter(clsPOReturnDetails); } return boRetValue; }
private void SaveRecord() { POReturnItemDetails clsDetails = new POReturnItemDetails(); Products clsProducts = new Products(); ProductDetails clsProductDetails = clsProducts.Details1(Constants.BRANCH_ID_MAIN, Convert.ToInt64(cboProductCode.SelectedItem.Value)); Terminal clsTerminal = new Terminal(clsProducts.Connection, clsProducts.Transaction); TerminalDetails clsTerminalDetails = clsTerminal.Details(Int32.Parse(Session["BranchID"].ToString()), Session["TerminalNo"].ToString()); clsProducts.CommitAndDispose(); clsDetails.DebitMemoID = Convert.ToInt64(lblDebitMemoID.Text); clsDetails.ProductID = Convert.ToInt64(cboProductCode.SelectedItem.Value); clsDetails.ProductCode = clsProductDetails.ProductCode; clsDetails.BarCode = clsProductDetails.BarCode; clsDetails.Description = clsProductDetails.ProductDesc; clsDetails.ProductUnitID = Convert.ToInt32(cboProductUnit.SelectedItem.Value); clsDetails.ProductUnitCode = cboProductUnit.SelectedItem.Text; clsDetails.Quantity = Convert.ToDecimal(txtQuantity.Text); clsDetails.UnitCost = Convert.ToDecimal(txtPrice.Text); clsDetails.Discount = getItemTotalDiscount(); clsDetails.DiscountApplied = Convert.ToDecimal(txtDiscount.Text); if (clsDetails.DiscountApplied == 0) { if (chkInPercent.Checked == true) clsDetails.DiscountType = DiscountTypes.Percentage; else clsDetails.DiscountType = DiscountTypes.FixedValue; } else { clsDetails.DiscountType = DiscountTypes.NotApplicable; } clsDetails.IsVatable = chkIsTaxable.Checked; clsDetails.Amount = ComputeItemAmount(); if (clsDetails.IsVatable) { clsDetails.VatableAmount = clsDetails.Amount; clsDetails.EVatableAmount = clsDetails.Amount; clsDetails.LocalTax = clsDetails.Amount; if (clsTerminalDetails.IsVATInclusive == false) { if (clsDetails.VatableAmount < clsDetails.Discount) clsDetails.VatableAmount = 0; if (clsDetails.EVatableAmount < clsDetails.Discount) clsDetails.EVatableAmount = 0; if (clsDetails.LocalTax < clsDetails.Discount) clsDetails.LocalTax = 0; } else { if (clsDetails.VatableAmount >= clsDetails.Discount) clsDetails.VatableAmount = (clsDetails.VatableAmount) / (1 + (clsTerminalDetails.VAT / 100)); else clsDetails.VatableAmount = 0; if (clsDetails.EVatableAmount >= clsDetails.Discount) clsDetails.EVatableAmount = (clsDetails.EVatableAmount) / (1 + (clsTerminalDetails.VAT / 100)); else clsDetails.EVatableAmount = 0; if (clsDetails.LocalTax >= clsDetails.Discount) clsDetails.LocalTax = (clsDetails.LocalTax) / (1 + (clsTerminalDetails.LocalTax / 100)); else clsDetails.LocalTax = 0; } clsDetails.VAT = clsDetails.VatableAmount * (clsTerminalDetails.VAT / 100); clsDetails.EVAT = clsDetails.EVatableAmount * (clsTerminalDetails.EVAT / 100); clsDetails.LocalTax = clsDetails.LocalTax * (clsTerminalDetails.LocalTax / 100); } else { clsDetails.VAT = 0; clsDetails.VatableAmount = 0; clsDetails.EVAT = 0; clsDetails.EVatableAmount = 0; clsDetails.LocalTax = 0; } clsDetails.isVATInclusive = clsTerminalDetails.IsVATInclusive; clsDetails.VariationMatrixID = Convert.ToInt64(cboVariation.SelectedItem.Value); if (clsDetails.VariationMatrixID != 0) clsDetails.MatrixDescription = cboVariation.SelectedItem.Text; clsDetails.ProductGroup = clsProductDetails.ProductGroupCode; clsDetails.ProductSubGroup = clsProductDetails.ProductSubGroupCode; clsDetails.Remarks = txtRemarks.Text; POReturnItems clsPOReturnItems = new POReturnItems(); if (lblPODebitMemoItemID.Text != "0") { clsDetails.DebitMemoItemID = Convert.ToInt64(lblPODebitMemoItemID.Text); clsPOReturnItems.Update(clsDetails); } else clsPOReturnItems.Insert(clsDetails); POReturnDetails clsPOReturnDetails = new POReturnDetails(); clsPOReturnDetails.DebitMemoID = clsDetails.DebitMemoID; clsPOReturnDetails.DiscountApplied = Convert.ToDecimal(txtPODebitMemoDiscountApplied.Text); clsPOReturnDetails.DiscountType = (DiscountTypes)Enum.Parse(typeof(DiscountTypes), cboPODebitMemoDiscountType.SelectedItem.Value); clsPOReturnDetails.Discount2Applied = Convert.ToDecimal(txtPODebitMemoDiscount2Applied.Text); clsPOReturnDetails.Discount2Type = (DiscountTypes)Enum.Parse(typeof(DiscountTypes), cboPODebitMemoDiscount2Type.SelectedItem.Value); clsPOReturnDetails.Discount3Applied = Convert.ToDecimal(txtPODebitMemoDiscount3Applied.Text); clsPOReturnDetails.Discount3Type = (DiscountTypes)Enum.Parse(typeof(DiscountTypes), cboPODebitMemoDiscount3Type.SelectedItem.Value); POReturns clsPOReturns = new POReturns(clsPOReturnItems.Connection, clsPOReturnItems.Transaction); clsPOReturns.UpdateDiscount(clsDetails.DebitMemoID, clsPOReturnDetails.DiscountApplied, clsPOReturnDetails.DiscountType, clsPOReturnDetails.Discount2Applied, clsPOReturnDetails.Discount2Type, clsPOReturnDetails.Discount3Applied, clsPOReturnDetails.Discount3Type); clsPOReturnDetails = clsPOReturns.Details(clsDetails.DebitMemoID); clsPOReturnItems.CommitAndDispose(); UpdateFooter(clsPOReturnDetails); }