IPrxDataSources.FindByKey

Syntax

FindByKey(Key: Integer): IPrxDataSource;

Parameters

Key. Key of data source used for search.

Description

The FindByKey method searches for and returns an object containing a data source.

Comment

The range of keys is used inside the IPrxDataSources collection where each data source is allocated to the key starting with one.

Fore Example

Executing the example requires a regular report with the REGULAR_REPORT identifier that contains data sources. One of the keys has the 1 key. Add links to the Metabase, Report system assemblies.

Sub UserProc;
Var
    MB: IMetabase;
    MObj: IMetabaseObject;
    Report: IPrxReport;
    DtSources: IPrxDataSources;
    DtSource: IPrxDataSource;
    Slice: IPrxSlice;
Begin
    MB := MetabaseClass.Active;
    MObj := MB.ItemById("REGULAR_REPORT").Bind;
    Report := MObj As IPrxReport;
    DtSources := Report.DataSources;
    DtSource := Report.DataSources.FindByKey(1);
    For Each Slice In DtSource.Slices Do
        Debug.WriteLine(Slice.Name)
    End For;
End Sub UserProc;

After executing the example the console displays slice names contained in the cube with the 1 key.

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.Report;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    MObj: IMetabaseObject;
    Report: IPrxReport;
    DtSources: IPrxDataSources;
    DtSource: IPrxDataSource;
    Slice: IPrxSlice;
Begin
    MB := Params.Metabase;
    MObj := MB.ItemById["REGULAR_REPORT"].Bind();
    Report := MObj As IPrxReport;
    DtSources := Report.DataSources;
    DtSource := Report.DataSources.FindByKey(1);
    For Each Slice In DtSource.Slices Do
        System.Diagnostics.Debug.WriteLine(Slice.Name)
    End For;
End Sub;

See also:

IPrxDataSources