|
@@ -85,6 +85,11 @@ namespace Comal.Classes
|
|
|
[DoubleEditor(Editable = Editable.Disabled, Summary = Summary.Sum)]
|
|
|
[EditorSequence(10)]
|
|
|
public double Available { get; set; }
|
|
|
+
|
|
|
+ [Formula(typeof(StockHoldingAllocatedFormula))]
|
|
|
+ [DoubleEditor(Editable = Editable.Disabled, Summary = Summary.Sum)]
|
|
|
+ [EditorSequence(11)]
|
|
|
+ public double Allocated { get; set; }
|
|
|
|
|
|
[Aggregate(typeof(StockHoldingLastStocktake))]
|
|
|
[DateEditor(Editable = Editable.Disabled)]
|
|
@@ -118,6 +123,20 @@ namespace Comal.Classes
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ internal class StockHoldingAllocatedFormula : IFormula<StockHolding, double>
|
|
|
+ {
|
|
|
+ public Expression<Func<StockHolding, double>> Value => x => x.Qty;
|
|
|
+
|
|
|
+ public FormulaOperator Operator => FormulaOperator.Subtract;
|
|
|
+
|
|
|
+ public Expression<Func<StockHolding, double>>[] Modifiers => new Expression<Func<StockHolding, double>>[]
|
|
|
+ {
|
|
|
+ x => x.Available
|
|
|
+ };
|
|
|
+
|
|
|
+ public FormulaType Type => FormulaType.Virtual;
|
|
|
+ }
|
|
|
+
|
|
|
public static class StockHoldingExtensions
|
|
|
{
|
|
|
/// <summary>
|