Печать наклеек с штрих кодом из документа "Заказ поставщика"

03.02.21

Задачи пользователя - Этикетки, ценники

Если есть необходимость произвести печать некоторого количества наклеек одного товара непосредственно из документа, то данное приложение будет малая помощь тем кому это действительно необходимо.

Скачать файл

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

Наименование По подписке [?] Купить один файл
Печать наклеек с штрих кодом из документа "Заказ поставщика":
.epf 55,17Kb ver:13.1
13
13 Скачать (1 SM) Купить за 1 850 руб.

 Периодически возникает необходимость распечатать большое количество этикеток с наименованием и штрих кодами для большого ассортимента товара, для этого вам не потребуется отдельный специальный принтер и лента для такого принтера. Выход из положения это стандартный офисный принтер и лист формата А4 для этикеток.

1. Производим заполнение реквизитов из документа по каждой строке 

Процедура ЗаполнитьРеквизиты()
	
	Для Каждого Стр Из Поступление.Товары Цикл
		НоваяСтрока = Объект.Товары.Добавить();
		ЗаполнитьЗначенияСвойств(НоваяСтрока, Стр);
		НоваяСтрока.Артикул = Стр.Номенклатура.Артикул;
		НоваяСтрока.РабочееНаименование = Стр.Номенклатура.Наименование;	
		НоваяСтрока.НаименованиеПолное = Стр.Номенклатура.НаименованиеПолное;	
		НоваяСтрока.ШтрихКод = ПолучитьШтрихКод(Стр.Номенклатура.Артикул);
		НоваяСтрока.Производитель = ПолучитьПроизводитель(Стр.Номенклатура.Артикул)
	КонецЦикла;
	
КонецПроцедуры

2. Далее после заполнение и проверки количества, производим печать с предварительным просмотром конечно

&НаКлиенте
Процедура ПечатьНаклеек(Команда)
	
	МассивОбъектов = Новый Массив;
	МассивОбъектов.Добавить(Поступление);        
	Печать("ПечатьДокументаИзФормы",МассивОбъектов);
	
КонецПроцедуры

3. Ну и сама непосредственно печать

&НаКлиенте
Процедура Печать(ИдентификаторКоманды, МассивОбъектов) Экспорт
	
	ТабДок = Новый ТабличныйДокумент;
	ПечатьНаСервере(МассивОбъектов, ТабДок);
	ТабДок.Показать();
	
КонецПроцедуры

 4. Заключительный и важный этап

&НаСервере
Процедура ПечатьНаСервере(МассивОбъектов, ТабДок)
	
	Макет = ПолучитьМакетСервер(Поступление.Ссылка);
	ОблСтрока = Макет.ПолучитьОбласть("Строка|Столбец");
	УжеДобавили = 0;
	ЗначениеШтрихкодаПроверкаНаСовпадение = "";
	Счик = 1;
	Для Каждого Стр Из Объект.Товары Цикл
     Если СтрДлина(Стр.Артикул) > 25 Тогда 
	  РазмерШрифтаДляМакета = 18
	 ИначеЕсли СтрДлина(Стр.Артикул) < 24 Тогда
	  РазмерШрифтаДляМакета = 24;		
	 КонецЕсли;
	   ЗначениеШтрихкода = Стр.ШтрихКод;
	     Если ЗначениеЗаполнено(ЗначениеШтрихкода) Тогда
			 ПараметрыШтрихкода = Новый Структура;
			 ПараметрыШтрихкода.Вставить("Ширина", 110 );                       
			 ПараметрыШтрихкода.Вставить("Высота", 65 );                        
			 ПараметрыШтрихкода.Вставить("Штрихкод", СокрЛП(ЗначениеШтрихкода));  
			 ПараметрыШтрихкода.Вставить("ТипКода", 1 );                      
			 ПараметрыШтрихкода.Вставить("ОтображатьТекст", Истина);              
			 ПараметрыШтрихкода.Вставить("РазмерШрифта", 10 );                   
			
			 ИмяФайлаКартнки = ПолучитьИмяВременногоФайла("jpg"); 
			 ДвоичныеДанныеКартинки = ПолучитьМакетКартинкаСервер("МакетКартинки");   
			 ДвоичныеДанныеКартинки.Записать(ИмяФайлаКартнки);						
				
			 Рисунок = ОблСтрока.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка); 
			 Рисунок.Верх = 22; 
			 Рисунок.Высота = 34; 
			 Рисунок.Ширина = 63; 
			 Рисунок.Лево = 58;
			 Рисунок.Картинка = МенеджерОборудованияВызовСервера.ПолучитьКартинкуШтрихкода(ПараметрыШтрихкода); 
			 Рисунок.РазмерКартинки = РазмерКартинки.Растянуть;
			 Рисунок.Линия = Новый Линия(ТипЛинииРисункаТабличногоДокумента.НетЛинии);
		  Иначе 
			 Рисунок = ОблСтрока.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка); 
			 Рисунок.Верх = 22; 
			 Рисунок.Высота = 34; 
			 Рисунок.Ширина = 64; 
			 Рисунок.Лево = 58;
			 Рисунок.Картинка = БиблиотекаКартинок.ЭлектронныеДокументыНеправильнаяПодпись;
			 Рисунок.РазмерКартинки = РазмерКартинки.РеальныйРазмер;
			 Рисунок.Линия = Новый Линия(ТипЛинииРисункаТабличногоДокумента.НетЛинии);
		 КонецЕсли;

		Для j = 1 По Стр.Количество Цикл 	
			Обл = ОблСтрока.Область("Артикул");
			Обл.Шрифт = Новый Шрифт(Обл.Шрифт, ,РазмерШрифтаДляМакета);
			Обл.Текст = Стр.Артикул;  
			ОблСтрока.Параметры.Производитель      = Стр.Производитель;
			ОблСтрока.Параметры.НаименованиеПолное = "Наименование:  " + Стр.НаименованиеПолное;
			
				Если Счик = 1 Тогда
					ТабДок.Вывести(ОблСтрока);
				Иначе
					ТабДок.Присоединить(ОблСтрока);
				КонецЕсли;
			
			Если Счик = 3 Тогда
				Счик = 1;
			Иначе
				Счик = Счик + 1;
			КонецЕсли;
			
		КонецЦикла;
	  ЗначениеШтрихкодаПроверкаНаСовпадение = ЗначениеШтрихкода;
	КонецЦикла;

	ТабДок.ЭкземпляровНаСтранице = 1; 
	ТабДок.Автомасштаб = истина; // аналогично настройкам масштаба «по ширине страницы»	
	ТабДок.ПолеСлева = 2; 
	ТабДок.ПолеСверху = 6; 
	ТабДок.ПолеСнизу = 0;
	ТабДок.ПолеСправа = 0;	
    ТабДок.ОтображатьСетку = Ложь; // не отображать сетку при просмотре документа
	
	УдалитьФайлы(ИмяФайлаКартнки);

