IMetaDictionaryLookup.WhereRevisionKey

Синтаксис

WhereRevisionKey: Integer;

Описание

Свойство WhereRevisionKey определяет искомое значение атрибута, указанного в свойстве RevisionAttribute или RevisionAttributes (учитывается только первое наименование атрибута в коллекции).

Пример

Для выполнения примера предполагается наличие в репозитории базы данных временных рядов с идентификатором «OBJ_FC». В данной базе должны присутствовать атрибуты показателя с идентификаторами «COUNTRY» и «UNIT».

Sub Main;

Var

MB: IMetabase;

RubDesc: IMetabaseObjectDescriptor;

RubrIn: IRubricatorInstance;

DictInst: IMetaDictionaryInstance;

MetaDLookup: IMetaDictionaryLookup;

Conditions: IOrmConditions;

Cond: IOrmCondition;

i: Integer;

Res: Array Of Integer;

Begin

MB := MetabaseClass.Active;

RubDesc := MB.ItemById("OBJ_FC");

RubrIn := RubDesc.Open(Null) As IRubricatorInstance;

DictInst := RubrIn.Facts;

MetaDLookup := DictInst.CreateLookup("");

Conditions := MetaDLookup.Where;

Cond := Conditions.Add;

Cond.AttributeName := "COUNTRY";

Cond.Value := 512;

MetaDLookup.RevisionAttribute := "UNIT";

MetaDLookup.WhereRevisionKey := 3436;

i := MetaDLookup.LookupKeys("FACTOR").Length;

Res := New Integer[i];

Res := MetaDLookup.LookupKeys("FACTOR");

For i := 0 To Res.Length - 1 Do

Debug.WriteLine(Res[i].ToString);

End For;

End Sub Main;

После выполнения примера в окно консоли будут выведены ключи показателей, соответствующих следующим условиям: значение атрибута «COUNTRIES» у показателя равняется «512», а значение атрибута «UNIT» - «3436».

См. также:

IMetaDictionaryLookup