gifts2017

Обработка для печати ценников и этикеток

Опубликовал Сергей Яхонтов (newbas) в раздел Печать - Ценники

Позволяет печатать ценники и этикетки для номенклатуры.

Позволяет заполнять ТЧ обработки из ТСД, документов и т.д.

Интерфейс частично позаимствован с РАРУС:Магазин

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
Обработка печати ценников и этикеток
.ert 313,50Kb
10.04.13
1376
.ert 313,50Kb 1376 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. cs25 (cs25) 10.07.08 13:29
Вылезает с ошибкой:
ТекПринтер=scrptCtrl.run("GetDefaultPrinter");
{C:\ПЕЧАТЬ ЦЕННИКОВ И ЭТИКЕТОК.ERT(561)}: Ошибка выполнения Microsoft VBScript: Невозможно создание объекта контейнером ActiveX

2. Den (DDD2005) 10.07.08 15:13
ТипЦен=Склад.ТипЦен;
{C:\DOCUMENTS AND SETTINGS\DENIS\РАБОЧИЙ СТОЛ\PECHATJ CENNIKOV I ETIKETOK.ERT(601)}: Поле агрегатного объекта не обнаружено (ТипЦен)
3. Сергей Яхонтов (newbas) 10.07.08 17:31
Исправил и перезалил. Спасибо за тестирование
4. Сергей Яхонтов (newbas) 14.07.08 10:08
Обновление. Исправлены ошибки.
5. Валерий (Валерий_) 16.07.08 23:18
Печатает на лист количество колонок только до 9, нужно 15, а остальное очень удобно, благодарю.
6. Валерий (Валерий_) 16.07.08 23:37
Хорошо, если б в ценнике печаталась и этикетка (штрихкод), например, снизу, между датой и страной производителем.
Также шрифт наименования необходимо увеличить.
В остальном, всё нормально.
7. Максим (Predator) 18.07.08 16:07
А у меня не пашет вот что выдаеть. Что делать???

