CreateCopy(Laner: ILaner): IMetabaseObjectDescriptor;
Laner. Рабочая книга.
Метод CreateCopy создает копию указанной рабочей книги.
Рабочая книга может использоваться только в одном контексте. Для регистрации рабочей книги в нескольких контекстах используются её копии.
При копировании рабочей книги внутри одного контекста все формулы, использующие ряды из других рабочих книг, будут сохранены. При копировании рабочей книги между разными контекстами теряются формулы, содержащие зависимости от других рабочих книг.
Для выполнения примера предполагается наличие формы, содержащей:
кнопку с идентификатором «Button1»;
компонент LanerBox;
компонент UiErAnalyzer с идентификатором «UiErAnalyzer1» и являющегося источником данных для LanerBox. В «UiErAnalyzer1» должна быть загружена рабочая книга базы данных временных рядов.
Также предполагается наличие переменой «pContext», содержащей контекст.
Добавьте ссылку на системную сборку «Metabase». Пример является обработчиком события OnClick для кнопки.
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;
После выполнения примера рабочая книга будет зарегистрирована в контексте. Если она уже содержится в контексте, то будет зарегистрирована её копия.
См. также: