Quintiq file version 2.0
|
#parent: #root
|
StaticMethod Synchronize (
|
FeedbackPeriodTaskOperations feedbackptos
|
) as owning PeriodTaskOperations
|
{
|
Description: 'Create missing period tasks for feedback.'
|
TextBody:
|
[*
|
ptos := construct( PeriodTaskOperations );
|
|
if( feedbackptos.Size() > 0 )
|
{
|
// Propagate relations that are needed for feedbacks.
|
Transaction::Transaction().Propagate( relation( Feedback, UnitPeriod ) );
|
// Propagate relations that are needed for feedbacks.
|
Transaction::Transaction().Propagate( relation( FeedbackPeriodTaskOperation, Operation ) );
|
// Propagate relations that are needed for feedbacks.
|
Transaction::Transaction().Propagate( relation( FeedbackPeriodTaskOperation, PeriodTaskOperation ) );
|
|
traverse( feedbackptos, Elements, feedback,
|
feedback.GetIsValidFeedback() )
|
{
|
pt := feedback.PeriodTaskOperation();
|
|
if( isnull( pt ) )
|
{
|
pt := PeriodTaskOperation::CreateValidPeriodTask( feedback.Operation(),
|
feedback.UnitPeriod(),
|
0.0,
|
false );
|
}
|
if( not isnull( pt ) )
|
{
|
ptos.Add( pt );
|
}
|
}
|
}
|
|
return &ptos;
|
*]
|
}
|