1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
| Quintiq file version 2.0
| #parent: #root
| StaticMethod Update (
| Operations operations,
| Unit owner,
| String id,
| String name,
| Boolean isbatcheditleadtime,
| Duration leadtime,
| Boolean isbatcheditstandarddeviationleadtime,
| Duration standarddeviationleadtime,
| Boolean isbatcheditthroughput,
| Real throughput,
| Boolean isbatchedithasuserlotsize,
| Boolean hasuserlotsize,
| Real userminimumquantity,
| Boolean hasusermaximumquantity,
| Real usermaximumquantity,
| Real userlotsize,
| Boolean isbatcheditCo2,
| Real co2Emission
| )
| {
| Description: 'Batch update operations'
| TextBody:
| [*
| // Batch update the selected set of operations
| traverse( operations, Elements, operation )
| {
| // Use current operation's values if HasUserLotSize is not selected for batch editing
| if( not isbatchedithasuserlotsize )
| {
| hasuserlotsize := operation.HasUserLotSize();
| userminimumquantity := operation.UserMinimumQuantity();
| hasusermaximumquantity := operation.HasUserMaximumQuantity();
| usermaximumquantity := operation.UserMaximumQuantity();
| userlotsize := operation.UserLotSize();
| }
|
| // Update operation
| operation.Update( operation.Unit(),
| operation.ID(),
| operation.Name(),
| operation.RoutingStep(),
| ifexpr( isbatcheditleadtime, leadtime, operation.UserLeadTime() ),
| ifexpr( isbatcheditstandarddeviationleadtime, standarddeviationleadtime , operation.StandardDeviationLeadTimeOperation() ),
| ifexpr( isbatcheditthroughput, throughput, operation.Throughput() ),
| hasuserlotsize,
| userminimumquantity,
| hasusermaximumquantity,
| usermaximumquantity,
| userlotsize,
| ifexpr( isbatcheditCo2, co2Emission, operation.CO2Emission() ),
| false );
| }
| *]
| }
|
|