Копирование базы данных временных рядов.
Параметры команды передаются в свойстве Data. Для работы команды в данном свойстве необходимо указать следующее значение:
Тип значения | Описание |
IMetabaseObjectCopyInfo | Объект с параметрами копирования объекта репозитория «База данных временных рядов». |
Команда может применяться только баз данных временных рядов.
Для выполнения примера в репозитории должна присутствовать база данных временных рядов с идентификатором «FC». Создайте форму и разместите на ней кнопку с идентификатором «Button1». Подключите системные сборки «Metabase», «Cubes», «Ui».
Пример является обработчиком события OnClick для «Button1».
Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
MB: IMetabase;
Target: IUiCommandTarget;
Context: IUiCommandExecutionContext;
CInfo: IMetabaseObjectCopyInfo;
Begin
MB := MetabaseClass.Active;
CInfo := MB.CreateCopyInfo;
CInfo.Id := MB.GenerateId("FC_COPY");
CInfo.Name := "Копия базы данных временных рядов";
CInfo.WithData := True;
CInfo.Source := MB.ItemById("FC");
CInfo.Destination := MB.Root;
Target := WinApplication.Instance.GetPluginTarget("Cubes");
Context := Target.CreateExecutionContext;
Context.Data := CInfo;
Target.Execute("CopyRubricator", Context);
End Sub Button1OnClick;
При нажатии на кнопку будет выполнено копирование базы данных временных рядов вместе с данными.
Для выполнения примера в репозитории должна присутствовать база данных временных рядов с идентификатором «FC». Создайте форму .NET и разместите на ней кнопку с идентификатором «button1».
Пример является обработчиком события Click для «button1».
Imports Prognoz.Platform.Interop.Cubes;
Imports Prognoz.Platform.Interop.Ui;
…
Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
Var
MB: IMetabase;
Target: IUiCommandTarget;
Context: IUiCommandExecutionContext;
CInfo: IMetabaseObjectCopyInfo;
Wa: WinApplicationClassClass;
Begin
MB := Self.Metabase;
CInfo := MB.CreateCopyInfo();
CInfo.Id := MB.GenerateId("FC_COPY", 0);
CInfo.Name := "Копия базы данных временных рядов";
CInfo.WithData := True;
CInfo.Source := MB.ItemById["FC"];
CInfo.Destination := MB.Root;
Wa := New WinApplicationClassClass();
Target := Wa.Instance[Null].GetPluginTarget("Cubes");
Context := Target.CreateExecutionContext();
Context.Data := CInfo;
Target.Execute("CopyRubricator", Context, Null);
End Sub;
При нажатии на кнопку будет выполнено копирование базы данных временных рядов вместе с данными.
См. также: