Quintiq file version 2.0
|
#parent: #root
|
Method OnDatasetConstructed
|
{
|
Description:
|
[*
|
Migration method when loading datasets with a`LibOpt_IteratorUntil` that was created in a previous version of LibOpt.
|
This method will be removed in the next-next minor release (it needsto exist only in the iterator-refactoring transition model release).
|
*]
|
TextBody:
|
[*
|
// mbr23 Jun-26-2020 (created)
|
if( not isnull( this.Next() ) )
|
{
|
// we're an old dataset. Let's upgrade to the new Iterator structure:
|
next_destination := this.Next().Destination();
|
next_linkid := this.Next().InternalIdentfier();
|
|
newlink := construct( LibOpt_LinkIteratorSingle,
|
Destination := next_destination,
|
InternalIdentfier := next_linkid );
|
// steal the task transporter from the old link:
|
newlink.TaskTransporter( relmove, this.Next().TaskTransporter() );
|
|
// rewire all UIGraphArcs to the new link:
|
traverse( this.Next(), UIGraphArc, arc )
|
{
|
arc.Link( relset, newlink );
|
}
|
|
this.Next().Delete();
|
this.NextByIteratorParent( relset, &newlink );
|
}
|
*]
|
InterfaceProperties { Accessibility: 'Module' }
|
}
|