CustomWhere: IOrmConditions;
Свойство CustomWhere возвращает дополнительное условие поиска.
Для выполнения примера предполагается наличие в репозитории базы данных временных рядов с идентификатором «OBJ_FC». В данной базе должен присутствовать атрибут показателя с идентификатором «COUNTRY».
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.CustomWhere;
Cond := Conditions.Add;
Cond.AttributeName := "COUNTRY";
Cond.Value := 512;
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».
См. также: