Программное добавление в форму подбора: полей Поиска по цене и Фильтрации товара без остатков (Расширение конфигурации)

10.03.18

Учетные задачи - Розничная торговля

Стандартный подбор заточен под работу со сканером ШК(штрих-кодов) и не очень удобен для ручного ввода товара в чек, что актуально для небольших магазинчиков с широким ассортиментом мелкого товара, на который и ШК некуда поставить. Приходится часто открывать форму расширенного поиска и совершать массу лишних действий. Данная доработка направлена на исключение лишних телодвижений при фильтрации товара по цене и скрытия товара без остатков.

Скачать исходный код

Наименование Файл Версия Размер
Программное добавление в форму подбора: полей Поиска по цене и Фильтрации товара без остатков (Расширение конфигурации).:
.cfe 78,33Kb
6
.cfe 78,33Kb 6 Скачать

Готового решения не нашел, поэтому решил допилить самостоятельно.

Расширение сделано для конфигурации "Розница для Беларуси, редакция 2.2".

Часть материала взята отсюда //infostart.ru/public/122253/ часть не помню откуда, остальное сам.

Добавляем Расширение конфигурации.

В него копируем интересующую нас форму подбора и создаем процедуру при Открытии в которой указываем вызов процедуры для создания поля формы:

Процедура РасшРМКпоискПоЦене_ПриОткрытииПосле(Отказ)
	СоздатьПолеНаСервере(); 
КонецПроцедуры

Добавляем саму процедуру создания поля:

Процедура СоздатьПолеНаСервере()
	//Добавляем реквизит
	нРеквизиты = Новый Массив;
	КвалификаторыЧисла = Новый КвалификаторыЧисла(10, 2, ДопустимыйЗнак.Неотрицательный);
	РеквизитПоиск = Новый РеквизитФормы("ПоискПоЦене", Новый ОписаниеТипов("Число",КвалификаторыЧисла), , "Поиск по цене", Истина);
    нРеквизиты.Добавить(РеквизитПоиск); 
	ИзменитьРеквизиты(нРеквизиты); 	
	//Добавляем поле ввода
	Элемент = ЭтаФорма.Элементы.Добавить("ПоискПоЦене", Тип("ПолеФормы"), ЭтаФорма.Элементы.ГруппаПоиска);
	Элемент.Вид = ВидПоляФормы.ПолеВвода;
	Элемент.ПутьКДанным = "ПоискПоЦене";  
	Элемент.Заголовок="Найти по цене";
	Элемент.Подсказка="(для отключения введите '0' и [Enter])";
	Элемент.УстановитьДействие("ПриИзменении", "НайтиПоЦене");  
КонецПроцедуры    

Процедура, отключающая отбор

если он уже использовался ранее

Процедура ОтключитьОтборПоПолюКомпоновки(Имя)
	Для Каждого ЭлементОтбора Из КомпоновщикНастроек.Настройки.Отбор.Элементы Цикл
		Если ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(Имя)  Тогда 
			ЭлементОтбора.Использование = Ложь;
		КонецЕсли;
	КонецЦикла;
КонецПроцедуры

и установки отбора заново

Процедура УстановитьОтборПоПолюКомпоновки(Имя,Значение,ВидСравнения,Булв)
	ЭлементОтбора = КомпоновщикНастроек.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(Имя); 
	ЭлементОтбора.ВидСравнения = ВидСравнения; 
	ЭлементОтбора.ПравоеЗначение = Значение; 
	ЭлементОтбора.Использование = Булв; 
КонецПроцедуры 

Затем собственно саму процедуру, установленную для поля ПриИзменении:

Процедура НайтиПоЦене()   
	ЧтоИскать=Число(ЭтаФорма.Элементы.ГруппаПоиска.ПодчиненныеЭлементы.ПоискПоЦене.ТекстРедактирования);
	ЕстьОтбор = Истина;  
	ДоступноеПоле = КомпоновщикНастроек.Настройки.Отбор.ДоступныеПоляОтбора.Элементы.Найти("РозничнаяЦена").Поле;
	ОтключитьОтборПоПолюКомпоновки(ДоступноеПоле);// отключаем отбор если он был уже использован
	Если НЕ Число(ЧтоИскать)=0 Тогда
		ВС = ВидСравненияКомпоновкиДанных.Равно;
		Исп = Истина;  
		УстановитьОтборПоПолюКомпоновки(ДоступноеПоле,ЧтоИскать,ВС,Исп);// и устанавливаем отбор наново
	КонецЕсли; 	
	ВыполнитьРасширенныйПоискПоСКД(); //вызов процедуры из формы подбора в самой конфигурации
КонецПроцедуры 

Аналогично поступаем с отключением нулевых остатков.

создаем:

