IPPSpeedometerScale.Value

Fore Syntax

Value(Index: Integer): Double;

Fore.NET Syntax

Value(Index: integer): double;

Parameters

Index. Index of returned value.

Description

The Value method returns scale value by its index.

Comments

To get the number of scale values, use the IPPSpeedometerScale.ValuesCount property.

Fore Example

Executing the example requires that the repository contains a database with the ADHOC identifier. A dashboard must contain a speedometer.

Add links to the Adhoc, Express, Metabase, Speedometer system assemblies.

Sub UserProc;
Var
    Speedometer: IPPSpeedometer;
    MB: IMetabase;
    AdhocReport: IAdhocReport;
    EaxSpeedometer: IEaxSpeedometer;
    Enalyzer: IEaxAnalyzer;
    DsObjs: IAdhocDataSourceObjects;
    Scales: IPPSpeedometerScales;
    Scale: IPPSpeedometerScale;
    i: Integer;
Begin
    MB := MetabaseClass.Active;
    // Get dashboard 
    AdhocReport := MB.ItemById("ADHOC").Edit As IAdhocReport;
    // Get dashboard data sources
    DsObjs := AdhocReport.DataSourceObjects;
    // Get speedometer
    Enalyzer := DsObjs.Item(0).GetSourceObject As IEaxAnalyzer;
    EaxSpeedometer := Enalyzer.Speedometer;
    // Get speedometer parameters
    Speedometer := EaxSpeedometer.Speedometer;
    // Get collection of speedometer scales
    Scales := Speedometer.Scales;
    // Get data scale
    Scale := Scales.DataScale;
    // Display data scale values
    For i := 0 To Scale.ValuesCount - 1 Do
        Debug.WriteLine(Scale.Value(i));
    End For;
    // Remove all values
    Scale.ClearValues;
    // Add a new value
    Scale.AddValue(1000);
    // Recalculate speedometer scale
    Scale.Recalc;
    (Enalyzer As IMetabaseObject).Save;
End Sub UserProc;

After executing the example the console window displays all data scale values. Old values are removed, a new value is added and speedometer data scale values are recalculated.

Fore.NET Example

The requirements and result of the Fore.NET example execution match with those in the Fore example.

Imports Prognoz.Platform.Interop.Metabase;
Imports Prognoz.Platform.Interop.AdHoc;
Imports Prognoz.Platform.Interop.Express;
Imports Prognoz.Platform.Interop.Speedometer;

Public Shared Sub Main(Params: StartParams);
Var
    Speedometer: IPPSpeedometer;
    MB: IMetabase;
    AdhocReport: IAdhocReport;
    EaxSpeedometer: IEaxSpeedometer;
    Enalyzer: IEaxAnalyzer;
    DsObjs: IAdhocDataSourceObjects;
    Scales: IPPSpeedometerScales;
    Scale: PPSpeedometerScale;
    i: Integer;
Begin
    MB := Params.Metabase;
    // Get dashboard 
    AdhocReport := MB.ItemById["ADHOC"].Edit() As IAdhocReport;
    // Get dashboard data sources
    DsObjs := AdhocReport.DataSourceObjects;
    // Get speedometer
    Enalyzer := DsObjs.Item[0].GetSourceObject() As IEaxAnalyzer;
    EaxSpeedometer := Enalyzer.Speedometer;
    // Get speedometer parameters
    Speedometer := EaxSpeedometer.Speedometer;
    // Get collection of speedometer scales
    Scales := Speedometer.Scales;
    // Get data scale
    Scale := Scales.DataScale;
    // Display data scale values
    For i := 0 To Scale.ValuesCount - 1 Do
        System.Diagnostics.Debug.WriteLine(Scale.Value(i));
    End For;
    // Remove all values
    Scale.ClearValues();
    // Add a new value
    Scale.AddValue(1000);
    // Recalculate speedometer scale
    Scale.Recalc();
    (Enalyzer As IMetabaseObject).Save();
End Sub;

See also:

IPPSpeedometerScale

Related work items

Requirement