IMatrixDataSource.CreateDimSelectionSet

Синтаксис Fore

CreateDimSelectionSet: IDimSelectionSet;

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

CreateDimSelectionSet(): Prognoz.Platform.Interop.Dimensions.IDimSelectionSet;

Описание

Метод CreateDimSelectionSet создает набор отметок для измерений источника данных.

Пример

Для выполнения примера предполагается наличие в репозитории куба с идентификатором «Cube_1».

Sub UserProc;
Var
    MB: IMetabase;
    CubeInst: ICubeInstance;
    MatrDS: IMatrixDataSource;
    DimSS: IDimSelectionSet;
    Matr: IMatrix;
    Coord: IMatrixCoord;
    i: Integer;
Begin
    MB := MetabaseClass.Active;
    CubeInst := MB.ItemById("Cube_1").Open(NullAs ICubeInstance;
    MatrDS := CubeInst.Destinations.DefaultDestination As IMatrixDataSource;
    DimSS := MatrDS.CreateDimSelectionSet;
    Matr := MatrDS.Execute(DimSS);
    Coord := Matr.CreateCoord;
    For i := 0 To Matr.DimensionCount - 1 Do
        Coord.Item(i) := 0;
    End For;
    Matr.Item(Coord) := 10;
    MatrDS.SaveData(Matr);
End Sub UserProc;

При выполнении примера на базе куба будет получена матрица с данными. Для указанного элемента матрицы будет изменено значение, после чего измененная матрица будет сохранена обратно в куб.

Пример Fore.NET

Для выполнения примера предполагается наличие в репозитории куба с идентификатором «Cube_1». Указанная процедура является точкой входа для .NET-сборки.

Imports Prognoz.Platform.Interop.Cubes;
Imports Prognoz.Platform.Interop.Dimensions;
Imports Prognoz.Platform.Interop.Matrix;
Imports Prognoz.Platform.Interop.Metabase;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    CubeInst: ICubeInstance;
    MatrDS: IMatrixDataSource;
    DimSS: IDimSelectionSet;
    Matr: IMatrix;
    Coord: IMatrixCoord;
    i: Integer;
Begin
    MB := Params.Metabase;
    CubeInst := MB.ItemById["Cube_1"].Open(NullAs ICubeInstance;
    MatrDS := CubeInst.Destinations.DefaultDestination As IMatrixDataSource;
    DimSS := MatrDS.CreateDimSelectionSet();
    Matr := MatrDS.Execute(DimSS);
    Coord := Matr.CreateCoord();
    For i := 0 To Matr.DimensionCount - 1 Do
        Coord.Item[i] := 0;
    End For;
    Matr.Item[Coord] := 10;
    MatrDS.SaveData(Matr);
End Sub;

При выполнении примера на базе куба будет получена матрица с данными. Для указанного элемента матрицы будет изменено значение, после чего измененная матрица будет сохранена обратно в куб.

См.также:

IMatrixDataSource