SupressEmpty: Boolean;
SupressEmpty: boolean;
Свойство SupressEmpty определяет, будут ли фильтроваться ячейки с пустыми значениями.
Возможные значения:
True. Ячейки с пустыми значениями будут фильтроваться;
False. По умолчанию. Ячейки с пустыми значениями фильтроваться не будут.
Для использования свойства необходимо, чтобы свойство IPivotFilterSettings.Enabled принимало значение True.
Для выполнения примера в репозитории необходимо наличие экспресс-отчета с идентификатором «EXPRESS_FILTER». Отчет содержит таблицу. Хотя бы один элемент последнего измерения таблицы не должен попадать под условие фильтрации.
Добавьте ссылки на системные сборки: Express, Metabase, Pivot.
Sub UserProc;
Var
MB: IMetabase;
Express: IEaxAnalyzer;
Pivot: IPivot;
LeftHeader: IPivotHeader;
Filter: IPivotFilter;
FilterSet: IPivotFilterSettings;
Begin
MB := MetabaseClass.Active;
Express := MB.ItemById("EXPRESS_FILTER").Edit As IEaxAnalyzer;
Pivot := Express.Pivot;
// Измерения, расположенные по строкам
LeftHeader := Pivot.LeftHeader;
// Параметры фильтрации в таблице
Filter := Pivot.Filter;
FilterSet := Filter As IPivotFilterSettings;
// Включим параметры фильтрации для таблицы
FilterSet.Enabled := True;
// Включим фильтрацию пустых значений
ячеек
FilterSet.SuppressEmpty := True;
// Включим фильтрацию нулевых
значений ячеек
FilterSet.SuppressZeros := True;
// Включим фильтрацию нечисловых
значений ячеек
FilterSet.SuppressNoNumeric := True;
// Оставим владельцев
неисключенных элементов
FilterSet.KeepParent := True;
// Отфильтруем данные по уровням иерархии последнего измерения
FilterSet.KeepNeighbors := True;
// Сохраним изменения
(Express As IMetabaseObject).Save;
End Sub UserProc;
После выполнения примера в таблице будут отфильтрованы пустые, нулевые и нечисловые значения ячеек. После фильтрации также будут отображаться владельцы неисключенных элементов. Будет отображаться последний уровень измерения, т.к. один из его элементов не попадет под фильтрацию.
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.
Imports Prognoz.Platform.Interop.Express;
Imports Prognoz.Platform.Interop.Pivot;
…
Public Shared Sub Main(Params: StartParams);
Var
MB: IMetabase;
Express: IEaxAnalyzer;
Pivot: IPivot;
LeftHeader: IPivotHeader;
Filter: IPivotFilter;
FilterSet: IPivotFilterSettings;
Begin
MB := Params.Metabase;
Express := MB.ItemById["EXPRESS_FILTER"].Edit() As IEaxAnalyzer;
Pivot := Express.Pivot;
// Измерения, расположенные по строкам
LeftHeader := Pivot.LeftHeader;
// Параметры фильтрации в таблице
Filter := Pivot.Filter;
FilterSet := Filter As IPivotFilterSettings;
// Включим параметры фильтрации для таблицы
FilterSet.Enabled := True;
// Включим фильтрацию пустых ячеек
FilterSet.SuppressEmpty := True;
// Включим фильтрацию нулевых ячеек
FilterSet.SuppressZeros := True;
// Включим фильтрацию нечисловых ячеек
FilterSet.SuppressNoNumeric := True;
// Оставим владельцев
неисключенных элементов
FilterSet.KeepParent := True;
// Отфильтруем данные по уровням иерархии последнего измерения
FilterSet.KeepNeighbors := True;
// Сохраним изменения
(Express As IMetabaseObject).Save();
End Sub;
См. также: