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;
| *]
| }
|
|