Имя: Пароль:
1C
 
Как исключить из поиска невидимые поля ДС?
0 RomaH
 
12.07.24
12:16
Предположим - есть ДС с произвольным запросом к справочнику "Номенклатура"

Наименование, Артикул, Код

На Форму выведены только Наименование и Артикул

но Ctrl+F ищет и по коду

1С:Предприятие 8.3 (8.3.24.1342)
1 JanK
 
12.07.24
13:19
(0) Запретить отбор по коду - тогда и поиск станет недоступен. Запретить можно через метод списка УстановитьОграниченияИспользованияВОтборе (или галками если режим совместимости 8.3.19+)
2 RomaH
 
12.07.24
13:59
хм, фишка в том, что дин список полностью кодом добавляется на форму

и после добавления
ЭтаФорма["РеквизитСписокПодбор"].Поля

пусто - нет в них ничего
соответсвенно
ЭтаФорма["РеквизитСписокПодбор"].Поля.Найти("ОписаниеУслуги").ОграничениеИспользования.Условие

говорит - идите лесом

вопрос - а когда поля появятся?
3 RomaH
 
12.07.24
14:19
ПолеОписаниеУслуги = ЭтаФорма.РеквизитСписокПодбор.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных"));
        ПолеОписаниеУслуги.ПутьКДанным = "ОписаниеУслуги";
        ПолеОписаниеУслуги.Поле = "ОписаниеУслуги";
        
        ЭтаФорма.РеквизитСписокПодбор.Поля.Найти("ОписаниеУслуги").ОграничениеИспользования.Условие = Истина;


пришлось и поле добавить

но так себе решение, теперь это поле в отбор не добавить...
4 Лирик
 
12.07.24
14:49
Попробуйте сделать поле код не обязательным, хотя я могу ошибаться.
5 JanK
 
12.07.24
16:49
(3) можно использовать УстановитьОграниченияИспользованияВОтборе (его в какой-то момент ошибочно объявили устаревшим, но уже должны были вернуть обратно) - тогда не нужно поле добавлять
6 RomaH
 
14.07.24
00:36
(5) так так и сделал, но еще раз - тогда в настройке списка нельзя отбор по нему установить
7 RomaH
 
14.07.24
00:37
(4) чаво?
8 JanK
 
15.07.24
08:36
(6) >тогда в настройке списка нельзя отбор по нему
установить

Да, поиск отдельно от отбора не настраивается. Потому что (в текущей парадигме) это по сути другая форма для отбора.

А зачем нужно запрещать поиск и оставлять при этом отбор?
9 Лирик
 
15.07.24
09:54
(7) Виноват, не тот термин применил. Если у поля динамического списка снять признак "Использовать всегда", то при видимой колонке поиск по этой колонке будет осуществляться, а если снять видимость колонки, то не будет.
З.Ы. Причем отбор по невидимой колонке будет возможен.
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн