ICubeMetaUpdateEx.FactorsFilter

Синтаксис Fore

FactorsFilter: IDimSelectionSet;

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

FactorsFilter: Prognoz.Platform.Interop.Dimensions.IDimSelectionSet;

Описание

Свойство FactorsFilter возвращает отметку справочников, в соответствии с которой будет производиться копирование данных базы данных временных рядов.

Комментарии

По умолчанию копируются все временные ряды из базы-источника.

Примечание. Данное свойство учитывается, если базы данных временных рядов копируется вместе с данными, т.е. свойство ICubeMetaUpdateEx.CopyData имеет значение True.

Пример Fore

Для выполнения примера в репозитории предполагается наличие базы данных временных рядов с идентификатором «FC». База должна содержать уникальный атрибут временных рядов, ссылающийся на справочник с идентификатором «DICT_CTR».

Добавьте ссылки на системные сборки: Cubes, Dimensions, Metabase.

Sub UserProc;
Var
    mb: IMetabase;
    RubUpdateEx: ICubeMetaUpdateEx;
    Rub: IRubricator;
    Progress: IMetabaseUpdateProgress;
    CrInfo: IMetabaseObjectCreateInfo;
    s: string;
    SelSet: IDimSelectionSet;
    Sel: IDimSelection;
Begin
    mb := MetabaseClass.Active;
    RubUpdateEx := 
New CubeMetaUpdateClass.Create As ICubeMetaUpdateEx;
    Rub := mb.ItemById(
"FC").Bind As IRubricator;
    RubUpdateEx.Rubricator := Rub;
    RubUpdateEx.Metabase := Mb;
    CrInfo := RubUpdateEx.CreateInfo;
    CrInfo.Parent := mb.Root;
    s := Mb.GenerateId(
"FC_COPY");
    CrInfo.Id := s;
    CrInfo.Name := s;
    RubUpdateEx.CopyData := 
True;
    SelSet := RubUpdateEx.FactorsFilter;
    Sel := SelSet.FindById(
"DICT_CTR");
    Sel.DeselectAll;
    Sel.SelectElement(
0False);
    RubUpdateEx.RdsDatabase := Rub.Database;
    RubUpdateEx.Apply(Progress);
End Sub UserProc;

После выполнения примера база данных временных рядов «FC» будет скопирована в корневую папку репозитория. Идентификатор копии - «FC_COPY». Будут скопированы те данные временных рядов, которые вошли в указанную отметку.

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.

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

Public Shared Sub Main(Params: StartParams);
Var
    mb: IMetabase;
    RubUpdateEx: ICubeMetaUpdateEx;
    Rub: IRubricator;
    Progress: IMetabaseUpdateProgress;
    CrInfo: IMetabaseObjectCreateInfo;
    s: string;
    SelSet: IDimSelectionSet;
    Sel: IDimSelection;
Begin
    mb := Params.Metabase;
    RubUpdateEx := New CubeMetaUpdateClass.Create() As ICubeMetaUpdateEx;
    Rub := mb.ItemById["FC"].Bind() As IRubricator;
    RubUpdateEx.Rubricator := Rub;
    RubUpdateEx.Metabase := Mb;
    CrInfo := RubUpdateEx.CreateInfo;
    CrInfo.Parent := mb.Root;
    s := Mb.GenerateId("FC_COPY"0);
    CrInfo.Id := s;
    CrInfo.Name := s;
    RubUpdateEx.CopyData := True;
    SelSet := RubUpdateEx.FactorsFilter;
    Sel := SelSet.FindById("DICT_CTR");
    Sel.DeselectAll();
    Sel.SelectElement(0False);
    RubUpdateEx.RdsDatabase := Rub.Database;
    RubUpdateEx.Apply(Progress);
End Sub;

См. также:

ICubeMetaUpdateEx