Quintiq file version 2.0
|
#parent: #root
|
Method RefreshScenarioStatus
|
{
|
Description: 'To refresh the scenario state when it is loaded.'
|
TextBody:
|
[*
|
// desmondt May-30-2014 (created)
|
|
editor := MDSEditor::Editor();
|
allInfos := editor.ObjectInfos();
|
|
traverse( this, ScenarioNode.astype( ScenarioMP ), scenario )
|
{
|
mdsInfo := select( allInfos, Elements, oInfo,
|
oInfo.MDSID().MDSKey() = scenario.DatasetMDSID() );
|
|
isdatasetexists := not isnull( mdsInfo );
|
|
scenario.SetScenarioLoadedStatus( isdatasetexists and mdsInfo.IsLoaded(),
|
false /*IsLoadingInProgress*/ ); // We will only enter this method during ScenarioManager::OnConstructed, MacroPlan::OnDestructed
|
// and through refresh button in the designer. We forcefully set scenario loading status to false
|
// during refresh as a temporary solution to refresh the loading state. The end game is the scenario manager
|
// will be revamped with reactive quill.
|
|
if( isdatasetexists )
|
{
|
scenario.State( mdsInfo.State() );
|
}
|
else
|
{
|
// We delete scenarios that are no longer binded to a dataset
|
scenario.Delete();
|
}
|
}
|
*]
|
}
|