OnBeforeDataSourceExecute(DestinationSel: IDimSelectionSet);
DestinationSel. Отметка измерений источника, в соответствии с которой осуществляется вычисление источника данных.
Метод OnBeforeDataSourceExecute реализует событие, которое наступает перед вычислением источника данных.
Для выполнения примера в репозитории предполагается наличие формы, содержащей компонент UiErAnalyzer с наименованием UiErAnalyzer1 и компонент EaxDocumentViewerBox. UiErAnalyzer1 установлен в качестве источника данных для EaxDocumentViewerBox. К UiErAnalyzer1 подключен какой-либо экспресс-отчёт.
Добавьте ссылки на системные сборки: Dimensions, Express, Pivot.
Public Class Pivot_Events: PivotEvents
// Событие, наступающее перед
вычислением источника данных
Public Sub OnBeforeDataSourceExecute(DestinationSel: IDimSelectionSet);
Var
Sel: IDimSelection;
Begin
Debug.WriteLine("Отмечено в измерениях:");
Debug.Indent;
For Each Sel In DestinationSel Do
Debug.WriteLine(Sel.Dimension.Ident + ": " + Sel.SelectedCount.ToString);
End For;
Debug.Unindent;
End Sub OnBeforeDataSourceExecute;
End Class Pivot_Events;
Class TESTForm: Form
UiErAnalyzer1: UiErAnalyzer;
EaxDocumentViewerBox1: EaxDocumentViewerBox;
Pvt: IPivot;
Cookie: Integer;
Sub TESTFormOnShow(Sender: Object; Args: IEventArgs);
Var
Express: IEaxAnalyzer;
Events: Pivot_Events;
Begin
// Получим экспресс-отчет
Express := UiErAnalyzer1.ErAnalyzer;
// Получим настройки отображения таблицы данных отчета
Pvt := Express.Pivot;
// Включим возможность генерации событий
Pvt.EventsEnabled := True;
// Создадим экземпляр класса для обработк событий
Events := New Pivot_Events.Create;
// Подключим обработчик событий для таблицы
Cookie := Pvt.AddEventHandler(Events);
End Sub TESTFormOnShow;
Sub TESTFormOnClose(Sender: Object; Args: IEventArgs);
Begin
// Удалим обработчик событий
Pvt.RemoveEventHandler(Cookie);
End Sub TESTFormOnClose;
End Class TESTForm;
При запуске формы для таблицы экспресс-отчёта будет подключен пользовательский обработчик событий. Перед вычислением источника данных в окно консоли будет выводиться информация о выставленной отметке.
См. также: