| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 | | Quintiq file version 2.0 |  | #parent: #root |  | Method GetKPIProcessMinimumQuantity ( |  |   Real epsilon |  | ) const declarative remote as Real |  | { |  |   Description: 'Return the penalty for not reaching minimum quantity.' |  |   TextBody: |  |   [* |  |     periods := selectset(  this, PeriodKPI, p, true, p.IsWithinLotSizeHorizon() );  |  |     value := sum( periods, Elements.UnitPeriod.PeriodTaskHasMinQuantity, ptr, |  |                   ptr.Process_MP().HasMinimumQuantity() |  |                   and ptr.QuantityToProcess() > epsilon * ptr.Operation().MinimumQuantity(),  |  |                   maxvalue( ptr.Process_MP().MinimumQuantity() - ptr.QuantityToProcess(), 0.0 ) |  |                   * ptr.Process_MP().AsProcess_MP().DefaultUOMConversionFactor() ); |  |     return value; |  |   *] |  | } | 
 |