OuterRadius: IGxSizeF;
OuterRadius: Prognoz.Platform.Interop.Drawing.GxSizeF;
The OuterRadius property determines a speedometer rendering area relative to speedometer center.
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, Drawing, Express, Metabase, Speedometer system assemblies.
Sub UserProc;
Var
Speedometer: IPPSpeedometer;
MB: IMetabase;
AdhocReport: IAdhocReport;
EaxSpeedometer: IEaxSpeedometer;
Enalyzer: IEaxAnalyzer;
DsObjs: IAdhocDataSourceObjects;
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;
// Change speedometer rendering area
Speedometer.OuterRadius.Width := 120;
Speedometer.OuterRadius.Height := 120;
Debug.Writeline("Speedometer center coordinates: " + Speedometer.CenterPosition.X.ToString +
":" + Speedometer.CenterPosition.Y.ToString);
(Enalyzer As IMetabaseObject).Save;
End Sub UserProc;
After executing the example speedometer rendering area is changed. The console window displays a message with speedometer center coordinates.
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;
Imports Prognoz.Platform.Interop.Drawing;
…
Public Shared Sub Main(Params: StartParams);
Var
Speedometer: IPPSpeedometer;
MB: IMetabase;
AdhocReport: IAdhocReport;
EaxSpeedometer: IEaxSpeedometer;
Enalyzer: IEaxAnalyzer;
DsObjs: IAdhocDataSourceObjects;
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;
// Change speedometer rendering area
Speedometer.OuterRadius.Width := 120;
Speedometer.OuterRadius.Height := 120;
System.Diagnostics.Debug.Writeline("Speedometer center coordinates: " +
Speedometer.CenterPosition.X.ToString() + ":" + Speedometer.CenterPosition.Y.ToString());
(Enalyzer As IMetabaseObject).Save();
End Sub;
See also:
Related work items
Requirement