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

Автор Тема: Как печатную форму добавить в общую кнопку печать?  (Прочитано 21033 раз)

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

Оффлайн vurdalak

  • ***
  • Сообщений: 229
  • РЕПУТАЦИЯ: 8
  • КПД: 3%
  • Регистрация: 2010-08-11
  • Сайт: 
  • Профессия: Ученик 1С
УПП 1с 8.2 Что нужно сделать чтобы мой макет добавить в общую кнопку печать.
Код процедуры кнопки "Печать":

Процедура ОсновныеДействияФормыПечать(Кнопка)

УниверсальныеМеханизмы.ОткрытьФормуВыбораПечатныхФормОбъекта(ЭтотОбъект, ЭтаФорма);

КонецПроцедуры // ОсновныеДействияФормыПечать()

Вот код:
Процедура ПечатьСтоимость()
ТабДок = Новый ТабличныйДокумент;
Макет = ПолучитьОбщийМакет("Стоимость");
ОбластьТовары = Макет.ПолучитьОбласть("Товары");
ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
ОбластьНижняя = Макет.ПолучитьОбласть("Нижняя");
   

Запрос = Новый Запрос(
"ВЫБРАТЬ
|    ЗаказПокупателю.НомерСтроки КАК НомерСтроки,
|    ЗаказПокупателю.Номенклатура КАК Номенклатура,
|    ЗаказПокупателю.Количество  КАК Количество,
|     ЗаказПокупателю.Цена  КАК Цена,
|     ЗаказПокупателю.Сумма  КАК Сумма,
|    ЗаказПокупателю.Ссылка КАК Ссылка
|ИЗ
|    Документ.ЗаказПокупателя.Товары КАК ЗаказПокупателю
|ГДЕ
|Ссылка = &Ссылка");
Запрос.УстановитьПараметр("Ссылка", Ссылка);

Результат = Запрос.Выполнить().Выбрать();
ОбластьШапка.Параметры.НомерСчета = СтруктурнаяЕдиница.НомерСчета;
ОбластьШапка.Параметры.ДатаОткрытия = СтруктурнаяЕдиница.ДатаОткрытия;
ОбластьШапка.Параметры.Заказчик = Контрагент;
ОбластьШапка.Параметры.НомерДокумента = Номер;
ОбластьШапка.Параметры.Дата = Дата;
ИтогоВДок = 0;
Пока Результат.Следующий() Цикл
ИтогоВДок = ИтогоВДок + Результат.Сумма;
КонецЦикла;
ОбластьШапка.Параметры.Итого = ИтогоВДок;
ТабДок.Вывести(ОбластьШапка);

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

 
ТабДок.ОтображатьСетку = Ложь;
ТабДок.Защита = Ложь;
ТабДок.ТолькоПросмотр = Ложь;
ТабДок.ОтображатьЗаголовки = Ложь;
ТабДок.Показать();



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


Оффлайн Yura063

  • *****
  • Сообщений: 1045
  • РЕПУТАЦИЯ: 136
  • КПД: 13%
  • Регистрация: 2010-11-15
  • Сайт: yuis.ru
  • Профессия: Программист 1С
Добавьте ВПФ, Подключите к конфигурации и она сама появится! )))
Помогли, отблагодари!

Оффлайн vurdalak

  • ***
  • Сообщений: 229
  • РЕПУТАЦИЯ: 8
  • КПД: 3%
  • Регистрация: 2010-08-11
  • Сайт: 
  • Профессия: Ученик 1С
Да так можно, но мне бы хотелось чтобы печатная форма была встроенная как и все остальные в типовой.

Оффлайн Yura063

  • *****
  • Сообщений: 1045
  • РЕПУТАЦИЯ: 136
  • КПД: 13%
  • Регистрация: 2010-11-15
  • Сайт: yuis.ru
  • Профессия: Программист 1С
Тогда добавляй макет и процедуру печать для своей печатной формы!
Помогли, отблагодари!

Оффлайн vurdalak

  • ***
  • Сообщений: 229
  • РЕПУТАЦИЯ: 8
  • КПД: 3%
  • Регистрация: 2010-08-11
  • Сайт: 
  • Профессия: Ученик 1С
Процедура ОсновныеДействияФормыПечать(Кнопка)

УниверсальныеМеханизмы.ОткрытьФормуВыбораПечатныхФормОбъекта(ЭтотОбъект, ЭтаФорма);

