IVZDataCoordinateAdapter.IncludeZero

Синтаксис Fore

IncludeZero: Boolean;

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

IncludeZero: boolean;

Описание

Свойство IncludeZero определяет, будут ли в преобразователе исключаться нулевые значения.

Комментарии

Возможные значения:

Данное свойство выполняет операцию min(MinValue, 0) при определении минимального значения по данным (IVZDataNormalizeAdapter.MinValue).

Для определения, будут ли данные в преобразователе обрабатываться по модулю, используйте IVZDataCoordinateAdapter.UseSignDivision.

Пример Fore

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

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

Sub UserProc;
Var
    Metabase: IMetabase;
    Express: IEaxAnalyzer;
    Map: IVZMapChart;
    Layer: IVZMapChartLayer;
    DataSourceMapping: IVZMultipleDataSourceMapping;
    BarVisual: IVZMapChartBarVisual;
    DataTransformer: IVZDataCoordinateAdapter;
Begin
    // Получим репозиторий
    Metabase := MetabaseClass.Active;
    // Получим экспресс-отчёт
    Express := Metabase.ItemById("EXPRESS").Bind As IEaxAnalyzer;
    // Получим карту
    Map := Express.MapChart.MapChart;
    // Получим слой карты
    Layer := Map.RootLayer.SubLayers.Item(0);
    // Получим визуальное представление
    BarVisual := Layer.Bars.Item(0).BarVisual;
    // Получим настройки сопоставления данных
    DataSourceMapping := BarVisual.HeightMapping;
    DataTransformer := DataSourceMapping.Item(0).DataTransformer As IVZDataCoordinateAdapter;
    // Зададим верхнюю границу интервала
    DataTransformer.MaxValue := 30;
    // Зададим нижнюю границу интервала
    DataTransformer.MinValue := 2;
    // Обрабатывать значение по модулю
    DataTransformer.UseSignDivision := True;
    // Исключать нулевые значения
    DataTransformer.IncludeZero := True;
    // Выведем в окно консоли
    Debug.WriteLine("Преобразование данных:");
    Debug.WriteLine("Вход: -10, выход: " +
        ((DataTransformer.GetData(-10)) As Double).ToString);
    Debug.WriteLine("Вход: -5, выход: " +
        ((DataTransformer.GetData(-5)) As Double).ToString);
    Debug.WriteLine("Вход: 0, выход: " +
            ((DataTransformer.GetData(0)) As Double).ToString);
    Debug.WriteLine("Вход: 5, выход: " +
            ((DataTransformer.GetData(5)) As Double).ToString);
End Sub UserProc;

В результате выполнения примера в окно консоли выведутся значения на выходе.

Пример Fore.NET

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

Imports Prognoz.Platform.Interop.Express;
Imports Prognoz.Platform.Interop.Visualizators;

Public Shared Sub Main(Params: StartParams);
Var
    Metabase: IMetabase;
    Express: IEaxAnalyzer;
    Map: IVZMapChart;
    Layer: IVZMapChartLayer;
    DataSourceMapping: IVZMultipleDataSourceMapping;
    BarVisual: IVZMapChartBarVisual;
    DataTransformer: IVZDataCoordinateAdapter;
Begin
    // Получим репозиторий
    Metabase := Params.Metabase;
    // Получим экспресс-отчёт
    Express := Metabase.ItemById["EXPRESS"].Bind() As IEaxAnalyzer;
    // Получим карту
    Map := Express.MapChart.MapChart;
    // Получим слой карты
    Layer := Map.RootLayer.SubLayers.Item[0];
    // Получим визуальное представление
    BarVisual := Layer.Bars.Item[0].BarVisual;
    // Получим настройки сопоставления данных
    DataSourceMapping := BarVisual.HeightMapping;
    DataTransformer := DataSourceMapping.Item[0].DataTransformer As IVZDataCoordinateAdapter;
    // Зададим верхнюю границу интервала
    DataTransformer.MaxValue := 30;
    // Зададим нижнюю границу интервала
    DataTransformer.MinValue := 2;
    // Обрабатывать значение по модулю
    DataTransformer.UseSignDivision := True;
    // Исключать нулевые значения
    DataTransformer.IncludeZero := True;
    // Выведем в окно консоли
    System.Diagnostics.Debug.WriteLine("Преобразование данных:");
    System.Diagnostics.Debug.WriteLine("Вход: -10, выход: " +
        ((DataTransformer.GetData(-10)) As Double).ToString());
    System.Diagnostics.Debug.WriteLine("Вход: -5, выход: " +
        ((DataTransformer.GetData(-5)) As Double).ToString());
    System.Diagnostics.Debug.WriteLine("Вход: 0, выход: " +
            ((DataTransformer.GetData(0)) As Double).ToString());
    System.Diagnostics.Debug.WriteLine("Вход: 5, выход: " +
            ((DataTransformer.GetData(5)) As Double).ToString());
End Sub;

См. также:

IVZDataCoordinateAdapter