Таб.Цена=глПолучитьЦену(Таб.Товар,ТипЦен.ТекущийЭлемент(),РабочаяДата()<<?>>);
{J:\ОБНОВЛЕНИЕ 1С\ПРИЛОЖЕНИЯ\ОБРАБОТКА ДЛЯ ПЕЧАТИ ЦЕННИКОВ И ЭТИКЕТОК\PECHATJ_CENNIKOV_I_ETIKETOK.ERT(125)}: Недостаточно фактических параметров
Таб.Цена=глПолучитьЦену(Таб.Товар,ТипЦен.ТекущийЭлемент(),РабочаяДата()<<?>>);
{J:\ОБНОВЛЕНИЕ 1С\ПРИЛОЖЕНИЯ\ОБРАБОТКА ДЛЯ ПЕЧАТИ ЦЕННИКОВ И ЭТИКЕТОК\PECHATJ_CENNIKOV_I_ETIKETOK.ERT(194)}: Недостаточно фактических параметров
Если глТерминалВключен<<?>>() = 1 Тогда
{J:\ОБНОВЛЕНИЕ 1С\ПРИЛОЖЕНИЯ\ОБРАБОТКА ДЛЯ ПЕЧАТИ ЦЕННИКОВ И ЭТИКЕТОК\PECHATJ_CENNIKOV_I_ETIKETOK.ERT(239)}: Функция не обнаружена (глТерминалВключен)
Если глЕстьРеквизитМнЧ<<?>>("Номенклатура", Метаданные.Документ(Сч).Идентификатор)=1 Тогда
{J:\ОБНОВЛЕНИЕ 1С\ПРИЛОЖЕНИЯ\ОБРАБОТКА ДЛЯ ПЕЧАТИ ЦЕННИКОВ И ЭТИКЕТОК\PECHATJ_CENNIKOV_I_ETIKETOK.ERT(272)}: Функция не обнаружена (глЕстьРеквизитМнЧ)
ИначеЕсли глЕстьРеквизитМнЧ<<?>>("Номенклатура",Док.Вид())=1 Тогда
{J:\ОБНОВЛЕНИЕ 1С\ПРИЛОЖЕНИЯ\ОБРАБОТКА ДЛЯ ПЕЧАТИ ЦЕННИКОВ И ЭТИКЕТОК\PECHATJ_CENNIKOV_I_ETIKETOK.ERT(296)}: Функция не обнаружена (глЕстьРеквизитМнЧ)
Если глТерминалЗагрузитьДанные<<?>>(ТермДанные) = 0 Тогда
{J:\ОБНОВЛЕНИЕ 1С\ПРИЛОЖЕНИЯ\ОБРАБОТКА ДЛЯ ПЕЧАТИ ЦЕННИКОВ И ЭТИКЕТОК\PECHATJ_CENNIKOV_I_ETIKETOK.ERT(355)}: Функция не обнаружена (глТерминалЗагрузитьДанные)
Если глПолучитьТоварПоШтрихкоду<<?>>(ТермДанные.Штрихкод, ВремНоменклатура, ВремЕдиница, ВремКолво) = 0 Тогда
{J:\ОБНОВЛЕНИЕ 1С\ПРИЛОЖЕНИЯ\ОБРАБОТКА ДЛЯ ПЕЧАТИ ЦЕННИКОВ И ЭТИКЕТОК\PECHATJ_CENNIKOV_I_ETIKETOK.ERT(366)}: Функция не обнаружена (глПолучитьТоварПоШтрихкоду)
глТерминалОчиститьПамять<<?>>();
{J:\ОБНОВЛЕНИЕ 1С\ПРИЛОЖЕНИЯ\ОБРАБОТКА ДЛЯ ПЕЧАТИ ЦЕННИКОВ И ЭТИКЕТОК\PECHATJ_CENNIKOV_I_ETIKETOK.ERT(386)}: Процедура не обнаружена (глТерминалОчиститьПамять)
ТаблицаТоваров.Валюта=глРубли<<?>>;
{J:\ОБНОВЛЕНИЕ 1С\ПРИЛОЖЕНИЯ\ОБРАБОТКА ДЛЯ ПЕЧАТИ ЦЕННИКОВ И ЭТИКЕТОК\PECHATJ_CENNIKOV_I_ETIKETOK.ERT(459)}: Переменная не определена (глРубли)
ПечРозн = глФРМ<<?>>(ТаблицаТоваров.Цена, ТаблицаТоваров.Валюта);
{J:\ОБНОВЛЕНИЕ 1С\ПРИЛОЖЕНИЯ\ОБРАБОТКА ДЛЯ ПЕЧАТИ ЦЕННИКОВ И ЭТИКЕТОК\PECHATJ_CENNIKOV_I_ETIKETOK.ERT(461)}: Функция не обнаружена (глФРМ)
глОживить<<?>>(1);
{J:\ОБНОВЛЕНИЕ 1С\ПРИЛОЖЕНИЯ\ОБРАБОТКА ДЛЯ ПЕЧАТИ ЦЕННИКОВ И ЭТИКЕТОК\PECHATJ_CENNIKOV_I_ETIKETOK.ERT(470)}: Процедура не обнаружена (глОживить)
8. Сергей Яхонтов (newbas) 21.07.08 07:31
Обработка предназначена ТОЛЬКО для ТИС редакции 9.2. Судя по сообщениям ошибок, конфигурация самописная, или сильно измененная
9. Sepegka (sepegka) 09.09.08 13:11
Все вроде бы ничего,но надо бы,что бы и автоматом ставилась не только Тип цен,Фирма,но и непосредственно сам товар.
У кого есть можете скинуть на мыло sergei-dantist@mail.ru
10. Сергей Яхонтов (newbas) 10.09.08 16:33
11. Павел (woland123) 21.11.08 16:38
Не работает. Те же ошибки что и у Predator
12. Сергей Яхонтов (newbas) 24.11.08 14:22
Написали бы где запускали, да и ошибка, судя по сообщению пустяковая, видимо у Вас в функции "глПолучитьЦену" больше параметров, чем в ТИС 9.2.
13. Геннадий (xaba) 03.12.08 14:53
Спасибо огромное за обработку!!!
Единственно - не могу добавить в этикетку (не ценник) цену за товар. Не подскажешь - как?
З.Ы. Артикул - без проблем добавляется.
14. Сергей Яхонтов (newbas) 08.12.08 15:33
Если этикетка печатается с использованием Godex, то в процедуру "ПечатьЭтикетокГодекс" надо добавить строку "ПринтерЭтикеток.ВывестиТекст(1, 1, 1, 0, ТБ.Цена);" например перед "ПринтерЭтикеток.СформироватьШтрихкод...". А если этикетка печатается на Windows принтер, то макет таблицы "Этикетка" добавить поле с типом "выражение" с значением "ПечРозн"
15. Геннадий (xaba) 08.12.08 17:57
Уряяяя! Получилось! (Сам я ни разу не программист).
Только пришлось добавить строку в процедуру "ПечатьЭтикетокГодекс" - "ПечЦена= Лев(ТБ.Цена,10.2);" и соответственно в макет таблицы поле с типом "шаблон" с значением Цена:[ПечЦена]руб.
:-)
16. Сергей Яхонтов (newbas) 08.12.08 18:30
17. devv devv (dev014) 12.12.08 09:56
> З.Ы. Артикул - без проблем добавляется.
Как добавить артикул в этикетку ?
18. Геннадий (xaba) 18.12.08 14:10
Надо (в модуле) в процедуре "ПечатьЭтикеток(ТБ)()" добавить строчку "ПечКод=Число(ТБ.Товар.ТекущийЭлемент().Артикул);". Например после строчки "ПечТовар = Лев(ПечТовар,80);". Затем создать в табличной форме этикетки поле с атрибутами, как в табличной форме ценника для артикула. И усё.
19. Алексей (AlexeySH) 04.01.09 12:00
Подскажите, у меня не выдается на ценнике артикул, печатает "Артикул: 0". Что нужно сделать? Заранее спасибо.
20. Алексей (AlexeySH) 04.01.09 12:06
"Подскажите, у меня не выдается на ценнике артикул, печатает "Артикул: 0"." Это только в том случае, если в номенклатре артикул в виде: "Р5511", т.е. когда в нем присутствуют буквы, а если букву убрать, то все нормально печатается. Как сделать, чтобы артикул выводился с буквами?
21. Сергей Яхонтов (newbas) 05.01.09 15:51
1). Строку 617 необходимо заменить на
Таб.НоваяКолонка("Артикул","Строка",8,,"Артикул",8,,2);
2). Строку 463 заменить на
ПечКод=ТаблицаТоваров.Товар.ТекущийЭлемент().Артикул;
22. Сергей Яхонтов (newbas) 22.01.09 13:52
Это потому, что тип поля Артикул "Число".
23. Геннадий (xaba) 05.02.09 10:44
Из документа основания не подставляется колличество товара. Например из "Поступление ТМЦ". Колличество товара всегда равно 1. Это так и задумано или модуль не корректно работает? ;-)
24. Сергей Яхонтов (newbas) 05.02.09 10:54
Количество, указанное в таблице - это количество ценников или этикеток. Если для этикеток это как-то еще оправдано, то для ценника по-моему нет. Поэтому устанавливается в 1. Если кому-то надо, можно переделать, благо не сложно
25. Геннадий (xaba) 05.02.09 11:17
Для этикеток это более чем оправдано. Сильно время сокращает. Особенно когда товара много. Для ценников - енто дааа...
Если можно доработайте плиз или запостите кусочек переделанного модуля...
26. Сергей Яхонтов (newbas) 05.02.09 14:07
(25)Да ну, чего там делать, то
В функции "ПриВыбореЗначения" заменить ветку
ИначеЕсли Об="Добавить из документа" Тогда
Сп=СоздатьОбъект("СписокЗначений");
Для Сч=1 По Метаданные.Документ() Цикл
Если глЕстьРеквизитМнЧ("Номенклатура", Метаданные.Документ(Сч).Идентификатор)=1 Тогда
Сп.ДобавитьЗначение(Метаданные.Документ(Сч).Идентификатор, Метаданные.Документ(Сч).Представление());
КонецЕсли;
КонецЦикла;

Если Сп.РазмерСписка()=0 Тогда
Возврат 0;
КонецЕсли;

ВидДок=ВосстановитьЗначение("ПоследнийВидДокумента");
Если Сп.ВыбратьЗначение(ВидДок,"Выберите вид документа")=0 Тогда
Возврат 0;
КонецЕсли;

СохранитьЗначение("ПоследнийВидДокумента",ВидДок);
Попытка
Док = СоздатьОбъект("Документ."+ВидДок);
Исключение
Возврат 0;
КонецПопытки;

Если Док.Выбрать("Выберите документ")<>1 Тогда
Возврат 0;
ИначеЕсли глЕстьРеквизитМнЧ("Номенклатура",Док.Вид())=1 Тогда
Док.ВыбратьСтроки();
Форма.Таб.Видимость(0);
Пока Док.ПолучитьСтроку()=1 Цикл
ПриВыбореЗначения("Добавить",Док.Номенклатура.ТекущийЭлемент());
КонецЦикла;
Если глЕстьРеквизитМнЧ("Количество", Док.Вид())=1 Тогда
Таб.Количество = Макс(Док.Количество*Док.Коэффициент,1);
КонецЕсли;
Форма.Таб.Видимость(1);
КонецЕсли;
27. Геннадий (xaba) 05.02.09 16:46
(26) Что-то не хотят работать эти три строчки:

