Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
13 Дек 2017, 12:47
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Печать этикетки из документа  (Прочитано 3804 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн SkyNetYar

  • ****
  • Сообщений: 351
  • РЕПУТАЦИЯ: 10
  • КПД: 3%
  • Регистрация: 2014-10-25
  • Сайт: 
  • Профессия: Ученик 1С
Добрый день! УТ 11.1.10.167 доработанная
Имеется добавленный документ,на форме которого необходимо сделать кнопку,при нажатии на которую печаталась бы этикетка на товар на принтере этикеток с уже заготовленной формой.
Подскажите пожалуйста как реализовать?
Мои мысли пометить кнопку,привязать команду,создать макет,печатать сразу на указанный принтер без пред просмотров.


Оффлайн Дмитрий@

  • *****
  • Сообщений: 735
  • РЕПУТАЦИЯ: 134
  • КПД: 18%
  • Ссылка на примеры работ https://yadi.sk/d/ksVluPMB
  • Регистрация: 2015-02-27
    • Skype: ShuplecovDima
  • Сайт: 
  • Профессия: Программист 1С
Вы же сами написали как это реализовать, что конкретно у вас не получается: поместить кнопку на форму.....
Ссылка на примеры работ https://yadi.sk/d/ksVluPMB

Оффлайн SkyNetYar

  • ****
  • Сообщений: 351
  • РЕПУТАЦИЯ: 10
  • КПД: 3%
  • Регистрация: 2014-10-25
  • Сайт: 
  • Профессия: Ученик 1С
Вы же сами написали как это реализовать, что конкретно у вас не получается: поместить кнопку на форму.....
Все получилось,только не знаю как саму функцию написать что бы сразу на принтер летело с уже заданными размерами и ошибку если принтер не подключен\включен

&НаКлиенте
Функция ПечатьЭтикетки(ДокСсылка) Экспорт

ТабДокумент = Новый ТабличныйДокумент;
Макет = ДокСсылка.ПолучитьОбъект().ПолучитьМакет("ПечатьЭтикетки");
        ОбластьМакета = Макет.ПолучитьОбласть("Шапка");

        ОбластьМакета.Параметры.тратата = тратата


     ТабДокумент.Вывести(ОбластьМакета);
    Возврат ТабДокумент;
КонецФункции

Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
ТабДокумент.Напечатать();
СП = великая весч

Оффлайн SkyNetYar

  • ****
  • Сообщений: 351
  • РЕПУТАЦИЯ: 10
  • КПД: 3%
  • Регистрация: 2014-10-25
  • Сайт: 
  • Профессия: Ученик 1С
А как задать размер 56х30 формат этикетки,что то не найду примера,как нарисовать табличный документ с заданными размерами и печатать с такими размерами..

Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Методом научного тыка + по ширине листа

Оффлайн SkyNetYar

  • ****
  • Сообщений: 351
  • РЕПУТАЦИЯ: 10
  • КПД: 3%
  • Регистрация: 2014-10-25
  • Сайт: 
  • Профессия: Ученик 1С
нашел..
ТабДокумент.ИмяПринтера = "ZDesigner LP 2824 Plus (ZPL)";
ТабДокумент.КоличествоЭкземпляров = 1;
ТабДокумент.АвтоМасштаб = Истина;
ТабДокумент.РазмерСтраницы="Custom";
ТабДокумент.ВысотаСтраницы=300;
ТабДокумент.ШиринаСтраницы=560;
Добавлено: 11 Сен 2015, 14:08

Вот что получилось в итоге
Функция ПечатьЭтикетки(ДокСсылка) Экспорт

ТабДокумент = Новый ТабличныйДокумент;
ТабДокумент.АвтоМасштаб = истина ;
ТабДокумент.ОтображатьСетку = Ложь;
ТабДокумент.ТолькоПросмотр = Истина;
ТабДокумент.ОтображатьЗаголовки = Ложь;


    Макет = ДокСсылка.ПолучитьОбъект().ПолучитьМакет("ПечатьЭтикетки");
    ОбластьМакета = Макет.ПолучитьОбласть("Шапка");

ОбластьМакета.Параметры.Заголовок     = "№ "+СокрЛП(ДокСсылка.Номер)+" от "+Формат(ДокСсылка.Дата,"ДЛФ=Д");


ТабДокумент.ИмяПринтера = "ZDesigner LP 2824 Plus (ZPL)";
    ТабДокумент.КоличествоЭкземпляров = 1;
    ТабДокумент.РазмерСтраницы="Custom";
    ТабДокумент.ВысотаСтраницы=300;
    ТабДокумент.ШиринаСтраницы=560;
ТабДокумент.ОриентацияСтраницы=ОриентацияСтраницы.Ландшафт;
ТабДокумент.ПолеСлева=0;
ТабДокумент.ПолеСправа=0;
ТабДокумент.ПолеСверху=0;
ТабДокумент.ПолеСнизу=0;
ТабДокумент.АвтоМасштаб = Истина;
ТабДокумент.Напечатать(РежимИспользованияДиалогаПечати.НеИспользовать);
        ТабДокумент.Напечатать(истина);
Возврат ТабДокумент;
КонецФункции

Подскажите только если ошибка,например принтер выключен,как вывести сообщение ?
Добавлено: 11 Сен 2015, 14:09

нашел..
ТабДокумент.ИмяПринтера = "ZDesigner LP 2824 Plus (ZPL)";
ТабДокумент.КоличествоЭкземпляров = 1;
ТабДокумент.АвтоМасштаб = Истина;
ТабДокумент.РазмерСтраницы="Custom";
ТабДокумент.ВысотаСтраницы=300;
ТабДокумент.ШиринаСтраницы=560;
Добавлено: 11 Сен 2015, 14:08

Вот что получилось в итоге
Функция ПечатьЭтикетки(ДокСсылка) Экспорт

ТабДокумент = Новый ТабличныйДокумент;


    Макет = ДокСсылка.ПолучитьОбъект().ПолучитьМакет("ПечатьЭтикетки");
    ОбластьМакета = Макет.ПолучитьОбласть("Шапка");

ОбластьМакета.Параметры.Заголовок     = "№ "+СокрЛП(ДокСсылка.Номер)+" от "+Формат(ДокСсылка.Дата,"ДЛФ=Д");


ТабДокумент.ИмяПринтера = "ZDesigner LP 2824 Plus (ZPL)";
    ТабДокумент.КоличествоЭкземпляров = 1;
    ТабДокумент.РазмерСтраницы="Custom";
    ТабДокумент.ВысотаСтраницы=300;
    ТабДокумент.ШиринаСтраницы=560;
ТабДокумент.ОриентацияСтраницы=ОриентацияСтраницы.Ландшафт;
ТабДокумент.ПолеСлева=0;
ТабДокумент.ПолеСправа=0;
ТабДокумент.ПолеСверху=0;
ТабДокумент.ПолеСнизу=0;
ТабДокумент.АвтоМасштаб = Истина;
ТабДокумент.Напечатать(РежимИспользованияДиалогаПечати.НеИспользовать);
        ТабДокумент.Напечатать(истина);
Возврат ТабДокумент;
КонецФункции

Подскажите только если ошибка,например принтер выключен,как вывести сообщение ?
Добавлено: 11 Сен 2015, 16:04

Что то я заплелся выдает ошибку МетодОбъекта не обнаружен ПолучитьОбъект()

///////////////////////////////////////////////////////////Печать этикетки
&НаКлиенте
Процедура ОбработкаКомандыПечатьЭтикетки(ДокСсылка)
ТабДокумент = Новый ТабличныйДокумент;
ТабДокумент = ПечатьЭтикетки(ТабДокумент);
ТабДокумент.Показать("ПечатьЭтикетки");
КонецПроцедуры


&НаСервере
Функция ПечатьЭтикетки(ДокСсылка) Экспорт

ТабДокумент = Новый ТабличныйДокумент;

    Макет = ДокСсылка.ПолучитьОбъект().ПолучитьМакет("ПечатьЭтикетки");
ОбластьМакета = Макет.ПолучитьОбласть("Шапка");

ОбластьМакета.Параметры.Заголовок     = "№ "+СокрЛП(ДокСсылка.Номер)+" от "+Формат(ДокСсылка.Дата,"ДЛФ=Д");

ТабДокумент.ИмяПринтера = "ZDesigner LP 2824 Plus (ZPL)";
    ТабДокумент.КоличествоЭкземпляров = 1;
    ТабДокумент.РазмерСтраницы="Custom";
    ТабДокумент.ВысотаСтраницы=300;
    ТабДокумент.ШиринаСтраницы=560;
ТабДокумент.ОриентацияСтраницы=ОриентацияСтраницы.Портрет;
ТабДокумент.ПолеСлева=0;
ТабДокумент.ПолеСправа=0;
ТабДокумент.ПолеСверху=0;
ТабДокумент.ПолеСнизу=0;
ТабДокумент.АвтоМасштаб = Истина;

//ТабДокумент.Напечатать(РежимИспользованияДиалогаПечати.НеИспользовать);
    //ТабДокумент.Напечатать(истина);
ТабДокумент.Вывести(ОбластьМакета);
    Возврат ТабДокумент;


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

Последний раз редактировалось: SkyNetYar; 11 Сен 2015, 16:04. Причина: Объединение сообщений

Онлайн Kironten

  • *****
  • Сообщений: 900
  • РЕПУТАЦИЯ: 185
  • КПД: 21%
  • Регистрация: 2013-08-12
  • Сайт: 
  • Профессия: Ученик 1С
Вы параметром передаете в функцию табличный документ, а не ссылку на документ.
А потом еще и по чистому табличному документу пытаетесь получить объект, а по нему еще и макет.

Оффлайн SkyNetYar

  • ****
  • Сообщений: 351
  • РЕПУТАЦИЯ: 10
  • КПД: 3%
  • Регистрация: 2014-10-25
  • Сайт: 
  • Профессия: Ученик 1С
Да,я там накуралесил :bleh:

Вот готовый вариант!
///////////////////////////////////////////////////////////Печать этикетки
&НаКлиенте
Процедура ОбработкаКомандыПечатьЭтикетки(ТабДокумент)
ТабДокумент = Новый ТабличныйДокумент;
ТабДокумент = ПечатьЭтикетки(ТабДокумент);

ТабДокумент.ИмяПринтера = "\\DYADYA-SERVER\ZDesigner LP 2824 Plus (ZPL)";
    ТабДокумент.КоличествоЭкземпляров = 1;
    ТабДокумент.РазмерСтраницы="Custom";
    ТабДокумент.ВысотаСтраницы=30;
    ТабДокумент.ШиринаСтраницы=58;
ТабДокумент.ОриентацияСтраницы=ОриентацияСтраницы.Портрет;
ТабДокумент.ПолеСлева=0;
ТабДокумент.ПолеСправа=0;
ТабДокумент.ПолеСверху=0;
ТабДокумент.ПолеСнизу=0;
ТабДокумент.АвтоМасштаб = Истина;

ТабДокумент.Напечатать(РежимИспользованияДиалогаПечати.Использовать);

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


&НаСервере
Функция ПечатьЭтикетки(ТабДокумент) Экспорт

Макет = Документы.пмДокументСервиса.ПолучитьМакет("ПечатьЭтикетки");
ОбластьМакета = Макет.ПолучитьОбласть("Шапка");

ОбластьМакета.Параметры.Заголовок     = "№ "+СокрЛП(Объект.Номер)+" от "+Формат(Объект.Дата,"ДЛФ=Д");

ТабДокумент.Вывести(ОбластьМакета);
Возврат ТабДокумент;

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

Если кому то пригодится,можно сразу без диалоговых окон ,прямиком на принтер изменить:
ТабДокумент.Напечатать(РежимИспользованияДиалогаПечати.НеИспользовать);

Оффлайн Luzer1C

  • ****
  • Сообщений: 411
  • РЕПУТАЦИЯ: 41
  • КПД: 10%
  • Регистрация: 2014-02-17
  • Сайт: 
  • Профессия: Программист 1С
Может так попробовать?
Попытка
    ТабДокумент.Напечатать(РежимИспользованияДиалогаПечати.Использовать);
Исключение
    Сообщить("Включите принтер");
КонецПопытки;
Помочь мне очень сложно. Но можно.
Помогаю просто так...
Матёрый разработчик УПП + Бит Финанс


Теги:
 

Не открывает форму сохраненного документа, открывает форму нового.

Автор EHOTРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 4470
Последний ответ 13 Апр 2012, 23:26
от Vit1501
Автоматическое заполнение табличной части документа из табличной части другого

Автор WillРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 15914
Последний ответ 16 Авг 2012, 12:07
от Will
Заполнение поля табличной части документа из табличной части справочника.

Автор Kurt_WagnerРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 4198
Последний ответ 06 Апр 2015, 20:08
от Kurt_Wagner
Заполнение табличной части документа реквизитами табличной части справочника

Автор kaf_infoРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 621
Последний ответ 10 Май 2017, 20:44
от ilnur75
Добавление сведений в графу "основание" документа "ТОРГ-12"

Автор Ярослав1984Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 7739
Последний ответ 20 Авг 2013, 18:45
от Ярослав1984

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
172 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
51 Сообщений
alex0402
49 Сообщений
andron81_81
38 Сообщений
AIFrame
37 Сообщений
MuI_I_Ika MuI_I_Ika
34 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
28 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal