public void Confirm(int UserId) { foreach (DataRowView Cursor in PreviousStock.DefaultView) { int ID = Convert.ToInt32(Cursor["ID"]); ReceiveDoc.SetAverageCostByReceiveDoc(ID, NewUnitCost, UserId); ReceiveDoc.SetMarginByReceiveDoc(ID, Margin * 100, UserId); ReceiveDoc.SetSellingPriceByReceiveDoc(ID, NewSellingPrice, UserId); } }
public void RecordAverageCostAndSellingPrice(int userID) { MyGeneration.dOOdads.TransactionMgr transaction = MyGeneration.dOOdads.TransactionMgr.ThreadTransactionMgr(); try { transaction.BeginTransaction(); DataTable ReceiveDocDetails; IList <CostElement> costElements = new List <CostElement>(); foreach (DataRowView drv in GRVSoundDetail.DefaultView as DataView) { double NewUnitCost, NewSellingPrice; if (drv["AverageCost"] != DBNull.Value && drv["SellingPrice"] != DBNull.Value) { CostElement costElement = new CostElement(); costElement.ItemID = Convert.ToInt32(drv["ItemID"]); costElement.ItemUnitID = Convert.ToInt32(drv["ItemUnitID"]); costElement.MovingAverageID = Convert.ToInt32(drv["MovingAverageID"]); costElement.ManufacturerID = Convert.ToInt32(drv["ManufacturerID"]); costElement.AverageCost = costElement.SellingPrice = Math.Round(Convert.ToDouble(drv["SellingPrice"]), Settings.NoOfDigitsAfterTheDecimalPoint); costElement.Margin = drv["Margin"] != DBNull.Value ? Convert.ToDouble(drv["Margin"]) : 0; ReceiveDocDetails = ReceiveDoc.GetRelatedReceiveForUnitCostAndSellingPrice(ReceiptID, costElement); foreach (DataRowView Cursor in ReceiveDocDetails.AsDataView()) { int ID = Convert.ToInt32(Cursor["ID"]); ReceiveDoc.SetAverageCostByReceiveDoc(ID, costElement.AverageCost, userID); ReceiveDoc.SetSellingPriceByReceiveDoc(ID, costElement.SellingPrice, userID); } costElements.Add(costElement); } } try { CostingService.SavePriceChange(costElements.AsEnumerable(), userID, ChangeMode.Recieve, ReceiptID.ToString()); } catch (Exception) { //Until Cost Tier Implementation } transaction.CommitTransaction(); } catch (Exception ex) { transaction.RollbackTransaction(); throw ex; } }
public void SaveCostCoefficient(int userID) { ReceiveDoc grvFullDetail = new ReceiveDoc(); grvFullDetail.FlushData(); grvFullDetail.LoadAllByReceiptID(GRV.ID); CostBuildUp.SaveChange(); while (!grvFullDetail.EOF) { //Insurance here is costCoefficient ReceiveDoc receivedoc = new ReceiveDoc(); receivedoc.LoadByPrimaryKey(grvFullDetail.ID); //Use Custom StoreProcedure for Costing receivedoc.Insurance = CostCoefficient; receivedoc.Save(); ReceiveDoc.SetUnitCostByReceiveDoc(grvFullDetail.ID, Math.Round(receivedoc.PricePerPack * CostCoefficient, 2), userID); ReceiveDoc.SetAverageCostByReceiveDoc(grvFullDetail.ID, Math.Round(receivedoc.PricePerPack * CostCoefficient, 2), userID); grvFullDetail.MoveNext(); } }