В процессе автоматизации розничных точек на базе 1С:Управление торговлей 11.5 (УТ 11.5) пользователи и администраторы часто сталкиваются с особенностями интерфейса Рабочего места кассира (РМК). В отличие от стандартных документов, таких как «Реализация товаров и услуг», форма РМК спроектирована по принципу максимального упрощения и минимизации лишней информации, чтобы не отвлекать кассира. Однако для многих бизнес-процессов отображение колонок Код и Артикул является критически важным для быстрой идентификации товара. Рассмотрим подробно, как решить задачу вывода этих полей, начиная от простых пользовательских настроек и заканчивая использованием расширений.
Прежде чем пытаться изменить форму РМК, нам необходимо убедиться, что использование артикулов и кодов в принципе разрешено в текущей информационной базе. Часто поля отсутствуют в выборе «Изменить форму» именно потому, что они отключены на уровне функциональных опций. Давайте проверим этот момент, пройдя по следующему пути:
Отображать артикул и Отображать код.Если данные флажки сняты, программа скрывает эти реквизиты практически во всех экранных формах. Установим их и проверим, появились ли нужные поля в настройках РМК. Если же настройки включены, но колонок все равно нет, перейдем к следующему шагу.
Многие пользователи ищут настройки в меню «Сервис» или специальных настройках РМК, забывая о стандартном механизме управления элементами формы 1С. Разберем, как добавить поля, если они предусмотрены в объекте, но скрыты. Для этого в открытом окне РМК выполним следующие действия:
Товары или СписокТоваров.Номенклатура.Артикул и Код нет в основном списке, нажмем правой кнопкой мыши на элементе Номенклатура и выберем команду Добавить поля.Артикул и Код (этот механизм позволяет выводить и другие наглядные дополнительные реквизиты товара).После нажатия «ОК» и «Применить» поля должны появиться в табличной части. Если кнопка «Добавить поля» неактивна или нужных реквизитов нет в списке, это означает, что разработчики УТ 11.5 ограничили состав данных в форме РМК для повышения производительности. В этом случае нам потребуется вмешательство в конфигурацию.
Начиная с версии 11.5, в УТ внедрена подсистема «Единое РМК», которая унифицирована с «Розницей 3.0» и «УНФ». Если в вашей базе используется именно этот механизм, настройки интерфейса могут управляться централизованно. Выясним, как это проверить:
Зайдем в раздел Продажи — Сервис — Настройки РМК. Здесь создается профиль настроек для конкретного кассового узла или пользователя. В карточке настройки перейдем на закладку Интерфейс. В некоторых релизах здесь присутствуют дополнительные опции по управлению видимостью реквизитов. Однако стоит помнить, что УТ 11.5 все же более жестко ограничивает кастомизацию РМК по сравнению с «Розницей», поэтому нужных галочек может не оказаться. В такой ситуации мы переходим к техническому решению через расширение.
Как упоминалось в обсуждении на форуме, снятие конфигурации с поддержки — это крайний и нежелательный метод. Правильным подходом будет создание расширения. Рассмотрим по шагам, что нужно сделать программисту:
Адаптация.РМК или ФормаРМК (в зависимости от конкретной версии подсистемы).Код и Артикул уже присутствуют в структуре формы в конфигураторе (как заметил автор Сообщения 1), нам нужно просто изменить их свойства. Установим свойства Видимость и Пользовательская видимость в значение Истина.Проанализируем ситуацию, если полей нет даже в конфигураторе на форме. Тогда нам нужно добавить их программно. Посмотрим на пример кода, который можно разместить в модуле формы расширения:
&НаСервере
Процедура Расш1_ПриСозданииНаСервереПосле(Отказ, СтандартнаяОбработка)
// Проверим, есть ли уже колонки на форме, чтобы избежать дублирования
Если Элементы.Найти("ТоварыАртикул") = Неопределено Тогда
// Добавляем поле Артикул в таблицу Товары
НовыйЭлемент = Элементы.Добавить("ТоварыАртикул", Тип("ПолеФормы"), Элементы.Товары);
НовыйЭлемент.Вид = ВидПоляФормы.ПолеВвода;
НовыйЭлемент.ПутьКДанным = "Объект.Товары.Номенклатура.Артикул";
НовыйЭлемент.Заголовок = "Артикул";
НовыйЭлемент.ТолькоПросмотр = Истина;
// Переместим колонку поближе к наименованию
Элементы.Переместить(НовыйЭлемент, Элементы.Товары, Элементы.ТоварыНоменклатура);
КонецЕсли;
КонецПроцедуры
Этот код программно добавляет колонку, связывая ее с реквизитом Артикул через объект Номенклатура. Использование метода Элементы.Переместить позволяет нам корректно расположить колонку в интерфейсе, чтобы кассиру было удобно с ней работать.
Бывают ситуации, когда вы включили видимость, но колонка остается пустой. Разберем причину. В современных версиях РМК данные могут подтягиваться не напрямую из табличной части документа ЧекККМ, а формироваться в виде временных коллекций (например, ТаблицаТоваров), которые заполняются программно в модуле обработки. Если в коде формирования этой коллекции не прописано получение артикула из базы данных, то визуальная колонка на форме будет просто пустой оболочкой.
В таком случае в расширении необходимо найти процедуру, отвечающую за добавление товара в корзину (например, ДобавитьТоварВКорзину или аналогичную), и убедиться, что при заполнении строки таблицы данных туда передаются нужные значения.
Резюмируем: для вывода колонок Код и Артикул в УТ 11.5 первым делом проверьте настройки НСИ и попробуйте добавить поля через Изменить форму. Если эти методы не помогают из-за особенностей релиза, используйте расширение конфигурации для управления свойством ПользовательскаяВидимость или программного создания элементов формы. Это обеспечит стабильность работы системы при последующих обновлениях типовой конфигурации.