IEaxDataAreaSlice.CalculationOptions

Синтаксис Fore

CalculationOptions: EaxDataAreaSliceCalculationOptions;

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

CalculationOptions: Prognoz.Platform.Interop.Express.EaxDataAreaSliceCalculationOptions;

Описание

Свойство CalculationOptions определяет параметры вычисления элементов среза аналитической области данных.

Комментарии

Для использования данного свойства убедитесь, чтобы свойство IEaxDataAreaSlice.SkipEmptyValues принимало значение False.

Пример Fore

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

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

Sub UserProc;
Var
    MB: IMetabase;
    Express: IEaxAnalyzer;
    Slice: IEaxDataAreaSlice;
Begin
    // Получим репозиторий
    MB := MetabaseClass.Active;
    // Получим экспресс-отчет
    Express := MB.ItemById("EXPRESS").Edit As IEaxAnalyzer;
    // Получим срез данных
    Slice := Express.DataArea.Slices.Item(0);
    // Заменим пустые значения на нули
    If Slice.SkipEmptyValues Then Slice.SkipEmptyValues := False;
    End If;
    Slice.CalculationOptions := EaxDataAreaSliceCalculationOptions.TreatNullsAsZeros;
    // Сохраним изменения
    Express.RefreshAll;
    (Express As IMetaBaseObject).Save;
End Sub UserProc;

После выполнения примера в экспресс-отчете для вычисляемого элемента пустые значения будут заменены нулями.

Пример Fore.NET

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

Imports Prognoz.Platform.Interop.Express;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    Express: IEaxAnalyzer;
    Slice: IEaxDataAreaSlice;
Begin
    // Получим репозиторий
    MB := Params.Metabase;
    // Получим экспресс-отчет
    Express := MB.ItemById["EXPRESS"].Edit() As IEaxAnalyzer;
    // Получим срез данных
    Slice := Express.DataArea.Slices.Item[0];
    // Заменим пустые значения на нули
    If Slice.SkipEmptyValues Then Slice.SkipEmptyValues := False;
    End If;
    Slice.CalculationOptions := EaxDataAreaSliceCalculationOptions.edascoTreatNullsAsZeros;
    // Сохраним изменения
    Express.RefreshAll();
    (Express As IMetaBaseObject).Save();
End Sub;

См. также:

IEaxDataAreaSlice