Имя: Пароль:
1C
 
Быстрый отбор строк в табличной части обработки с составным типом данных колонки
0 Boudybuilder
 
22.09.15
22:31
Здравствуйте!

В табличную часть загружаю прайсы всех поставщиков. На данный момент около 100 000 строк. Требуется осуществить поиск как в форме списка справочника контрагенты или номенклатура в типовых.

Но, колонка номенклатура - составной тип (Строка и справочник номенклатура), поэтому фильтровать по содержит не получается, так как отбирает или только с типом строка, или номенклатура.

А хотелось бы как в запросе по подобно "%Apple%iph%6" и находило все строки где упоминается: Apple iPhone 6, Apple iPhone 6s, Apple iPhone 6 plus. Ну это как пример.

И второе, надо делать поиск по нескольким колонкам.

Так что, только запросом?
1 фобка
 
22.09.15
22:35
Подобно - это уже сравнение со строкой
2 Boudybuilder
 
22.09.15
22:41
Но все же?
Только запросом?
3 фобка
 
22.09.15
22:46
(2) это поле - да. В чем трудность? Вывел строку отбора на форме, при изменении обновил отбор по идентификатору строки из списка полученного запросом к тч
4 Boudybuilder
 
22.09.15
22:49
(3) Спасибо. Значит из запроса нужно получить список идентификаторов строки? Но в табличной части это НомерСтроки , а по ней отбор не проходит.
5 фобка
 
22.09.15
22:51
(4) ну да, свой счетчик значит в отдельном поле
6 Boudybuilder
 
22.09.15
22:52
И еще, чтобы каждый раз не указывать табличную часть в параметрах запроса как временная таблица, то может лучше один раз запихнуть ее в менеджер временных таблиц, а потом только запросом к ней обращаться при каждом следуюшем поиске...?
7 Boudybuilder
 
22.09.15
22:54
СписокЗначений.ЗагрузитьЗначения(Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("НомерСтроки"));

А потом как мне этот список значений применить к табличной части? Ведь там я пробовал устанавливать отбор для номер строки, и выдавало ошибку ,что поле не найдено. Или я не правильно делал отбор по идентификатору строки?
8 фобка
 
22.09.15
22:55
(6) на 100 тыс строк надо подумать.. Еще вариант - в тч вывести поле "представление" с синонимом товар, а реальное скрыть. По нему и отбирать штатным отбором. По нажатию если нужно прописать процедуру открытия значения
9 фобка
 
22.09.15
22:57
(7) "номерстроки" не идентификатор строки
10 Boudybuilder
 
22.09.15
23:04
(9) Подсказку принял.
(8) Может так и сделаю. Табличную часть можно отбирать штатным отбором по значению всех колонок, но с соединение как в запросе не И , а ИЛИ.

То есть если колонка1 содержит ВАСЯ или колонка2 содержит ВАСЯ. ?
Если нет, то тогда может я создам дополнительную колонку с строкой со всех нужных колонок, и по ней поиск буду делать. Как такой вариант?




И возможен ли отбор по маске? тоже как в запросе, чтобы в начале, конце и вместо пробела поисковой фразы были любые символы?
11 фобка
 
22.09.15
23:06
Остальные отборы штатно. Иначе под каждый отбор надо будет нарисовать новую строку отбора на форме и учитывать в общем запросе
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.