IEaxDataAreaSource.IsLoaded

Syntax

IsLoaded: Boolean;

IsLoaded: boolean;

Description

The IsLoaded propety determines whether data source of analytical area will be loaded.

Comments

The property is relevant, if delayed loading of analytical area sheets is set: the IEaxDataArea.DelayedLoad property is set to True.

Available values:

Example

Executing the example requires that repository contains data entry form with the DEF identifier that contains two sheets: one table area is on the first sheet, table area and dictionary attribute editor is on the second sheet.

Add links to the Express, Metabase and Report system assemblies.

Sub UserProc;
Var
    MB: IMetabase;

    Report: IPrxReport;
    Sheets: IPrxSheets;
    Sheet: IPrxSheet;
    Area: IEaxDataArea;
    Slices: IEaxDataAreaSlices;
    Slice: IEaxDataAreaSlice;
    Sources: IEaxDataAreaSources;
    Source: IEaxDataAreaSource;
    Views: IEaxDataAreaViews;
    Object: IEaxObject;
    i: integer;
Begin
    
// Get repository
    MB := MetabaseClass.Active;
    // Get form child object
    Report := MB.ItemById("DEF").Children.Item(0).Edit As IPrxReport;
    
// Get analytical area of child object
    Area := Report.DataArea As IEaxDataArea;
    Debug.WriteLine(
"Sheets loading is delayed - " + Area.DelayedLoad.ToString);
    
// Get report sheets
    Sheets := Report.Sheets;
    
// Set the first sheet is active
    Sheet := Sheets.Item(0);
    Sheet.Active := 
True;
    
// Get analytical area data sources
    Sources := Area.DataSources;
    
// Load the second source
    Source := Sources.Item(1);
    Source.Load;
    
// Get analytical area slices
    Slices := Area.Slices;
    
// Load the second slice
    Slice := Slices.Item(1);
    Slice.Load;
    
// Get analytical area objects
    Views := Area.Views;
    
// Load the second object
    Object := Views.Item(1);
    Object.Load;
    
// Save child object
    (Report 
As IMetabaseObject).Save;
End Sub UserProc;

Imports Prognoz.Platform.Interop.Express;
Imports Prognoz.Platform.Interop.Report;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    Report: IPrxReport;
    Sheets: IPrxSheets;
    Sheet: IPrxSheet;
    Area: IEaxDataArea;
    Slices: IEaxDataAreaSlices;
    Slice: IEaxDataAreaSlice;
    Sources: IEaxDataAreaSources;
    Source: IEaxDataAreaSource;
    Views: IEaxDataAreaViews;
    Object: IEaxObject;
    i: integer;
Begin
    
// Get repository
    MB := Params.Metabase;
    
// Get form child object
    Report := MB.ItemById["DEF"].Children.Item[0].Edit() As IPrxReport;
    
// Get analytical area of child object
    Area := Report.DataArea As IEaxDataArea;
    System.Diagnostics.Debug.WriteLine(
"Sheets loading is delayed - " + Area.DelayedLoad.ToString());
    
// Get report sheets
    Sheets := Report.Sheets;
    
// Set the first sheet is active
    Sheet := Sheets.Item[0];
    Sheet.Active := 
True;
    
// Get analytical area data sources
    Sources := Area.DataSources;
    
// Load the second source
    Source := Sources.Item[1];
    Source.Load();
    
// Get analytical area slices
    Slices := Area.Slices;
    
// Load the second slice
    Slice := Slices.Item[1];
    Slice.Load();
    
// Get analytical area objects
    Views := Area.Views;
    
// Load the second object
    Object := Views.Item[1];
    Object.Load();
    
// Save child object
    (Report As IMetabaseObject).Save();
End Sub;

After executing the example, the first sheet will be active in data entry form, all sources, slices and objects of the first sheet will be loaded, the second source, the second slice and the second object will be also loaded.

See also:

IEaxDataAreaSource