![]() |
|
Отбор в списке документов | ☑ | ||
---|---|---|---|---|
0
sol
11.07.12
✎
13:22
|
Платформа 8.2.14.540.
База УПП рел. 1.3.24.2, SQL-серверная, нетиповая. Уважаемые форумчане! Можно ли делать отбор в списке документов по полю, которое не является реквизитом документа? В документе есть реквизит типа справочника (к сожалению, не строка) и нужно сделать фильтрацию по виду отбора «Содержит». Для этого на тестовой базе я сделал дополнительное поле в форме списка, которое содержит наименование элемента справочника и не является реквизитом. Однако, по этому полю нельзя проводить фильтрацию. А так не хочется создавать новый реквизит в документе. |
|||
1
shuhard
11.07.12
✎
13:25
|
(0) в 10500 раз предлагаем отбор по списку, сформированного запросом с любым отбором
|
|||
2
sol
11.07.12
✎
13:27
|
(1) Вы не поняли меня. Под отбором я подразумевал пользовательский значок "Отбор и сортировка".
|
|||
3
sanja26
11.07.12
✎
13:28
|
индекируемре поле..
|
|||
4
sol
11.07.12
✎
13:31
|
(3) Каким образом?
|
|||
5
le_
11.07.12
✎
13:32
|
В управляемых формах можно сделать произвольный запрос для списка документов, вытащить это поле и отбор по нему будет устанавливаться обычным образом (СОДЕРЖИТ есть для текста).
|
|||
6
gosn1ck
11.07.12
✎
13:32
|
(4) там отбор только по индексируемым реквизитам документа. чего не понятного?
|
|||
7
sanja26
11.07.12
✎
13:34
|
запросом найди список нужных элементов справочника, а потом подставляй в отбор этот список
|
|||
8
sanja26
11.07.12
✎
13:35
|
видСравнения.ВСписке у тебя ведь есть наверно
|
|||
9
sol
11.07.12
✎
13:36
|
(7) Это можно. Но только это делается отдельной обработкой. А хочется значком "Отбор и сортировка".
|
|||
10
sanja26
11.07.12
✎
13:36
|
Процедура ПлательщикОкончаниеВводаТекста(Элемент, Текст, Значение, СтандартнаяОбработка)
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | Контрагенты.Ссылка |ИЗ | Справочник.Контрагенты КАК Контрагенты |ГДЕ | Контрагенты.Наименование ПОДОБНО &Наименование"; Запрос.УстановитьПараметр("Наименование", "%" + Текст + "%"); Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = Результат.Выбрать(); Значение = Новый СписокЗначений; Пока ВыборкаДетальныеЗаписи.Следующий() Цикл Значение.Добавить(ВыборкаДетальныеЗаписи.Ссылка); КонецЦикла; Элемент.СписокВыбора = Значение; СтандартнаяОбработка = Ложь; КонецПроцедуры |
|||
11
sanja26
11.07.12
✎
13:38
|
(9) тогда создавай реквизит наименование и индексируй его
|
|||
12
sanja26
11.07.12
✎
13:39
|
+(10) дальше устанавливаешь сам отбор в списке
|
|||
13
sol
11.07.12
✎
13:42
|
(10) Спасибо. Но в свойствах этого поля - элемент управление - пусто. К нему нельзя подцепить функцию по СОБЫТИЮ.
Задается значение этого поля так: Процедура ДокументСписокПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) ОформлениеСтроки.Ячейки.Площадка2.Значение = ДанныеСтроки.Площадка.Наименование; ОформлениеСтроки.Ячейки.Площадка2.Текст = ДанныеСтроки.Площадка.Наименование; КонецПроцедуры (11) Хочется без добавления реквизита в документ. |
|||
14
sol
11.07.12
✎
13:45
|
(13)+ Просто хочу удостовериться, что без добавления реквизита - такое невозможно.
|
|||
15
sol
11.07.12
✎
13:49
|
(11) Почему не хочу создавать новый реквизит? Потому что для заполнения этого реквизита нужно пересохранить все документы.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |