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

Тема в разделе "1C и всё что с ней связано", создана пользователем Yan, 5 июн 2007.

Статус темы:
Закрыта.
  1. Yan

    Yan Гость

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

    Ситуация:

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

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

    как это сделать?
     
  2. vitfil

    vitfil IT-интегратор

    Регистрация:
    2 апр 2004
    Сообщения:
    2.070
    Симпатии:
    0
    Ну и передавайте из вашего отчета в печатную форму необходимый документ. Или я не понял сути вопроса?
     
  3. Yan

    Yan Гость

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

    vitfil IT-интегратор

    Регистрация:
    2 апр 2004
    Сообщения:
    2.070
    Симпатии:
    0
    Посмотрите, как это сделано в ТиС. Там есть возможность из журнала документов печатать любой документ. Думаю, по аналогии можно сделать из любой формы отчета сделать.
     
  5. Zab

    Zab Well-Known Member
    1C Team

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

    Zab Well-Known Member
    1C Team

    Регистрация:
    7 авг 2006
    Сообщения:
    583
    Симпатии:
    0
    Yan, можешь еще вот это глянуть. По описанию, похоже на то, что тебе нужно. http://www.rapidshare.ru/306732
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей