lazhen
2024-08-23 c387abc9e569157fdd976b350ec4a3b78a9e87cb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Quintiq file version 2.0
#parent: #root
Method ExtendCombis
{
  TextBody:
  [*
    //////////////////////////////////////////////////////////////////////////////////////////////
    //Find the combis that need to be extended. Combis will be extended until 
    //they reach min/max duration or until a limit is reached that is set in global parameters
    //////////////////////////////////////////////////////////////////////////////////////////////
    combis := selectset( this, OptCampaignCombi, combi, combi.CanBeExtended() );
    while( combis.Size() > 0 )
    { 
      traverse( combis, Elements, combi )
      {
        combi.ExtendCombi();  
      }
    
      //CanBeExtended is a method so no need for propagation here
      combis := selectset( this, OptCampaignCombi, combi, not combi.IsCompleteCombi() and combi.CanBeExtended() );
    }
  *]
}