IEaxGrid.Range

Синтаксис Fore

Range: ITabRange;

Синтаксис Fore.NET

Range: Prognoz.Platform.Interop.Tab.ITabRange;

Описание

Свойство Range возвращает диапазон прямоугольной области таблицы.

Комментарии

Для определения параметров прямоугольной области таблицы используйте IEaxGrid.OutPutRect.

Пример Fore

Для выполнения примера в репозитории необходимо наличие регламентного отчета с идентификатором «REPORT», содержащего аналитическую область данных.

Добавьте ссылки на системные сборки: Drawing, Express, Metabase, Report, Tab.

Sub UserProc;
Var
    MB: IMetabase;
    Report: IPrxReport;
    PivSlice: IEaxDataAreaSlice;
    Grid: IEaxGrid;
    NOutputRect, OutputRect: IGxRect;
Begin
    // Получим репозиторий
    MB := MetabaseClass.Active;
    // Получим регламентный отчет
    Report := MB.ItemById("REPORT").Edit As IPrxReport;
    // Получим таблицу
    PivSlice := Report.DataArea.Slices.Item(0);
    Grid := PivSlice.Views.Item(0As IEaxGrid;
    // Выведем в окно консоли адрес диапазона ячеек таблицы
    Report.Recalc;
    Debug.WriteLine("Диапазон ячеек таблицы - " + Grid.Range.Address);
    // Получим параметры  таблицы
    OutputRect := Grid.OutputRect;
    // Создадим новую область таблицы
    NOutputRect := New GxRect.CreateFromRect(OutputRect);
    NOutputRect.Bottom := OutputRect.Bottom + 1;
    NOutputRect.Left := OutputRect.Left + 1;
    NOutputRect.Right := OutputRect.Right + 1;
    NOutputRect.Top := OutputRect.Top + 1;
    // Назначим для таблицы новую область
    Grid.OutputRect := NOutputRect;
    // Обновим отчет
    Grid.Refresh;
    Report.Recalc;
    // Выведем в окно консоли адрес диапазона ячеек новой области таблицы
    Debug.WriteLine("Адрес диапазона ячеек новой области таблицы - " + Grid.Range.Address);
    // Сохраним изменения
    (Report As IMetabaseObject).Save;
End Sub UserProc;

После выполнения примера:

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадает с примером Fore.

Imports Prognoz.Platform.Interop.Drawing;
Imports Prognoz.Platform.Interop.Express;
Imports Prognoz.Platform.Interop.Report;
Imports Prognoz.Platform.Interop.Tab;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    Report: IPrxReport;
    PivSlice: IEaxDataAreaSlice;
    Grid: IEaxGrid;
    NOutputRect, OutputRect: GxRect;
    Rect: GxRect = New GxRectClass();
Begin
    // Получим репозиторий
    MB := Params.Metabase;
    // Получим регламентный отчет
    Report := MB.ItemById["REPORT"].Edit() As IPrxReport;
    // Получим таблицу
    PivSlice := Report.DataArea.Slices.Item[0];
    Grid := PivSlice.Views.Item[0As IEaxGrid;
    // Выведем в окно консоли адрес диапазона ячеек таблицы
    Report.Recalc();
    System.Diagnostics.Debug.WriteLine("Диапазон ячеек таблицы - " + Grid.Range.Address);
    // Получим параметры  таблицы
    OutputRect := Grid.OutputRect;
    // Создадим новую область таблицы
    Rect.CreateFromRect(OutputRect);
    NOutputRect := Rect;
    NOutputRect.Bottom := OutputRect.Bottom + 1;
    NOutputRect.Left := OutputRect.Left + 1;
    NOutputRect.Right := OutputRect.Right + 1;
    NOutputRect.Top := OutputRect.Top + 1;
    // Назначим для таблицы новую область
    Grid.OutputRect := NOutputRect;
    // Обновим отчет
    Grid.Refresh();
    Report.Recalc();
    // Выведем в окно консоли адрес диапазона ячеек новой области таблицы
    System.Diagnostics.Debug.WriteLine("Адрес диапазона ячеек новой области таблицы - " + Grid.Range.Address);
    // Сохраним изменения
    (Report As IMetabaseObject).Save();
    End Sub;

См. также:

IEaxGrid