| Quintiq file version 2.0 | 
| #parent: #root | 
| Method NeedsExtensionSubPeriod () declarative remote as Boolean | 
| { | 
|   TextBody: | 
|   [* | 
|     lastelement := this.LastCombiElement();       | 
|     hasminduration := this.HasminDurationCombi(); | 
|     hasmaxduration := this.HasMaxDurationCombi(); | 
|     hasfixedduration := this.HasFixedStartAndDuration(); | 
|      | 
|     result := this.CanBeExtended() | 
|               and lastelement.IsFirstElementTypeInCombi() | 
|               and ( hasminduration or hasmaxduration or hasfixedduration ) | 
|               and   | 
|               ( ( hasminduration and not hasmaxduration and this.MinEndTimeFirstElement() > lastelement.OptCampaignUnitSubPeriod().EndTime() ) | 
|                 or | 
|                 ( hasmaxduration and this.MaxEndTimeFirstElement() > lastelement.OptCampaignUnitSubPeriod().EndTime() )  | 
|                 or | 
|                 ( hasfixedduration and this.MinEndTimeFirstElement() > lastelement.OptCampaignUnitSubPeriod().EndTime() ) | 
|               ) | 
|               and not isnull( lastelement.OptCampaignUnitSubPeriod().NextSubPeriod() ); | 
|                  | 
|     return result; | 
|   *] | 
| } |