Description: String;
Description: string;
Свойство Description определяет описание элемента цепочки расчета.
Для получения наименования элемента используйте свойство IMsCalculationChainEntry.Name.
Для выполнения примера в репозитории предполагается наличие контейнера моделирования с идентификатором «MS», содержащего метамодель с идентификатором «METAMODEL_CONVERT».
Добавьте ссылки на системные сборки: Metabase, Ms.
Sub UserProc;
Var
mb: IMetabase;
MsKey: Integer;
Meta: IMsMetaModel;
CalcChain: IMsCalculationChainEntries;
i: Integer;
Entry: IMsCalculationChainEntry;
Begin
mb := MetabaseClass.Active;
MsKey := mb.GetObjectKeyById("MS");
Meta := mb.ItemByIdNamespace("METAMODEL_CONVERT", MsKey).Edit As IMsMetaModel;
CalcChain := Meta.CalculationChain;
For i := 0 To CalcChain.Count - 1 Do
Entry := CalcChain.Item(i);
Entry.Description := Entry.Name + " (" + Entry.Key.ToString + ")";
Debug.WriteLine(Entry.Description);
End For;
(Meta As IMetabaseObject).Save;
End Sub UserProc;
В результате выполнения примера для всех элементов цепочки расчета метамодели будет сформировано описание, состоящее из имени и ключа элемента. Сформированные описания будут выведены в окно консоли.
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.
Imports Prognoz.Platform.Interop.Ms;
…
Public Shared Sub Main(Params: StartParams);
Var
mb: IMetabase;
MsKey: uinteger;
Meta: IMsMetaModel;
CalcChain: IMsCalculationChainEntries;
i: Integer;
Entry: IMsCalculationChainEntry;
Begin
mb := Params.Metabase;
MsKey := mb.GetObjectKeyById("MS");
Meta := mb.ItemByIdNamespace["METAMODEL_CONVERT", MsKey].Edit() As IMsMetaModel;
CalcChain := Meta.CalculationChain;
For i := 0 To CalcChain.Count - 1 Do
Entry := CalcChain.Item[i];
Entry.Description := Entry.Name + " (" + Entry.Key.ToString() + ")";
System.Diagnostics.Debug.WriteLine(Entry.Description);
End For;
(Meta As IMetabaseObject).Save();
End Sub;
См. также: