Расширение функционала поиска по справочникам УТ 11

10.07.13

Разработка - Механизмы платформы 1С

Доработка конфигурации для быстрого поиска по реквизитам справочников.

Всем добрый день.

Данная статья предназначена для ускорения понимания разработки. Не секрет что многие предприятия "допиливают" под себя "Управление торговлей" и самой "страдаемой" формой являются формы списков справочников. Одно из требований заказчиков, это организация поиска по наименованию значений реквизитов справочника.

Рассмотрим это на примере справочника "Номенклатура".

Одно из требований заказчика было организация быстрого отбора по значению наименования реквизита "Производитель"

Способ установки фильтра из "Все действия" клиента не устроил.

Решения данной задачи наименьшими изменениями было осуществлено добавлением строк в запрос в функцию "ТекстЗапросаПоискаПоОбласти" в общем модуле "ПодборТоваровСервер".

//ТекстЗапроса = "
//|ВЫБРАТЬ ПЕРВЫЕ %МаксКоличество%
//| СправочникНоменклатура.Ссылка КАК Значение,
//| ""Номенклатура"" КАК Метаданные
//|ИЗ
//| Справочник.Номенклатура КАК СправочникНоменклатура
//|ГДЕ
//| (СправочникНоменклатура.Наименование %ВидСравнения% &СтрокаПоиска
//| Или СправочникНоменклатура.НаименованиеПолное %ВидСравнения% &СтрокаПоиска
//| Или СправочникНоменклатура.КодДляПоиска %ВидСравнения% &СтрокаПоиска
//| Или СправочникНоменклатура.Артикул %ВидСравнения% &СтрокаПоиска)";

ТекстЗапроса = "
|ВЫБРАТЬ ПЕРВЫЕ %МаксКоличество%
| СправочникНоменклатура.Ссылка КАК Значение,
| ""Номенклатура"" КАК Метаданные
|ИЗ
| Справочник.Номенклатура КАК СправочникНоменклатура
|ГДЕ
| (СправочникНоменклатура.Наименование %ВидСравнения% &СтрокаПоиска
| Или СправочникНоменклатура.НаименованиеПолное %ВидСравнения% &СтрокаПоиска
| Или СправочникНоменклатура.КодДляПоиска %ВидСравнения% &СтрокаПоиска
| Или СправочникНоменклатура.Артикул %ВидСравнения% &СтрокаПоиска
| 
Или СправочникНоменклатура.Производитель.Наименование %ВидСравнения% &СтрокаПоиска)"; // решена проблема с производителем

Плюсом данного метода является минимальное изменение конфигурации, то есть мы не влезаем в интерфейсную часть и при грамотном комментирование имеем наименьшие проблемы с обновлением.

Данный метод так же подходит и к прочим справочникам.

См. также

Механизмы платформы 1С Программист Стажер Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Эта небольшая статья - некоторого рода шпаргалка по файловым потокам: как и зачем с ними работать, какие преимущества это дает.

23.06.2024    7464    bayselonarrend    20    

154

Механизмы платформы 1С Программист Стажер Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Пример использования «Сервисов интеграции» без подключения к Шине и без обменов.

13.03.2024    5947    dsdred    16    

80

Механизмы платформы 1С Программист Стажер Платформа 1С v8.3 Бесплатно (free)

Все мы используем массивы в своем коде. Это один из первых объектов, который дают ученикам при прохождении обучения программированию. Но умеем ли мы ими пользоваться? В этой статье я хочу показать все методы массива, а также некоторые фишки в работе с массивами.

24.01.2024    17681    YA_418728146    26    

71

Перенос данных 1C Механизмы платформы 1С Системный администратор Программист Стажер Платформа 1С v8.3 Бесплатно (free)

Вы все еще регистрируете изменения только на Планах обмена и Регистрах сведений?

11.12.2023    11230    dsdred    44    

130

Механизмы платформы 1С Программист Бесплатно (free)

Язык программирования 1С содержит много нюансов и особенностей, которые могут приводить к неожиданным для разработчика результатам. Сталкиваясь с ними, программист начинает лучше понимать логику платформы, а значит, быстрее выявлять ошибки и видеть потенциальные узкие места своего кода там, где позже можно было бы ещё долго медитировать с отладчиком в поисках источника проблемы. Мы рассмотрим разные примеры поведения кода 1С. Разберём результаты выполнения и ответим на вопросы «Почему?», «Как же так?» и «Зачем нам это знать?». 

06.10.2023    23763    SeiOkami    48    

135

Механизмы платформы 1С Системный администратор Платформа 1С v8.3 Бесплатно (free)

Начиная с версии платформы 8.3.22 1С снимает стандартные блокировки БД на уровне страниц. Делаем рабочий скрипт, как раньше.

14.09.2023    18835    human_new    27    

80

WEB-интеграция Универсальные функции Механизмы платформы 1С Программист Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

При работе с интеграциями рано или поздно придется столкнуться с получением JSON файлов. И, конечно же, жизнь заставит проверять файлы перед тем, как записывать данные в БД.

28.08.2023    14740    YA_418728146    7    

166
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Serj1C 483 10.07.13 07:13 Сейчас в теме
С производителем проблема решена.
Порождена новая - с производительностью
2. glime 106 10.07.13 08:42 Сейчас в теме
На производительность не влияет, проверено на 98 тыс номенклатуры со 150 производителями, данный запрос исполняется на сервере и добавление даже вложенного запроса(обращение к параметру реквизита через точку) не сильно повлияет на производительность.
5. w-divin 10.07.13 11:04 Сейчас в теме
(2)

а как будет если имеем порядка 500 тыщ номенклатуры и 15 тыщ производителей?
а ежели по такому принципу подобавлять фильтры не тока по производителю, а по другим реквизитам? на производительности скажется очень даже заметно...
6. glime 106 10.07.13 11:43 Сейчас в теме
(5) w-divin, очень интересно было бы поэкспериментировать, но у меня нет такой базы, попробую сечас обработками догнать экспериментальную до такого количества.
7. glime 106 10.07.13 15:31 Сейчас в теме
(5) w-divin, буду краток, эксперимент проведен удачно.
8. Serj1C 483 11.07.13 09:10 Сейчас в теме
(7) Даже с видом сравнения "Подобно" ?
Ваш запрос не удовлетворяет как минимум двум пунктам Типичных причин неоптимальной работы запросов
9. glime 106 12.07.13 11:09 Сейчас в теме
(8) так "подобно" использоваться и в стандартной конфигурации, запрос отличается только одной строчкой.
К сожалению не могу опубликовать данную базу, так как в ней содержится информация клиента. По принципу не ухудшить показатели типового решения, так тут практически прокатывает.
3. vic777tor 10.07.13 08:47 Сейчас в теме
"РеквИзит" пишется через "и", а не "РеквЕзит".
"то есть мы не влазием" - а "влазиЕм" это как?
4. glime 106 10.07.13 09:16 Сейчас в теме
Оставьте свое сообщение