Если глЕстьРеквизитМнЧ("Количество", Док.Вид())=1 Тогда
Таб.Количество = Макс(Док.Количество*Док.Коэффициент,1);
КонецЕсли;

:-(
28. Эльдар И. (Eldar1) 11.04.09 18:05
Доброго дня всем
Обьясните пожалуста чайнику, как и куда этот файл прикрепить чтоб все заработало
Заранее благодарен всем
29. Сергей Яхонтов (newbas) 12.04.09 08:16
Куда нибудь это файл положить и в 1С меню "Файл-Открыть"
30. Сергей С (neprofi) 17.04.09 17:49
Всё работает нормально, только при выводе на печать на лист попадает только часть ценников, треть обрезана. В чём может быть причина? Ставлю 5 колонок и 70% - выходит форма с 5 ценниками вряд, но при печати обрез справа - остаётся ток 3 . Спасибо
31. subski 29.04.09 09:30
Все замечтательно работает, автору +
32. subski 30.04.09 05:45
(28) Фаил обработки помещаешь в каталог ExtForms информационной базы, при помощи текстового редактора создаешь текстовый файл с именем таким же, как и имя внешнего файла, и расширением EFD (External File Description), можно в текстовом файле просто заменить *.txt на *.edf.
Этот файл должен содержать строку такого вида:

Название=<текстовое название файла>
//в нашем случае:
//Название=<Обработка для печати ценников и этикеток>

Далее в 1С открываешь вкладку Сервис/Дополнительные возможности и ВУАЛЯ наблюдаешь в списке свою обработку!
При открытии обработка осматривает каталог ExtForms и ищет все файлы
с расширением EFD.
И совет, почитай про Доп возможности, в книжке "Описание" идущей в комплекте с программой! Я тоже не гуру, но все доступным языком в принципе описано.
33. Gleb Skinsov (Skif_ru23) 05.05.09 23:04
Как добавить производителя?
34. Сергей Яхонтов (newbas) 06.05.09 07:12
(33) дописать код и добавить в макет(таблицу)
35. Сергей С (neprofi) 03.06.09 14:04
Не могли бы вы прокоментировать позт 30. Проблемма актуальна. ТиС 9.2
36. Сергей Яхонтов (newbas) 03.06.09 14:10
(35) проверяйте флаг "Автомасштаб"
37. Roma (R_87) 09.06.09 09:37
не могу дорубиться как добавить еще форму другого ценника
38. Сергей Яхонтов (newbas) 17.07.09 17:33
ГОСПОДА! Не выдавайте чужие разработки за свои. Недавно пришел к новому клиенту, приводить в порядок то, что предыдущий "программист" на вертел. И увидел свою обработку, которую предшественник выдавал за свою и не мог в ней настроить размер ценников под высоту держателей, еще и денег не кисло срубил...
39. Иннокентий (delete009) 05.08.09 13:27
Классная обработка мне пригодилась "ВЕЩЬ!"
40. kruiz111 kruiz111 (kruiz111) 23.11.09 02:38
Обработка хорошая. Но как же добавить количество из документа?
Для этикеток очень актуально.
41. kruiz111 kruiz111 (kruiz111) 22.02.10 11:07
(26) Всё таки я разобрался как добавить количество из документа для этикеток. Всё дело в цикле. У меня получилось вот так.

Если Док.Выбрать("Выберите документ")<>1 Тогда
Возврат 0;
ИначеЕсли глЕстьРеквизитМнЧ("Номенклатура",Док.Вид())=1 Тогда
Док.ВыбратьСтроки();
Форма.Таб.Видимость(0);
Пока Док.ПолучитьСтроку()=1 Цикл
ПриВыбореЗначения("Добавить",Док.Номенклатура.ТекущийЭлемент());
Если глЕстьРеквизитМнЧ("Количество", Док.Вид())=1 Тогда
Таб.Количество = Макс(Док.Количество*Док.Коэффициент,1);
КонецЕсли;
КонецЦикла;
Форма.Таб.Видимость(1);
КонецЕсли;
42. Денис (deni500) 22.02.10 13:06
Не печатается артикул печатает (Артикул0) артикулы у меня с буквами ,что можно сделать
43. Сергей Яхонтов (newbas) 22.02.10 15:02
(42) об этом уже было. Поправлю.
44. Андрей Паунин (Паунин) 09.04.10 19:52
У меня не работает! При попытке открыть пишет:
Таб.Цена=глПолучитьЦену<<?>>(Таб.Товар,ТипЦен.ТекущийЭлемент(),РабочаяДата());
{F:\1С\ВНЕШНИЕ УТИЛИТЫ\ПЕЧАТЬ ЦЕННИКОВ И ЭТИКЕТОК\ПЕЧАТЬ_ЦЕННИКОВ_И_ЭТИКЕТОК.ERT(125)}: Функция не обнаружена (глПолучитьЦену)
и т.д. и т.п.
45. Сергей Яхонтов (newbas) 10.06.10 16:23
(44) Конфигурация предназначена для ТиС ред. 9.2 и построенных на ее основе
46. Антон Семенов (LitavrinAV) 06.09.10 22:00
подскажите как сделать чтобы на этикетке печаталась цена. Спасибо!!!
47. Сергей Яхонтов (newbas) 06.09.10 23:41
48. Антон Семенов (LitavrinAV) 07.09.10 05:05
ну это понимаю просто перепробовал все возможные обработки чего только уже не скачивал и не устанавливал. Размер этикетки 30*20 принтер Zebra. 1C ТИС9,2.
пробовал в самой конфигурации не через внешнюю обработку тоже не получилось.
Может подскажет как это все можно сделать
49. Сергей Яхонтов (newbas) 07.09.10 08:26
(48) Исправил, скачайте заново обработку
50. Антон 111 (Antoshka-sv) 08.09.10 18:11
Спасибо. Сейчас круто!!!! А как сделать чтобы при стандартной печати чека было также? или чтобы на этикетке 30*20 принтер ZEBRA LP2824 штрих код на половину этикетки а верняя половина. наименование и цена?
51. Антон Семенов (LitavrinAV) 11.09.10 05:35
А еще вопрос? сейчас все печатает нормально но штрих код почему то сжимается по длине. по высоте нормальный и по длине на половину почти. Как это можно исправить?
52. Максим Соловьёв (MaximUs-61Rus) 01.10.10 10:39
1). Строку 617 необходимо заменить на
Таб.НоваяКолонка("Артикул","Строка",8,,"Артикул",8,,2);
2). Строку 463 заменить на
ПечКод=ТаблицаТоваров.Товар.ТекущийЭлемент().Артикул;


