Групповая печать документов

  • Автор темы Yan
  • Дата начала
Статус
Закрыто для дальнейших ответов.
Y

Yan

Помогите пожалуйсто!

Ситуация:

1.есть расходные накладные, в них кнопка ПЕЧАТЬ. при ее нажатии открывается список отчетов для выбора. Выбираем нужную строку (этот отчет сохранен как внешний отчет).При выборе открывается не сразу печатная форма, а открывается форма настройки отчета для дополнительных параметров.

2.Имеется другой отчет (не важно какой)
в нем нужно сделать кнопку при нажатии на которую будет происходить групповая печать Расходных накладных за период и параметрами указанными в этом отчете.

как это сделать?
 
V

vitfil

Ну и передавайте из вашего отчета в печатную форму необходимый документ. Или я не понял сути вопроса?
 
Y

Yan

не понимаю как с этими контекстами работать, где можно толково почитать на эту тему?
или кто-нибудь примерно словами набросать может?
 
V

vitfil

Посмотрите, как это сделано в ТиС. Там есть возможность из журнала документов печатать любой документ. Думаю, по аналогии можно сделать из любой формы отчета сделать.
 
Z

Zab

2.Имеется другой отчет (не важно какой)
в нем нужно сделать кнопку при нажатии на которую будет происходить групповая печать Расходных накладных за период и параметрами указанными в этом отчете.
я не понял, при чем к вопросу первый пункт. По второму:
Процедура из формы груповой печати.
Код:
Процедура Печать(Форма)
// Печать скопом всех требований за период журнала...
Док = СоздатьОбъект("Документ");
Док.ИспользоватьЖурнал("ПлатежныеДокументы");
глТаблица = СоздатьОбъект("Таблица");
Док.ВыбратьДокументы(НачалоИнтервала(),КонецИнтервала());
Кол = 0;
Пока Док.ПолучитьДокумент() = 1 Цикл
Кол = Кол+1;
Если Док.Вид() <> "ПлатежноеТребованиеНов" Тогда Продолжить; КонецЕсли;
Форма1 = Форма;
ОткрытьФорму(Док.ТекущийДокумент(),Форма1);
глТаблица.НоваяСтраница();
Если Кол >= 50 Тогда
Если Вопрос("Напечатано 50 требований, прервать?", 4) = 6 Тогда
Прервать;
Иначе
Кол = 0;
КонецЕсли;
КонецЕсли;
КонецЦикла;
глТаблица.Опции(0,0,0,0,"ОпцииПечатиПлПор","ПараметрыОкнаПлПор");	
глТаблица.ТолькоПросмотр(1);
глТаблица.Показать("Печать поручений","");
КонецПроцедуры
а это в процедуре ПриОткрытии() данного документа.
Код:
	ИсхТаб = Форма.Параметр;
Если СокрЛП(ИсхТаб) = "" Тогда
ИсхТаб = "Таблица3";
КонецЕсли;
глТаблица.ИсходнаяТаблица(ИсхТаб);
Печать(глТаблица);
Форма.Закрыть(0);
Возврат;
В результате - на экране таблица в которой распечатаны все доки за период.
Через Форма.Параметр передается значение, у меня это то, какую форму печатать. Ты можешь передать список значений ,и в нем любые свои настройки.
 
Z

Zab

Yan, можешь еще вот это глянуть. По описанию, похоже на то, что тебе нужно.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!