Синхронизация рядов рабочей книги

Если рабочие книги базы данных временных рядов зарегистрированы в одном контексте, то между ними будет производиться синхронизация данных. При изменении значений ряда одной рабочей книги соответствующие данные будут обновлены во всех рядах с теми же значениями обязательных атрибутов.

Для работы с контекстом используется интерфейс ILanerContext. Приведем пример помещения в контекст двух рабочих книг одной базы данных временных рядов. Для этого вам потребуется форма и следующие компоненты:

Компонент «UiErAnalyzer1» является источником данных для «LanerBox1», а «UiErAnalyzer2» для «LanerBox2». В компоненты UiErAnalyzer должны быть загружены рабочие книги, созданные на основе одной базы данных временных рядов.

Приведенная ниже процедура, должна быть назначена обработчиком события OnClick для кнопки «Button1»:

Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
    Context: ILanerContext;
    Laner: ILaner;
Begin
    Context := New LanerContext.Create;
// Регистрируем 1-ю рабочую книгу
    Laner := UiErAnalyzer1.ErAnalyzer.Laner;
    Context.Register(Laner);
// Регистрируем 2-ю рабочую книгу
    Laner := UiErAnalyzer2.ErAnalyzer.Laner;
    Context.Register(Laner);
End Sub Button1OnClick;

После нажатия кнопки «Button1» рабочие книги будут зарегистрированы в одном контексте.

Результат

Ряды в первой рабочей книге:

Ряды во второй рабочей книге:

Изменяем значения рядов в первой рабочей книге:

Данные рядов во второй рабочей книге будут синхронизированы с данными рядов в первой рабочей книге:

См. также:

Примеры | ILanerContext