Команда PerformSearch

Назначение

Вызов стандартного диалога поиска/замены в регламентном отчете.

Параметры использования

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

Тип значения Описание
Элемент 1:  ITabCellSearch Объект, содержащий параметры поиска, которые будут выставлены в диалоге.
Элемент 2: Boolean Параметр, определяющий какая вкладка будет активна при открытии диалога. Если передается значение True, то будет активна вкладка «Заменить», иначе - вкладка «Найти». Параметр необязательный, по умолчанию передается значение False.
Элемент 3: TabCellSearchTarget Параметр, определяющий какие свойства ячейки будут доступны для поиска в разделе «Предмет поиска» в дополнительных настройках. Необязательный параметр, по умолчанию доступны все свойства ячейки.
Элемент 4: TabFindReplaceFormat Параметр, определяющий возможность задания формата для искомого и заменяемого текста.
Необязательный параметр, по умолчанию формат можно задать как для искомого текста, так и для того текста, на который будет производиться замена.

Особенности применения

Команда может применяться только для регламентных отчетов.

Пример

Для выполнения примера предполагается наличие формы, расположенной на ней кнопки с наименованием «Button1», компонента ReportBox и компонента UiReport с наименованием «UiReport1», являющегося источником данных для ReportBox.

Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
    Target: IUiCommandTarget;
    Context: IUiCommandExecutionContext;
    Data: Array;
    CellSearch: ITabCellSearch;
Begin
    Target := WinApplication.Instance.GetPluginTarget("Report");
    Context := Target.CreateExecutionContext;
    CellSearch := ((UiReport1.Instance As IPrxReport).ActiveSheet As IPrxTable).TabSheet.CreateCellSearch;
    Data := New Variant[4];
    Data[0] := CellSearch;
    Data[1] := False;
    Data[2] := TabCellSearchTarget.Formula Or TabCellSearchTarget.Text;
    Data[3] := TabFindReplaceFormat.Find;
    Context.Data := Data;
    Target.Execute("PerformSearch", Context);
End Sub Button1OnClick;

При нажатии кнопки будет выведен стандартный диалог поиска/замены в регламентном отчете.

См. также:

IUiCommandTarget.Execute