Подбор по цене будет выглядеть так: введите на кассе число (цену для подбора), нажмите комбинацию клавиш, система показывает товары по этой цене.
Для настройки подбора нужно:
1) Зайти в редактор функции раскладки («Настройки» → закладка «Оборудование» → кнопка «Редактировать функции раскладки»)
2) Далее нужно выбрать функцию, которую мы заменим на «Подбор по цене». Например, подойдет функция «Детектор валют»(код: 107) группы «Основные».
3) В этой функции нужно заменить код на:
_Запрос = Новый Запрос();
_Запрос.Текст = "
|ВЫБРАТЬ
| ЦеныИОстаткиПоТоварам.Товар
|ИЗ
| РегистрСведений.ЦеныИОстаткиПоТоварам КАК ЦеныИОстаткиПоТоварам
|ГДЕ
| ЦеныИОстаткиПоТоварам.Цена = &Цена
| И ЦеныИОстаткиПоТоварам.КодСклада = &КодСклада
|УПОРЯДОЧИТЬ ПО ЦеныИОстаткиПоТоварам.Товар.Наименование";
_Запрос.УстановитьПараметр("Цена", ПолучитьГлавноеПолеВвода(1));
_Запрос.УстановитьПараметр("КодСклада", Кассир5_DataAccess.ПолучитьПОСТерминал().Склад.Код);
_Форма = МенеджерОбъектов.ПолучитьОбщийОбъект("Регистрация.ФормаВыбораНомер1");
_Форма.СписокЧеков.Очистить();
Для Каждого Стр Из _Запрос.Выполнить().Выгрузить() Цикл
_Форма.СписокЧеков.Добавить(Стр.Товар.Код, Стр.Товар.Наименование);
КонецЦикла;
Если _Форма.СписокЧеков.Количество() = 0 Тогда
ИнтерфОшибка("Товар не найден");
_Рез = Неопределено;
ИначеЕсли _Форма.СписокЧеков.Количество() = 1 Тогда
_Рез = _Форма.СписокЧеков[0];
Иначе
_Рез = _Форма.ОткрытьМодально();
КонецЕсли;
Если _Рез <> Неопределено Тогда
тФорма = ЭтаФорма;
МенеджерОбъектов.ПолучитьОбщийОбъект("AddIn.CashContext").ДобавитьПозициюПоКодуАртикулу(_Рез.Значение, "Код", "", -1, тФорма);
КонеЦЕсли;
По умолчанию детектору валют (уже подбору по цене) присвоено сочетание клавиш Shift+F10, это можно изменить установив флаг «Использовать свою раскладку клавиатуры» и нажав кнопку «Задать раскладку клавиатуры» на закладке «Оборудование» формы с настройками.