IAutoCubeUpdateFilter.ParamsValues

Синтаксис Fore

ParamsValuesIMetabaseObjectParamValues;

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

ParamsValuesIMetabaseObjectParamValues;

Описание

Свойство ParamsValues определяет значения параметров автоматического куба.

Пример Fore

Для выполнения примера добавьте ссылки на системные сборки Metabase, Cubes и Dimensions. Предполагается наличие автоматического куба с идентификатором «AUTOCUBE» в репозитории.

Sub UserProc;
Var
    Update: IMetabaseUpdate;
    CubeNode: IMetabaseUpdateDataObjectNode;
    Object: IMetabaseObject;
    Filter: IAutoCubeUpdateFilter;
    Sel: IDimSelection;
    ParamsVal: IMetabaseObjectParamValues;
    CubeInst: ICubeInstance;
    Mb: IMetabase;
Begin
    Mb := MetabaseClass.Active;
    Update := Mb.CreateUpdate;
    CubeNode := Update.RootFolder.Add(MetabaseUpdateNodeType.DataObject) As IMetabaseUpdateDataObjectNode;
    Object := Mb.ItemById("AUTOCUBE").Bind;
    CubeNode.Object := Object;
    CubeNode.Label := CubeNode.Object.Name;
    CubeNode.Method := MetabaseUpdateMethod.All;
    CubeNode.IncludeData := True;
    CubeNode.ExtendedParams := Object.CreateUpdateExParams;
    Filter := CubeNode.ExtendedParams As IAutoCubeUpdateFilter;
    ParamsVal:= Object.Params.CreateEmptyValues;
    ParamsVal.Item(0).Value := "Parameter1";
    Filter.ParamValues := ParamsVal;
    CubeInst := Object.Open(ParamsVal) As ICubeInstance;
    Filter.SelectionSet := CubeInst.Destinations.DefaultDestination.CreateDimSelectionSet;
    For Each Sel In Filter.SelectionSet Do
        If sel.Dimension.Ident = "CALENDAR" Then
            sel.SelectSiblings(0);
        Else
            Sel.SelectElement(0true);
        End If;
    End For;
    Update.SaveToFileNF("c:\temp\autocube.pefx");
End Sub UserProc;

После выполнения примера в папке «c:\temp» будет создан файл обновления.

Пример Fore.NET

Для выполнения примера добавьте ссылки на системные сборки Metabase, Cubes и Dimensions. Предполагается наличие автоматического куба с идентификатором «AUTOCUBE» в репозитории.

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

Public Shared Sub Main(Params: StartParams);
Var
    Update: IMetabaseUpdate;
    CubeNode: IMetabaseUpdateDataObjectNode;
    Object: IMetabaseObject;
    Filter: IAutoCubeUpdateFilter;
    Sel: IDimSelection;
    ParamsVal: IMetabaseObjectParamValues;
    CubeInst: ICubeInstance;
    Mb: IMetabase;
Begin
    Mb := Params.Metabase;
    Update := Mb.CreateUpdate();
    CubeNode := Update.RootFolder.Add(MetabaseUpdateNodeType.untDataObject) As IMetabaseUpdateDataObjectNode;
    Object := Mb.ItemById["AUTOCUBE"].Bind();
    CubeNode.Object := Object;
    CubeNode.Label := CubeNode.Object.Name;
    CubeNode.Method := MetabaseUpdateMethod.mumAll;
    CubeNode.IncludeData := True;
    CubeNode.ExtendedParams := Object.CreateUpdateExParams();
    Filter := CubeNode.ExtendedParams As IAutoCubeUpdateFilter;
    ParamsVal := Object.Params.CreateEmptyValues();
    ParamsVal.Item[0].Value := "Parameter1";
    Filter.ParamValues := ParamsVal;
    CubeInst := Object.Open(ParamsVal) As ICubeInstance;
    Filter.SelectionSet := CubeInst.Destinations.DefaultDestination.CreateDimSelectionSet();
    For Each Sel In Filter.SelectionSet Do
        If sel.Dimension.Ident = "CALENDAR" Then
            sel.SelectSiblings(0);
        Else
            Sel.SelectElement(0True);
        End If;
    End For;
    Update.SaveToFileNF("c:\temp\autocube.pefx");
End Sub;

После выполнения примера в папке «c:\temp» будет создан файл обновления.

См. также:

IAutoCubeUpdateFilter