Процедура СоздатьПолеНаСервере()
	//Добавляем реквизит 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	РеквизитФлаг = Новый РеквизитФормы("НольНеПоказывать", Новый ОписаниеТипов("Булево"), , "Ноль не показывать", Истина);
	нРеквизиты.Добавить(РеквизитФлаг); 	
	ИзменитьРеквизиты(нРеквизиты);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	//Добавляем флажок
	Флаг = ЭтаФорма.Элементы.Добавить("НольНеПоказывать", Тип("ПолеФормы"), ЭтаФорма.Элементы.ГруппаПоиска);
	Флаг.Вид = ВидПоляФормы.ПолеФлажка;
	Флаг.ПутьКДанным = "НольНеПоказывать";  
	Флаг.Заголовок="Только с остатками";
	Флаг.Подсказка="(для услуг отключить)";  
	Флаг.УстановитьДействие("ПриИзменении", "СкрытьНулевыеОстатки");
КонецПроцедуры    

и дописываем процедуру действия ПриИзменении:

Процедура СкрытьНулевыеОстатки()  
	ПолеПоиска = "";  
	ЕстьОтбор = Истина;  
	ДоступноеПоле = КомпоновщикНастроек.Настройки.Отбор.ДоступныеПоляОтбора.Элементы.Найти("ОстатокПоМагазину").Поле; 
	ВС = ВидСравненияКомпоновкиДанных.Больше;
	Исп=ЭтаФорма.НольНеПоказывать;
	ОтключитьОтборПоПолюКомпоновки(ДоступноеПоле);  
	УстановитьОтборПоПолюКомпоновки(ДоступноеПоле,0,ВС,Исп);	
	ВыполнитьРасширенныйПоискПоСКД(); 
КонецПроцедуры   

Добавляем в ПриОткрытии:

Процедура РасшРМКпоискПоЦене_ПриОткрытииПосле(Отказ)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	ЭтаФорма.НольНеПоказывать=Истина;//если чаще подбор услуг то не надо
	СкрытьНулевыеОстатки();
КонецПроцедуры

P.S. Если кому очень надо вышлю на e-mail, Viber. Skype или Почтой :-), напишите в комментах или в личку куда!?

Расширение Система компоновки данных СКД подбор товара Розница РМК по цене остатки нулевые

См. также

Автоматический заказ поставщику в 1С: загрузка прайсов и анализ цен поставщиков для УТ 10.3, УТ 11, КА2, УНФ, УПП, ERP, Розница 2

Бюджетирование и планирование Оптовая торговля Розничная торговля Логистика, склад и ТМЦ Анализ продаж Платформа 1С v7.7 Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

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

28500 руб.

21.04.2017    91164    111    40    

199

ККТ-ОНЛАЙН 54-ФЗ: Обработка для работы онлайн касс АТОЛ, ШТРИХ, VIKI PRINT и т.д. МАРКИРОВКА (Разрешит. режим) + ЭКВАЙРИНГ + БЕСПЛАТНЫЙ ДЕМО

ККМ Кассовые операции Розничная торговля Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Бухгалтерия государственного учреждения 1С:Бухгалтерия 1.6 1С:Бухгалтерия автономного учреждения 1С:CRM ПРОФ, КОРП Россия Платные (руб)

Универсальная обработка для обслуживания любых фискальных регистраторов (ККТ), в том числе Веб сервер АТОЛ. Работает в соответствии с 54-ФЗ. (ФФД 1.0, ФФД 1.05, ФФД 1.1). Подключайте любую онлайн кассу к практически любой конфигурации. Нет необходимости обновлять 1С. Можно бесплатно скачать и протестировать. Может работать одновременно с несколькими онлайн-кассами, либо одной с разных рабочих мест. (через RDP, TCP\IP или веб-сервер) Позволяет разделить один чек сразу на несколько ККТ или на несколько систем налогообложения. Поддерживает разрешительный режим. Можно настроить собственный шаблонов чека. Можно использовать эквайринг там, где он не поддерживается. Работает на LINUX и Windows ЭМУЛЯТОР + ЭКВАЙРИНГ + МАРКИРОВКА + ПОДДЕРЖКА ФФД 1.2

6000 руб.

27.02.2017    768920    4696    9504    

2794

ЕГАИС++. Опт, производство, импорт

Оптовая торговля Розничная торговля Обмен с ГосИС Платформа 1С v8.3 1С:Управление торговлей 10 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Россия Бухгалтерский учет Управленческий учет Акцизы Платные (руб)

Полнофункциональное расширение (ранее известное как Модуль 1С-ЕГАИС) для взаимодействия типовых конфигураций 1С и ЕГАИС, предоставляющее максимум возможностей по работе с УТМ. Получение и отправка ТТН, отправка акта о постановке на баланс и акта о списании. Получение остатков. Загрузка и сопоставление номенклатуры и контрагентов. Оправка в ЕГАИС отчетов о производстве и импорте.

8970 руб.

15.12.2015    166693    704    362    

