...

Фильтрация связанных объектов

Тема в разделе "Разработчикам", создана пользователем Ruslan, 3 май 2020.

  1. Ruslan

    Ruslan New Member

    Коллеги приветствую подскажите примеры фильтрации связанных объектов при выборе из выпадающего списка. Есть справочник с наименованиями, в нём ещё одно свойство с типом объект многие ко многим, у каждого наименования свой список, как мне отфильтровать их чтобы при выборе одного наименования отображался список только тех которые относятся к нему. Обработчик на форме при выборе нужен
     
  2. pushkarev

    pushkarev Active Member

    В базе знаний есть статья на эту тему: https://www.elma-bpm.ru/KB/article-5781.html
    Но у вас я так понимаю есть нюанс в том, что связь построена через свойство многие ко многим. Тут можно поступить двумя способами:
    1. Изменить объектную модель и вместо связи многие ко многим в справочнике с наименованиями, сделать в справочнике объектов поле типа один ко многим, указывающее на справочник наименований. Если у вас там на самом деле связь многие к одному, а не многие ко многим, то это предпочтительный вариант и статья из базы знаний вам полностью подойдет.
    2. Если у вас по логике все таки отношение многие ко многим. То тогда вам нужно будет указать немного другой фильтр для поля типа справочник объектов. Фильтр должен быть примерно таким:
    Код:
    context.ПолеВыбораНаименований != null ? string.Format("Id in (FROM НазваниеСправочникаНаименований SELECT ПолеМногиеКоМногимДляВыбораОбъектов WHERE Id = {0})", context.ПолеВыбораНаименований.Id.ToString()) : ""
     

Поделиться: