Печать на ККТ текстового документа из УТ 10.3

25.05.18

Учетные задачи - Кассовые операции

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

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование SM По подписке [?] Купить один файл
Печать на ККТ текстового документа из УТ 10.3:
.zip 283,84Kb
38
38
1 SM
Скачать Купить за 1 850 руб.

Иногда кассиру, оператору требуется напечатать для клиента какой-либо текстовый документ, например, предварительный заказ. Удобно это делать на контрольно-кассовой технике, которая уже установлена на рабочем месте. При работе с фискальными регистраторами (ФР) обычно это не вызывает сложностей. Рассмотрим вариант печати нефискального документа на ККТ для УТ 10.3.

На самом деле в конфигурации УТ 10.3 на уровне общих модулей уже все необходимое есть, остается это правильно собрать и исполнить, но при этом в обработках обслуживания торгового оборудования для ККТ с передачей данных, по крайней мере для Штрих-м и Атол, нет необходимых функций.  Итак, из конфигурации нам понадобиться следующие ключевые процедуры/функции:

  • ПодключаемоеОборудованиеУниверсальныйДрайверКлиент.ВыполнитьКоманду - универсальная процедура для подачи команды на ККТ, в частности нам понадобится для печати команда PrintTextDocument;
  • МенеджерОборудованияКлиентСервер.ПараметрыТекстовойСтрокиЧека - для формирования строк для печати на ленте;
  • Остальное можно уже делать по аналогии с печатью чека на ККТ из документ ЧекККМ процедуры модуля документа ПровестиИРаспечататьЧек.

Для единообразия дополним существующую обработку обслуживания ККТ функцией печати текстового документа:

Функция НапечататьТекстовыйДокумент(Объект, ПараметрыЧека, ШиринаСтроки = 32) Экспорт
	
	ПолучитьПараметрыККТ(Объект);
	
	мПараметрыПодключения.Вставить("ПараметрыРегистрации", Объект.ВыходныеПараметры);
	мПараметрыПодключения.Вставить("ШиринаСтроки", ШиринаСтроки);
	
	мВходныеПараметры.Очистить();
	мВходныеПараметры.Добавить(ПараметрыЧека);

	РезультатВыполнения = ПодключаемоеОборудованиеУниверсальныйДрайверКлиент.ВыполнитьКоманду("PrintTextDocument",
		мВходныеПараметры, мВыходныеПараметры, Объект.Драйвер, мПараметрыУстройства, мПараметрыПодключения);

	Если Не РезультатВыполнения Тогда
		Результат = мОшибкаНеизвестно;
		Объект.ОписаниеОшибки = мВыходныеПараметры[1];
	Иначе
		Результат = мНетОшибки;
		Объект.Вставить("ВыходныеПараметры", мВыходныеПараметры);
	КонецЕсли;
	
	Возврат Результат;

КонецФункции

Получаем примерно такой псевдокод для печати из конфигурации с нашей обновленной обработкой обслуживания:

ПозицииЧека = Новый Массив;

Для Каждого СтрокаДляПечати Из СтрокиКПечати Цикл

    // Формируем строку для печати в нужной структуре 
    СтрокаЧека = МенеджерОборудованияКлиентСервер.ПараметрыТекстовойСтрокиЧека(СтрокаДляПечати);
    СтрокаЧека.Выравнивание = "Лево"; // Выравнивание на ленте, возможные значения: "Лево", "Право", "Центр"
    ПозицииЧека.Добавить(СтрокаЧека);

КонецЦикла;

ДанныеДляПечати = Новый Массив;
ДанныеДляПечати.Добавить(ПозицииЧека);

// вызываем нашу добавленную функцию в обработку обслуживания
ОбработкаОбслуживания.НапечататьТекстовыйДокумент(ОбъектДрайвера, ДанныеДляПечати, ?(КассаККМ.ШиринаЛенты = 0, 32, КассаККМ.ШиринаЛенты)); // КассаККМ - ссылка на справочник КассыККМ, к которому подключен ККТ, соедржащий реквизит для ручного задания ширины ленты.

 

Тестировалось на Управление торговлей 10.3.47.3. Учитывая, что общие модули - часть БПО, то такой же механизм подойдет для печати и на УТ 11 в части всевдокода и общих модулей. ККТ использовался Штрих-LIGHT-01Ф.

Во вложение доработанная обработка обслуживания для Штрих-м (Атол по аналогии можно сделать) и внешняя печатная форма к документу Заказ покупателя, которая печатает заказ на ККТ.

печать на ККТ обработка обслуживания УТ.

См. также

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

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

8970 руб.

15.12.2015    168628    795    364    

394

ККМ Кассовые операции Розничная торговля Системный администратор Программист Платформа 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    787880    4749    9507    

2816

Бюджетирование и планирование Оптовая торговля Розничная торговля Логистика, склад и ТМЦ Анализ продаж Пользователь Платформа 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    93577    119    40    

210

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

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

35000 руб.

14.10.2022    8696    15    14    

11

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

Данная публикация создана для помощи разработчикам, интеграторам и другим заинтересованным лицам по настройке системы маркировки обуви, одежды, лекарств, табака, фото, молока, духов(парфюма), питьевой воды, велосипедов и шин. Смело задавайте вопросы по работе с ЦРПТ, GS1, ЭДО, Национальным каталогом, накопили достаточно большую базу знаний по данным темам и готовы ответить на все Ваши вопросы.

5000 руб.

18.03.2019    111785    29    114    

181

ККМ Кассовые операции Розничная торговля Системный администратор Программист Платформа 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    330294    1898    3031    

1013
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Vix 29 05.05.20 14:44 Сейчас в теме
НА УТ11 просто так не взлетит, ПолучитьСерверТО(), такой процедуры нет уже в УТ11. прошивка драйвера не 1.05?
2. gzharkoj 512 05.05.20 15:17 Сейчас в теме
(1) Вы заголовок прочитайте публикации. В УТ 11 эти процедуры уже включены, точнее там у каждой печатаемой строк можно указать фискальная она или нет, в целом там дорабатывать и не надо.
3. independ 1542 05.05.20 15:19 Сейчас в теме
(1)
НА УТ11

Текст="Тест"+Символы.ПС+"Проверка";
МенеджерОборудованияКлиент.НачатьПечатьТекста(,,Текст);
4. gzharkoj 512 05.05.20 16:05 Сейчас в теме
В УТ 11 можете посмотреть код печати последнего слипа (после оплаты по эквайрингу) в документе Чек ККМ форма ФормаДокументаРМК процедура НапечататьПоследнийСлипЧек, там как раз используется код из 3-его ответа.

Можно печатать по сути как чек, но без фискальных строк:

ПараметрыОперацииФискализацииЧека = МенеджерОборудованияКлиентСервер.ПараметрыОперацииФискализацииЧека();
СтрокаЧека = МенеджерОборудованияКлиентСервер.ПараметрыТекстовойСтрокиЧека("Любая строка");
ПараметрыОперацииФискализацииЧека.ПозицииЧека.Добавить(СтрокаЧека);

и т.д.
5. zoeh 31 23.03.21 09:54 Сейчас в теме
Если НЕ Объект.Драйвер.НапечататьТекстовыйДокумент(Объект.ИДУстройства,Текст) Тогда

{(1)}: Значение не является значением объектного типа (НапечататьТекстовыйДокумент)
Новый ("AddIn.ATOL_KKT_1C83_V10.ATOL_KKT_1C83_V10")


не подскажете в чем дело?
6. gzharkoj 512 23.03.21 10:18 Сейчас в теме
(5) Нет такой команды НапечататьТекстовыйДокумент у драйвера атол. Обратите внимание, в публикации и комментариях приведены примеры печати через драйвера интеграции с 1с, который уже пересылает команды драйверам оборудования. Если вы хотите напрямую, то надо открыть документацию к драйверу Атол и посмотреть, какая команда отвечает за печать нефискальных строк.
7. zoeh 31 23.03.21 10:35 Сейчас в теме
(6)
НапечататьТекстовыйДокумент
Прикрепленные файлы:
8. gzharkoj 512 23.03.21 10:55 Сейчас в теме
(7) Это команды для драйвера интеграции 1с, а вот так Объект.Драйвер вы, судя по всему, обращаетесь к драйверу атол. Приведите весь код
9. zoeh 31 24.03.21 09:16 Сейчас в теме
.....
Функция ПодключитьДляОпер(Объект) Экспорт

	Результ = мНетОш;

	Объект.Драйвер = Новый("AddIn.ATOL.ATOL_KKT_1C83_V10");	
	ЗаписатьПараметрывККТ(Объект);
	
.....


Если Подключено<>Неопред Тогда
		
		Результ = ПодключитьДляОпер(Объект);
		Если Результ <> мНетОш Тогда
			Возврат Результ ;
		КонецЕсли;
	КонецЕсли;

	Если НЕ Объект.Драйвер.НапечататьТекстовыйДокумент(Объект.ИДУстройства,Текст) Тогда
		Объект.Драйвер.ПолучитьОшибку(Объект.ОписаниеОшибки);
	КонецЕсли;
Показать
10. gzharkoj 512 24.03.21 14:25 Сейчас в теме
11. user1548679 29.06.22 12:16 Сейчас в теме
Добрый спасибо за обработку, хотел спросить а в ней как можно размер шрифта чека поменять, все чеки нормально идут а эти маленькие. Касса Ритейл-01-ф.
12. gzharkoj 512 30.06.22 21:49 Сейчас в теме
(11) Я на сколько знаю, размером шрифта через драйвер 1с не получится управлять, может как вариант в самом драйвере можно произвести настройки.
13. user1548679 01.07.22 04:44 Сейчас в теме
(12) Здравствуйте, написал в ТП штриха, дали ответ, чтобы команды на печать нефискальных чеков шли не первым шрифтом, а вторым или четвертым, на сколько понял в драйвере шрифт для нефискальных чеков не настраивается 1С сама посылает какой шрифт поставить, на слип чеках тоже увидел что они печатаются 1 шрифтом.
Оставьте свое сообщение