391

Загрузка номенклатуры из Excel в УТ11, КА 2, ERP 2, Розница 2. Дополнительные реквизиты и сведения, характеристики, картинки, цены, остатки

Загрузка и выгрузка в Excel Розничная торговля Логистика, склад и ТМЦ Ценообразование, анализ цен Прайсы Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Розница 2 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Загрузка из файлов xls, xlsx, ods, csv, mxl в УТ11, КА 2, ERP 2, Розница 2. Задействованы все возможности конфигурации - заполнение реквизитов номенклатуры, дополнительных реквизитов и сведений, характеристики, доп.реквизиты и сведения характеристик. Дополнительные обработки для расширения возможностей.

10560 руб.

29.10.2014    211589    630    526    

446

54-ФЗ и Разрешительный режим. Обработки для подключения онлайн-касс к 1С 8 (поддержка Маркировки) + Эмулятор + ФФД 1.2

ККМ Кассовые операции Розничная торговля Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Бухгалтерия государственного учреждения 1С:Бухгалтерия автономного учреждения Россия Платные (руб)

Обработка осуществляет обслуживание ККТ АТОЛ, Штрих и Меркурий для конфигураций "УТ 10.3", "КА 1.1", "УПП 1.3", "Розница 1.0", "БП 2.0" и других отраслевых решений, построенных на основе указанных выше конфигурациях. Поддерживает возможность параллельно пробития чеков на одной ККМ несколькими пользователями. Поддерживает Веб-сервер Атол. Соответствует требованиям 54-ФЗ. Поддерживает ФФД 1.0, 1.05, 1.1 и 1.2. Разделяет чеки по нескольким СНО. Поддерживает механизмы подключения ККТ по TCP/IP, для работы через RDP или интернет. Поддержка маркировки и разрешительного режима.

5400 руб.

25.05.2015    319523    1854    3014    

998

Интеграция 1С со СберМаркетом для 1С:Розница 2.3/3.0, УНФ 3.0, УТ 11.4/11.5, КА 2.4/2.5

Розничная торговля Маркетплейсы Платформа 1С v8.3 1С:Розница 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Розничная и сетевая торговля (FMCG) Россия Управленческий учет Платные (руб)

Модуль для интеграции 1С с сервисом СберМаркет. Предназначен для обмена данными из торговых точек розничных сетей из баз данных 1С в базы данных СберМаркет, для отображения информации по товарам, остаткам, ценам, заказам и статусам заказов. Позволяет оперативно начать работать с сервисом СберМаркет, существенно повысить продажи и лояльность клиентов.

25000 руб.

14.10.2022    7776    6    12    

5
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. borlog 5 10.03.18 15:05 Сейчас в теме
Добавил квалификатор числа, в поле ПоискПоЦене, так как в версиях 1с отличных от 8.3.10.2580, невозможно было искать товар с ценой меньше 1 (точнее можно, но задом наперед: 12-> ,12 -> 0,12).
КвалификаторыЧисла = Новый КвалификаторыЧисла(10, 2, ДопустимыйЗнак.Неотрицательный);
РеквизитПоиск = Новый РеквизитФормы("ПоискПоЦене", Новый ОписаниеТипов("Число",КвалификаторыЧисла), , "Поиск по цене", Истина);
2. пользователь 26.09.19 11:14
Сообщение было скрыто модератором.
...
3. user782202 26.12.19 07:00 Сейчас в теме
Здравствуйте, можно получить Ваше расширение поиска по цене для Розница 2.2 на почту: yulia.kuzmina@mail.ru.
4. пользователь 26.12.19 18:13
Сообщение было скрыто модератором.
...
5. Cezar66 03.02.20 19:51 Сейчас в теме
Здравствуйте! Можно получить Ваше расширение фильтра поиска по остатку для 1с Розница 2.2 Аптека на почту hak@inbox.ru
6. pankov.s13 25.02.20 17:15 Сейчас в теме
Добрый день, если сможете прислать расширение на почту pankov.s13@gmail.com буду очень признателен!
9. Raideres 8 20.03.21 11:14 Сейчас в теме
(6)при начале поиска мы вводим какой либо искомый текст и срабатывает типовая процедура очиститьотборы так что необходимо еще править и там
7. пользователь 18.05.20 03:01
Сообщение было скрыто модератором.
...
8. пользователь 22.07.20 08:02
Сообщение было скрыто модератором.
...
10. пользователь 18.04.21 12:30
Сообщение было скрыто модератором.
...
11. пользователь 02.06.22 15:37
Сообщение было скрыто модератором.
...
12. пользователь 13.09.22 18:52
Сообщение было скрыто модератором.
...
13. пользователь 15.11.22 22:53
Сообщение было скрыто модератором.
...
14. пользователь 15.11.22 22:54
Сообщение было скрыто модератором.
...
Оставьте свое сообщение