CreateCopy(Laner: ILaner): IMetabaseObjectDescriptor;
Laner. Рабочая книга.
Метод CreateCopy создает копию указанной рабочей книги.
Рабочая книга может использоваться только в одном контексте. Для регистрации рабочей книги в нескольких контекстах используются её копии.
При копировании рабочей книги внутри одного контекста все формулы, использующие ряды из других рабочих книг, будут сохранены. При копировании рабочей книги между разными контекстами теряются формулы, содержащие зависимости от других рабочих книг.
Для выполнения примера предполагается наличие на форме компонентов Button, LanerBox, UiErAnalyzer с наименованиями Button1, LanerBox1 и UiErAnalyzer1 соответственно. UiErAnalyzer1 является источником данных для LanerBox1. В UiErAnalyzer1 должна быть загружена рабочая область базы данных временных рядов.
Также предполагается наличие переменой «pContext», содержащей контекст.
Пример является обработчиком события OnClick для компонента Button1.
Добавьте ссылки на системные сборки: Express, ExtCtrls, Forms, Laner, Metabase, Tab.
Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
pContext: ILanerContext;
Laner: ILaner;
LanerObject: IMetabaseObjectDescriptor;
Begin
pContext.BeginLoad;
Laner := UiErAnalyzer1.ErAnalyzer.Laner;
If Not Laner.IsInContext Then
pContext.Register(Laner);
Else
LanerObject := pContext.CreateCopy(Laner);
pContext.Register((LanerObject As IEaxAnalyzer).Laner);
pContext.EndLoad;
End If;
End Sub Button1OnClick;
После выполнения примера рабочая книга будет зарегистрирована в контексте. Если она уже содержится в контексте, то будет зарегистрирована её копия.
См. также: