ILanerSeries.AddGroupSerie

Синтаксис Fore

AddGroupSerie(
    Rubricator: IRubricator;
    MetaAttributeValues: ILanerMetaAttributeValueList;
    [RevisionKey: Integer = -1;]
    [Index: Integer = -1]
): ILanerGroupSerie;

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

AddGroupSerie(
    Rubricator: Prognoz.Platform.Interop.Cubes.IRubricator;
    MetaAttributeValues: Prognoz.Platform.Interop.Laner.ILanerMetaAttributeValueList;
    RevisionKey: integer;
    Index: integer
): Prognoz.Platform.Interop.Laner.ILanerGroupSerie;

Параметры

Rubricator. База данных временных рядов;

MetaAttributeValues. Набор атрибутов;

RevisionKey. Ключ ревизии, данные которой должны отображаться;

Index. Индекс позиции, в которую необходимо добавить группу рядов.

Описание

Метод AddGroupSerie добавляет группу рядов.

Комментарии

Группа будет формироваться из рядов, соответствующих набору атрибутов, заданных параметром MetaAttributeValues.

Если параметр RevisionKey имеет значение «-1», то отображаются данные по состоянию на последнюю ревизию.

Если база данных временных рядов неверсионная, то значение параметра RevisionKey игнорируется. Признак версионности возвращает свойство IRubricator.KeepHistory.

Если параметр Index имеет значение «-1», то группа рядов добавляется в конец коллекции рядов.

Пример Fore

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

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

Sub UserProc;
Var
    mb: IMetabase;
    WbkObj: IMetabaseObject;
    EaxAn: IEaxAnalyzer;
    Laner: ILaner;
    Series: ILanerSeries;
    Rub: IRubricator;
    MetaAtt: IMetaAttribute;
    AttrVals: ILanerMetaAttributeValues;
    AttrVal: ILanerMetaAttributeValue;
    GroupSer: ILanerGroupSerie;
Begin
    // Получаем рабочую книгу
    mb := MetabaseClass.Active;
    WbkObj := mb.ItemById("WORKBOOK_SERIES").Edit;
    EaxAn := WbkObj As IEaxAnalyzer;
    Laner := EaxAn.Laner;
    // Получаем ряды рабочей книги
    Series := Laner.Series;
    // Получаем базу данных временных рядов, являющуюся источником данных для рабочей книги
    Rub := Laner.RubricatorInstance.Rubricator;
    // Создаем коллекцию значений атрибутов
    AttrVals := Series.CreateMetaAttributeValues;
    // Получаем атрибут ряда с идентификатором «INDICATOR»
    MetaAtt := Rub.Facts.Attributes.FindById("INDICATOR");
    // Добавляем атрибут в коллекцию
    AttrVal := AttrVals.Add(MetaAtt);
    // Задаем значение атрибута
    AttrVal.Value := 765;
    // Добавляем группу рядов в начало рабочей книги
    GroupSer := Series.AddGroupSerie(Rub, AttrVals, -11);
    // Раскрываем группу
    GroupSer.Expanded := True;
    // Сохраняем изменения
    WbkObj.Save;
End Sub UserProc;

После выполнения примера в рабочую книгу будет добавлена новая группа рядов. В данную группу войдут ряды, у которых значение атрибута «INDICATOR» равняется «765». Группа будет развернута и будет располагаться после первого ряда рабочей книги.

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.
Imports Prognoz.Platform.Interop.Cubes;
Imports Prognoz.Platform.Interop.Express;
Imports Prognoz.Platform.Interop.Laner;
Imports Prognoz.Platform.Interop.Rds;


Public Shared Sub Main(Params: StartParams);
Var
    mb: IMetabase;
    WbkObj: IMetabaseObject;
    EaxAn: IEaxAnalyzer;
    Laner: ILaner;
    Series: ILanerSeries;
    Rub: IRubricator;
    MetaAtt: IMetaAttribute;
    AttrVals: ILanerMetaAttributeValues;
    AttrVal: ILanerMetaAttributeValue;
    GroupSer: ILanerGroupSerie;
Begin
    // Получаем рабочую книгу
    mb := Params.Metabase;
    WbkObj := mb.ItemById["WORKBOOK_SERIES"].Edit();
    EaxAn := WbkObj As IEaxAnalyzer;
    Laner := EaxAn.Laner;
    // Получаем ряды рабочей книги
    Series := Laner.Series;
    // Получаем базу данных временных рядов, являющуюся источником данных для рабочей книги
    Rub := Laner.RubricatorInstance.Rubricator;
    // Создаем коллекцию значений атрибутов
    AttrVals := Series.CreateMetaAttributeValues();
    // Получаем атрибут ряда с идентификатором «INDICATOR»
    MetaAtt := Rub.Facts.Attributes.FindById("INDICATOR");
    // Добавляем атрибут в коллекцию
    AttrVal := AttrVals.Add(MetaAtt);
    // Задаем значение атрибута
    AttrVal.Value := 765;
    // Добавляем группу рядов в начало рабочей книги
    GroupSer := Series.AddGroupSerie(Rub, AttrVals, -1 As uinteger, 1);
    // Раскрываем группу
    GroupSer.Expanded := True;
    // Сохраняем изменения
    WbkObj.Save();
End Sub;

См. также:

ILanerSeries