В процессе работы с конфигурацией 1С:Розница 2.2, особенно при использовании тонкого клиента через веб-сервер Apache, системные администраторы и пользователи часто сталкиваются со специфической проблемой. При попытке печати ценников или этикеток открывается стандартная форма предварительного просмотра БСП (Библиотеки стандартных подсистем), однако поле «Количество копий» по умолчанию содержит значение 0. Попытка изменить его на 1 и нажать кнопку «Печать» ни к чему не приводит — система просто игнорирует команду. При этом, если зайти в режим расширенного просмотра (через иконку с лупой), печать проходит успешно.
В данной статье мы подробно разберем причины возникновения этой ошибки и рассмотрим несколько эффективных способов ее решения, от простых манипуляций в интерфейсе до полной очистки кэша и настроек пользователя.
Проанализируем ситуацию: почему в поле количества копий появляется ноль? Основная причина кроется в механизме сохранения параметров печати в системном хранилище настроек 1С. Когда пользователь успешно печатает документ, система запоминает выбранный принтер, ориентацию страницы и количество копий для данного конкретного макета. Если в какой-то момент произошел программный сбой (например, нестабильное соединение с веб-сервером Apache или временная недоступность принтера), в реестр настроек может записаться некорректное значение 0.
При использовании Apache проблема усугубляется спецификой передачи заголовков по протоколу HTTP/HTTPS. Если в конфигурационном файле веб-сервера некорректно настроены MIME-типы или возникают задержки при инициализации COM-объектов принтера на стороне клиента, форма БСП может не получить актуальные данные от драйвера принтера и подставить «пустые» значения из кэша настроек.
Это самый щадящий метод, который позволяет не удалять профиль пользователя целиком. Рассмотрим пошагово, как сбросить проблемные настройки:
Настройки печати табличных документов или относятся к обработке Печать этикеток и ценников.После этой процедуры при следующем открытии формы печати система заново инициализирует параметры принтера по умолчанию, и значение копий должно стать равным «1».
Существует интересный способ «протолкнуть» корректные настройки в базу данных без обращения к средствам администрирования. Этот метод особенно полезен для 1С:Розница и КА 2.5.
Выполним следующие действия:
Как показывает практика, после такого «группового» исправления печать одиночных ценников начинает работать в штатном режиме.
Если манипуляции с настройками внутри базы не помогли, значит, проблема локализована в файлах кэша на компьютере пользователя. Проанализируем ситуацию: тонкий клиент сохраняет часть конфигурационной информации в папках AppData.
Разберем процедуру полной очистки кэша вручную:
%USERPROFILE%\AppData\Local\1C\1cv8\.%USERPROFILE%\AppData\Roaming\1C\1cv8\ и проделаем то же самое.Важно: При этом методе будут сброшены настройки положения окон, история выбора в полях ввода и другие персональные удобства пользователя, но именно это зачастую является единственным способом устранить «зависшие» параметры печати, которые не поддаются очистке через стандартный интерфейс.
Если проблема носит массовый характер у всех пользователей, работающих через веб-клиент, стоит обратить внимание на настройки сервера. Проверим конфигурационный файл httpd.conf.
Иногда помогает добавление специфических MIME-типов, чтобы Apache корректно обрабатывал ответы от сервера 1С, содержащие структуры параметров печати. Также убедимся, что имя принтера, установленного по умолчанию в ОС, не превышает 32 символов и не содержит спецсимволов. Веб-интерфейсы чувствительны к именам типа HP_LaserJet_Pro_M15w_(Copy_1). Попробуем переименовать принтер в простое HP_M15.
Если вы имеете доступ к конфигуратору, можно разово запустить код для очистки настроек печати через консоль кода или внешнюю обработку. Посмотрим на пример реализации удаления настроек табличного документа:
Процедура ОчиститьНастройкиПечатиПользователя(ВыбранныйПользователь)
// Очистка настроек печати табличных документов в системном хранилище
КлючОбъекта = "Общее/НастройкиПечатиТабличногоДокумента";
ХранилищеСистемныхНастроек.Удалить(КлючОбъекта, , ВыбранныйПользователь.Имя);
Сообщить("Настройки печати для пользователя " + ВыбранныйПользователь.Имя + " успешно сброшены.");
КонецПроцедуры
Использование метода ХранилищеСистемныхНастроек.Удалить гарантирует, что при следующем обращении к объекту ТабличныйДокумент, система создаст новую чистую структуру параметров, где количество копий по умолчанию будет равно единице.
Подведем итог: ошибка «0 копий» в 1С:Розница 2.2 — это следствие некорректного сохранения кэша параметров печати. Для исправления ситуации мы рекомендуем начинать с очистки настроек через интерфейс обслуживания, затем пробовать групповое изменение количества копий в форме печати, и только в крайнем случае переходить к удалению локального кэша в папках AppData. При работе через Apache также критически важно следить за краткостью и корректностью имен принтеров в операционной системе.