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