Попробовал воспользоваться данным изменением. Но Увы...... Не подхватывает КОЛИЧЕСТВО в соответствующий столбец, если добавлять ИЗ ДОКУМЕНТА.
Всё равно количество всегда 1шт :(
53. Viktor Morozov (Viktorian II) 19.11.10 16:08
У меня почему-то не берёт цены из документов :( , в чём может быть дело?)
54. Сергей Яхонтов (newbas) 19.11.10 16:23
(53) Обработка цены из документа и не должна брать - она их берет из справочника цен
55. Viktor Morozov (Viktorian II) 19.11.10 16:55
Справочник цен как я понимаю надо вручную забивать?)
56. Сергей Яхонтов (newbas) 19.11.10 16:56
(55) В ручную или обработкой "обновление цен в справочнике"
57. Viktor Morozov (Viktorian II) 19.11.10 17:05
58. Мария Каширина (Иволга) 03.06.11 09:51
Спасибо! Данная обработка очень облегчила нам работу. Подскажите как добавить штрихкод в ценник? Элемент баркод скопировали из этикетки. А вот изменения в коде какие:(?
59. margo2007 (margo2007) 13.10.11 06:05
Когда окончательно посылаю на печать, все равно указывает не тот принтер, который надо.
Убила массу времени.
Оказывается длинна наименования принтера не должна быть больше 31 символа!
60. xDee (xDee) 19.10.11 17:17
Спасибо! Очень помогли, внедряем штрихкодирование у себя в магазине и это как раз то что нам нужно было , а то вручную печатать было как то не айс. Еще раз Спасибо!
61. Дмитрий Васильев (post84d) 01.11.11 11:55
Спасибо! Обработка подошла на все 100%. Особенно удобен механизм задающий количество строк (ценников).
62. Я Османов (Яшар) 18.02.12 12:23
Когда окончательно посылаю на печать, все равно указывает не тот принтер, который надо.
Убила массу времени.
Оказывается длинна наименования принтера не должна быть больше 31 символа!
63. Я Османов (Яшар) 18.02.12 12:36
ВСЕ НОРМАЛЬНО ПЕЧАТАЕТ ((((((только вот не хочет печатать на зебру как в Парусе(((( как его сделать так чтоб он печатал на рулон с клейкой бумагой?????
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа