private static decimal GetAmountFromPMHistory(RMDataSource ds, PMHistory hist) { //We always use the PTD amounts; depending on BalanceType we will expand our calculation to more periods (GetPeriodsToCalculate) switch (ds.AmountType.Value) { case BalanceType.Amount: case BalanceType.TurnoverAmount: return(hist.FinPTDAmount.Value); case BalanceType.Quantity: case BalanceType.TurnoverQuantity: return(hist.FinPTDQty.Value); case BalanceType.BudgetAmount: case BalanceType.BudgetPTDAmount: return(hist.PTDBudgetAmount.Value); case BalanceType.BudgetQuantity: case BalanceType.BudgetPTDQuantity: return(hist.PTDBudgetQty.Value); case BalanceType.RevisedAmount: case BalanceType.RevisedPTDAmount: return(hist.PTDRevisedAmount.Value); case BalanceType.RevisedQuantity: case BalanceType.RevisedPTDQuantity: return(hist.PTDRevisedQty.Value); default: System.Diagnostics.Debug.Assert(false, "Unknown amount type: " + ds.AmountType.Value); return(0); } }
private static void AggregatePMHistoryForDrilldown(PMHistory resulthist, PMHistory hist) { resulthist.ProjectID = hist.ProjectID; resulthist.ProjectTaskID = hist.ProjectTaskID; resulthist.AccountGroupID = hist.AccountGroupID; resulthist.InventoryID = hist.InventoryID; resulthist.PeriodID = hist.PeriodID; resulthist.BudgetQty = resulthist.BudgetQty.GetValueOrDefault() + hist.BudgetQty.GetValueOrDefault(); resulthist.BudgetAmount = resulthist.BudgetAmount.GetValueOrDefault() + hist.BudgetAmount.GetValueOrDefault(); resulthist.RevisedQty = resulthist.RevisedQty.GetValueOrDefault() + hist.RevisedQty.GetValueOrDefault(); resulthist.RevisedAmount = resulthist.RevisedAmount.GetValueOrDefault() + hist.RevisedAmount.GetValueOrDefault(); resulthist.FinPTDAmount = resulthist.FinPTDAmount.GetValueOrDefault() + hist.FinPTDAmount.GetValueOrDefault(); resulthist.FinYTDAmount = resulthist.FinYTDAmount.GetValueOrDefault() + hist.FinYTDAmount.GetValueOrDefault(); resulthist.FinPTDQty = resulthist.FinPTDQty.GetValueOrDefault() + hist.FinPTDQty.GetValueOrDefault(); resulthist.FinYTDQty = resulthist.FinYTDQty.GetValueOrDefault() + hist.FinYTDQty.GetValueOrDefault(); resulthist.TranPTDAmount = resulthist.TranPTDAmount.GetValueOrDefault() + hist.TranPTDAmount.GetValueOrDefault(); resulthist.TranYTDAmount = resulthist.TranYTDAmount.GetValueOrDefault() + hist.TranYTDAmount.GetValueOrDefault(); resulthist.TranPTDQty = resulthist.TranPTDQty.GetValueOrDefault() + hist.TranPTDQty.GetValueOrDefault(); resulthist.TranYTDQty = resulthist.TranYTDQty.GetValueOrDefault() + hist.TranYTDQty.GetValueOrDefault(); }