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
  | Quintiq file version 2.0 
 |  #parent: #root 
 |  Method GenerateCombis ( 
 |    DateTime start, 
 |    DateTime end, 
 |    Boolean includemultiperiodcombis 
 |  ) 
 |  { 
 |    TextBody: 
 |    [* 
 |      this.IncludeMultiperiodCombis( includemultiperiodcombis ); 
 |       
 |      this.PuzzleStart( start ) 
 |      this.PuzzleEnd( end ) 
 |       
 |      this.GenerateOptCampaignUnits(); 
 |       
 |      traverse( this, OptCampaignUnit, u ) 
 |      { 
 |        u.GenerateOptCampaignSubPeriods();   
 |       
 |        u.GenerateCombisforExistingCampaignPlan(); // this needs to be before the call to PreProcessCampaigns  
 |         
 |        u.PreProcessCampaigns() 
 |         
 |        traverse( u, OptCampaignUnitSubPeriod, sp ) 
 |        { 
 |          sp.GenerateCombis();    
 |        } 
 |      } 
 |       
 |      assert( counter(  this, OptCampaignUnit.OptCampaignUnitSubPeriod.OptCampaignCombi, combi, true, combi.OptCampaignCombiElement( relsize ) = 0 ) = 0,  
 |              'Campaign optimizer created ill-formed combis without having combi elements' ); 
 |    *] 
 |  } 
 |  
  |