IDimOrmCondition.EvaluateRec

Синтаксис Fore

EvaluateRec(Value: IOrmRecord): Boolean;

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

EvaluateRec(Value: Prognoz.Platform.Interop.Orm.IOrmRecord): Boolean;

Параметры

Value. Коллекция значений атрибутов, реализуемая интерфейсом IOrmRecord, по которым будет осуществляется проверка.

Описание

Метод EvaluateRec осуществляет проверку значений атрибутов и возвращает признак соответствия условиям поиска.

Комментарии

Данный метод используется для проверки элементов справочников НСИ. Получить значение атрибутов, реализуемое интерфейсом можно используя свойство IRdsDictionaryElementData.Record.

Пример Fore

Для выполнения примера предполагается наличие формы, расположенной на ней кнопки с наименованием «Button1», компонента RdsDictionaryBox с наименованием «RdsDictionaryBox1» и какого-либо компонента UiRdsDictionary являющегося источником данных для «RdsDictionaryBox1». В справочнике НСИ, который подключен к компоненту UiRdsDictionary, имеются атрибуты «Name» и «UserAttr».

    Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
    Var
        RdsInst: IRdsDictionaryInstance;
        Search: IRdsDictionaryElementsSearch;
        Cond: IDimOrmCondition;
        Crit: IDimTextCriteria;
        Elems: IRdsDictionaryElements;
        Elem: IRdsDictionaryElement;
        i: Integer;
    Begin
        RdsInst := RdsDictionaryBox1.Source.Instance;
        Search := RdsInst.CreateSearch;
        Search.Attributes.Attributes := "Name;UserAttr";
        Crit := New DimTextCriteria.Create;
        Crit.CriteriaOptions := TextCriteriaOptions.SearchStringAttributes
            Or TextCriteriaOptions.FreeText;
        Crit.Text := "Доход насел";
        Cond := Search.Condition;
        Cond.SetTextCriteria(Crit);
        Elems := RdsInst.Elements;
        For i := 0 To Elems.Count - 1 Do
            Elem := Elems.Item(i);
            Debug.WriteLine(Elem.Name + ": Условиям поиска удовлетворяет - " +
                Cond.EvaluateRec(Elem.Record).ToString);
        End For;
    End Sub Button1OnClick;

После выполнения примера при нажатии на кнопку будет создан объект для поиска элементов справочника НСИ. Будет установлено условие, в соответствии с которым будет производиться поиск. После этого будет осуществлена проверка всех элементов на соответствии условиям поиска. Наименования элементов и результат проверки будут выведены в консоль среды разработки.

Пример Fore.NET

Для выполнения примера предполагается наличие .NET-формы, расположенной на ней кнопки с наименованием «Button1», компонента RdsDictionaryBoxNet с наименованием «RdsDictionaryBoxNet1», какого-либо компонента UiRdsDictionaryNet являющегося источником данных для «RdsDictionaryBoxNet1» и компонента TextBox с наименованием «TextBox1». В справочнике НСИ, который подключен к компоненту UiRdsDictionaryNet, имеются атрибуты «Name» и «UserAttr».

    Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
    Var
        RdsInst: IRdsDictionaryInstance;
        Search: IRdsDictionaryElementsSearch;
        Cond: IDimOrmCondition;
        Crit: DimTextCriteria;
        Elems: IRdsDictionaryElements;
        Elem: IRdsDictionaryElement;
        i: Integer;
        ElemList: List < string >;
    Begin
        RdsInst := RdsDictionaryBoxNet1.Source.Instance;
        Search := RdsInst.CreateSearch();
        Search.Attributes.Attributes := "Name;UserAttr";
        Crit := New DimTextCriteria();
        Crit.CriteriaOptions := TextCriteriaOptions.tecropSearchStringAttributes
            Or TextCriteriaOptions.tecropFreeText;
        Crit.Text := "Доход насел";
        Cond := Search.Condition;
        Cond.SetTextCriteria(Crit);
        Elems := RdsInst.Elements;
        ElemList := New List < string > ();
        For i := 0 To Elems.Count - 1 Do
            Elem := Elems.Item[i];
            ElemList.Add(Elem.Name + ": Условиям поиска удовлетворяет - " +
                Cond.EvaluateRec(Elem.Record).ToString());
        End For;
        TextBox1.Lines := ElemList.ToArray();
    End Sub;

После выполнения примера при нажатии на кнопку будет создан объект для поиска элементов справочника НСИ. Будет установлено условие, в соответствии с которым будет производиться поиск. После этого будет осуществлена проверка всех элементов на соответствии условиям поиска. Наименования элементов и результат проверки будут выведены в компонент «TextBox1».

См. также:

IDimOrmCondition