КонецПроцедуры // ОсновныеДействияФормыПечать()
Вот эта процедура вызывается общей кнопкой "Печать" из общего модуля "УниверсальныеМеханизмы":
Процедура ОткрытьФормуВыбораПечатныхФормОбъекта(Объект, ФормаВладелец) Экспорт

// Открыть форму выбора печатных форм
Форма = ПолучитьОбщуюФорму("ФормаВыбораПечатныхФорм", ФормаВладелец, Объект);

Если Форма.ОткрытьМодально() <> Истина Тогда
Возврат;
КонецЕсли;

// Печать макета объекта
Для каждого СтрокаКнопки Из Форма.ЭлементыФормы.ДеревоМакетовПечати.ВыделенныеСтроки Цикл

Расшифровка = СтрокаКнопки.Расшифровка;

Если ТипЗнч(Расшифровка) = Тип("Структура") и Расшифровка.ВидПечатнойФормы = Перечисления.ВидыДополнительныхВнешнихОбработок.ПечатнаяФорма Тогда
ТабДокумент = НапечататьВнешнююФорму(Объект.Ссылка, Расшифровка);
ЭтоДокумент = Метаданные.Документы.Содержит(Объект.Метаданные());
НапечататьДокумент(ТабДокумент, 0, Форма.НаПринтер, ?(ЭтоДокумент, ОбщегоНазначения.СформироватьЗаголовокДокумента(Объект), Строка(Объект)), Объект.Ссылка);
Иначе
Объект.Печать(Расшифровка, 0, Форма.НаПринтер);
КонецЕсли;

КонецЦикла;

КонецПроцедуры // ОткрытьФормуВыбораПечатныхФормОбъекта()
И как сюда добавить мою процедуру?

Добавлено: 02 Ноя 2012, 17:54

Как добавить в общую форму "ФормаВыбораПечатныхФорм" мою печатную форму и процедуру.
Добавлено: 04 Ноя 2012, 16:37

Никто не знает как это сделать?

Последний раз редактировалось: vurdalak; 04 Ноя 2012, 16:37

Оффлайн vurdalak

  • ***
  • Сообщений: 229
  • РЕПУТАЦИЯ: 8
  • КПД: 3%
  • Регистрация: 2010-08-11
  • Сайт: 
  • Профессия: Ученик 1С
в общем я добрался где все это делается:
Функция ПолучитьСтруктуруПечатныхФорм() Экспорт

СтруктураПечатныхФорм = Новый Структура("Заказ,ЗаказКорректировка,Счет,Бланк",
                                        "Заказ покупателя",
                                        "Заказ покупателя (с учетом корректировок)",
                                        "Счет на оплату (с учетом корректировок)",
                                        "Бланк товарного наполнения");

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

Возврат СтруктураПечатныхФорм;

КонецФункции // ПолучитьСтруктуруПечатныхФорм()

где находятся эти макеты никто не скажет?
                                                 Заказ,ЗаказКорректировка,Счет,Бланк",
                                           "Заказ покупателя",
                                           "Заказ покупателя (с учетом корректировок)",
                                           "Счет на оплату (с учетом корректировок)",
                                           "Бланк товарного наполнения
В общих макетах я не нашел.

Оффлайн Dethmontt

  • Денис
  • Модератор
  • *****
  • Сообщений: 2857
  • РЕПУТАЦИЯ: 546
  • КПД: 19%
  • Адын Эс
  • Регистрация: 2010-11-01
  • Сайт: 
  • Профессия: Программист 1С
Глобальный поиск не работает?
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
СтруктураПечатныхФорм = Новый Структура("Заказ,ЗаказКорректировка,Счет,Бланк",
                                            "Заказ покупателя",
                                            "Заказ покупателя (с учетом корректировок)",
                                            "Счет на оплату (с учетом корректировок)",
                                            "Бланк товарного наполнения");

Макеты соответственно называются: Заказ,ЗаказКорректировка,Счет,Бланк.
Искать среди макетов документа или в общих макетах.

Должна быть еще стандартная процедура Печать(), где прописывается вызов процедуры печати вашей печ. формы.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн vurdalak

  • ***
  • Сообщений: 229
  • РЕПУТАЦИЯ: 8
  • КПД: 3%
  • Регистрация: 2010-08-11
  • Сайт: 
  • Профессия: Ученик 1С


Теги:
 


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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
170 Сообщений
ilyay ilyay
69 Сообщений
oleg-x
48 Сообщений
alex0402
44 Сообщений
andron81_81
38 Сообщений
AIFrame
37 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
29 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 206
  • Точка Скрытых: 0
  • Точка Пользователей: 3
  • Точка Сейчас на форуме:

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal