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
  | Quintiq file version 2.0 
 |  #parent: #root 
 |  Method GenerateBenchmarkAddPTOLotsize ( 
 |    Real userlotsize, 
 |    Boolean setlotcost 
 |  ) 
 |  { 
 |    TextBody: 
 |    [* 
 |      index := 0;  
 |      traverse( this, Unit.Operation, operation, operation.ID() ~ 'Hot Mill' )  
 |      { 
 |        operation.HasUserLotSize( true );  
 |        operation.UserLotSize( 1000.0 ) 
 |        debuginfo( 'Set lot size for operation', operation.ID(), ' to ', operation.LotSize() );      
 |         
 |        if ( setlotcost )  
 |        { 
 |          sop := this.StartOfPlanning().Date(); 
 |          account := select( this, Account_MP, acc, acc.Name() ~ 'Operating', true ); 
 |          OperationCost::Create( 'mylotcost'+[String] index, operation, account, 'Lot', sop, 'Day', 1, 10.0, false );  
 |          index++;  
 |        } 
 |      } 
 |       
 |      traverse( this, Unit.Operation, operation, operation.ID() ~ 'Slitter' )  
 |      { 
 |        operation.HasUserLotSize( true );  
 |        operation.UserLotSize( 50.0 ) 
 |        debuginfo( 'Set lot size for operation', operation.ID(), ' to ', operation.LotSize() );      
 |         
 |        if ( setlotcost )  
 |        { 
 |          sop := this.StartOfPlanning().Date(); 
 |          account := select( this, Account_MP, acc, acc.Name() ~ 'Operating', true ); 
 |          OperationCost::Create( 'mylotcost'+[String] index, operation, account, 'Lot', sop, 'Day', 1, 10.0, false );  
 |          index++;  
 |        } 
 |      } 
 |    *] 
 |    InterfaceProperties { Accessibility: 'Module' } 
 |  } 
 |  
  |