| Quintiq file version 2.0 | 
| #parent: #root | 
| Method UpdateKBList () id:Method_FormKBManagement_UpdateKBList | 
| { | 
|   #keys: '[11660.0.86436524]' | 
|   Body: | 
|   [* | 
|     //Update KB list | 
|     editor := CKBEditor::Create(); | 
|      | 
|     kb := select( MacroPlan.MDSMacroPlan(), MDSKBs, kb, kb.Name().ToUpper() = ScenarioManager.CompanyKBName().ToUpper() ); | 
|     kbfullid := KBFullID::Create( kb.Domain(), kb.Name(), kb.Branch(), kb.Version(), kb.ChangeNr() ); | 
|      | 
|     infos := editor.GetKBStructure( kbfullid.KBID() ); | 
|      | 
|     strings := construct ( Strings ); | 
|      | 
|     traverse(infos, Elements.KBFullID, i ) | 
|     { | 
|       //not checking for not scenario.IsDeleted() because we still want to keep the kb | 
|       //until the scenario is actually deleted (by deamon) | 
|       nrOfScenarioUsing := counter(  ScenarioManager, | 
|                                     ScenarioNode.astype( Scenario ), | 
|                                     s, | 
|                                     s.KBName().ToUpper() = i.Name().ToUpper() | 
|                                     and s.KBBranch().ToUpper() = i.Branch().ToUpper() | 
|                                     and s.KBChangeNr() = i.ChangeNr() ); | 
|      | 
|      | 
|       string := i.Name() + | 
|                 ':' + | 
|                 [String] i.Branch() + | 
|                 ':' + | 
|                 [String] i.ChangeNr() + | 
|                 ':' + | 
|                 [String] nrOfScenarioUsing | 
|      | 
|       strings.Add( string ); | 
|      | 
|     } | 
|      | 
|     StringListKnowledgeBase.Strings( strings.ToString( ';' ) ); | 
|   *] | 
| } |