КонецПроцедуры

Далее по желанию можно менять размер и количество

Юзабилити на основной форме пока не делал, но это все решаемо.

 

Это внешняя обработка, компоненты для нее не нужны, обработка использует типовые механизмы конфигурации Управление торговлей 11.1(2.3) платформы 1С:Предприятие 8.2 и/или 8.3 

Данная внешняя обработка использует типовые механизмы конфигурации  Управление торговлей релиз 11.1
Управление торговлей релиз 11.2
Управление торговлей релиз 11.3
на платформе 1С:Предприятие 8.2 или  1С:Предприятие 8.3

 Минимальный релиз платформы. Управление торговлей релиз 11.1
на Управление торговлей релиз 11.4 не устанавливалась, так что дерзайте у вас все получится.   

Внешняя обработка

См. также

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

Простая в использовании обработка для формирования и печати ценников и этикеток со штрих-кодом, с дополнительной ценой, для 1С8.х Большое разнообразие шаблонов печатных форм. Управляемая форма (Такси) + Обычный режим.

3588 руб.

11.11.2020    50547    63    48    

72

Этикетки, ценники Программист Пользователь Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 Россия Управленческий учет Платные (руб)

Решение позволяет в шаблон этикетки с типом "Этикетка (обувь, одежда, табак...)" добавлять штрих-коды другого типа, например, GTIN в Code128.

4000 руб.

09.06.2021    16765    12    11    

16

Этикетки, ценники Пользователь Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

Обработка для печати кодов марок, полученных из системы "Честный знак".

5 стартмани

09.10.2024    892    5    user2105876    0    

3

Этикетки, ценники Пользователь Платформа 1С v8.3 Управляемые формы 1С:Розница 2 1С:Управление нашей фирмой 1.6 Платные (руб)

Встроенная в конфигурации Розница 2.3 и УНФ 1.6 подсистема печати ценников по мне слишком неповоротлива и с усилиями поддается тонкой настройке, решил с нуля написать свою универсальную печать ценников для этих конфигураций.

2000 руб.

04.11.2019    29794    116    88    

55

Этикетки, ценники Пользователь Платформа 1С v8.3 1С:Розница 2 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 Абонемент ($m)

Расширение "Контроль ценников". Позволяет автоматизировать контроль над устаревшими ценниками в магазине при изменении цен на товары. Продавцы или товароведы получают список товаров с измененными ценами для замены ценников в режиме онлайн.

10 стартмани

30.10.2024    781    9    Miket78    6    

6

Этикетки, ценники Пользователь Платформа 1С v8.3 1С:Розница 2 Розничная и сетевая торговля (FMCG) Россия Абонемент ($m)

Внешняя обработка для 1С Розница 2.2.ХХХ - 2.3.ХХХ для печати формирования штрихкодов весового товара и печати на принтере термоэтикеток или кассовом аппарате.

1 стартмани

29.10.2024    687    11    independ    2    

7

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

Выводит при печати этикетки складской ячейки в качестве штрихкода адрес ячейки вместо уникального идентификатора

1 стартмани

20.06.2024    1709    4    Alexei_Siva    4    

7
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. user882676 04.10.18 09:58 Сейчас в теме
Работает УТ 11.1.9.61 Спасибо!
2. creatermc 27 04.10.18 13:07 Сейчас в теме
Всегда рад,
когда маломальская обработка оказалась полезной не только мне
Оставьте свое сообщение