Автор Тема: Фильтр по пустому полю  (Прочитано 218 раз)

Telos

  • Ученик
  • *
  • Сообщений: 6
  • Благодарностей 0
Фильтр по пустому полю
« : Июль 08, 2016, 02:26:04 pm »
Добрый день.
Есть Объект 1 в котором есть поле со ссылкой на Объект 2. Как в форме Объекта 1 отфильтровать список так, что отобразились все строки в которых не указаны ссылка на Объект 2.
Нашел два решения, но они оба полностью не решают проблему.
1) Можно сделать проверку через составное поле, а потом делать фильтрацию по составному полю, но проблема в том, значение составного поля меняется только после редактирования Объекта 1. А в моем случаи значение Объекта 2 в Объекте 1 меняется при редактировании внутри Объекта 2 (установлена связь один к одному в поле "Обратная связь"). Поэтому этот вариант мне не подходит.
2) Задать одно и тоже исходное значение Объекта 2 при создании в Объекте 1. А потом фильтровать по этому значению (т.е показать все поля у которых не разу не менялся Объект 2), но этот вариант тоже не подходит так как эта связь может появится, а потом исчезнуть и нужно, чтобы эта запись снова появлялась при фильтрации.
Какое еще может быть решение?

vladimir.runa

  • Главный модератор
  • Мастер
  • **
  • Сообщений: 341
  • Благодарностей 22
  • skype: vladimir.runa
Re: Фильтр по пустому полю
« Ответ #1 : Июль 08, 2016, 06:27:30 pm »
Да, фильтр по пустому полю пока отсутствует.
На данный момент незаполненное поле фильтра является признаком отсутствия фильтрации по нему.
О такой возможности периодически спрашивают, и реализация не представляет большой сложности. Но пока нет идеи, как это реализовать.

artem

  • Гость
Re: Фильтр по пустому полю
« Ответ #2 : Июль 14, 2016, 12:27:13 pm »
Столкнулся с похожей проблемой.

Тоже есть Объект1, в нем ссылка на Объект2. В Объекте2 есть поле Число. Требуется отфильтровать форму Объекта1 так, чтобы отобразить строки, в которых поле Число Объекта2 равно нулю или если Объект2 не задан.
Сделал в Объекте1 расчетное поле [Объект2.Число] и по нему фильтрую, но есть странность - при первом создании Объекта1 это поле [Объект2.Число] пустое, однако при повторном выборе Объекта1 значение поля [Объект2.Число] становится 0.

Можно бы сделать чтобы при первом создании записи Объект1, расчетное поле [Объект2.Число] было бы 0, если Объект2 не задан?

РУНАТВОРЕЦ.РФ

  • Партнёры
  • Посвященный
  • *
  • Сообщений: 85
  • Благодарностей 15
Re: Фильтр по пустому полю
« Ответ #3 : Июль 14, 2016, 02:40:35 pm »
Telos мог бы решить свою задачу, использовав особые свойства поля "Ссылка на поле" и фильтр по условию равенства этого поля "0" (ноль). Но... если объект не выбран (не указана ссылка на объект в поле "Объект", с которым связано поле "Ссылка на поле") тогда поле "Ссылка на поле" принимает некое значение (внешне похожее на значение "0"), по которому отфильтровать, доступными методами не получится, так как это значение не является "0" нолем. Вот если бы поле "Ссылка на поле" по умолчанию принимало значение "0", тогда можно было бы отфильтровать записи объекта по условию равенства "0" поля "Ссылка на поле".

artem

  • Гость
Re: Фильтр по пустому полю
« Ответ #4 : Июль 14, 2016, 03:11:49 pm »
Но... если объект не выбран (не указана ссылка на объект в поле "Объект", с которым связано поле "Ссылка на поле") тогда поле "Ссылка на поле" принимает некое значение (внешне похожее на значение "0")
Вот мне и хотелось бы определенности в значениях полей, где допустимо использовать ссылки на другие объекты (ссылка на поле, составное поле, расчетное), если такой объект не существует. Например для числовых полей это 0.

 

Яндекс.Метрика