Quintiq file version 2.0
|
#parent: #root
|
Method DeleteObsoletePeriodAndCleanObsoletePeriodTasks
|
{
|
Description: 'Delete obsolete periods.'
|
TextBody:
|
[*
|
// Delete all useless periods
|
trash := selectset( this, Period_MP, period, period.IsDeleted()
|
or( period.IsSystemCreated()
|
and not period.IsBase()
|
and not period.IsGapPlanning() ) );
|
Period_MP::Delete( trash );
|
|
isupdateforshelflifeoptimizer := this.GetIsPeriodUpdateForShelfLifeOptimizer();
|
if( not isupdateforshelflifeoptimizer )
|
{
|
// Delete period tasks that are no longer in the planning periods
|
traverse( this, Unit.UnitPeriod, unitperiod )
|
{
|
if( not unitperiod.IsPlanning() )
|
{
|
unitperiod.DeletePeriodTaskOperations();
|
}
|
}
|
|
// Delete obsolete trips
|
this.DeleteObsoleteTrips();
|
|
// Synchronize with existing feedback to re-create valid period task / trip
|
this.InitializeFeedbackAfterImport();
|
}
|
*]
|
}
|