[РЕШЕНО] 1С 8.3 УФ внешняя печатная форма для документа

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем ExtreMe, 23 окт 2014.

  1. TopicStarter Overlay
    ExtreMe
    Offline

    ExtreMe Опытный в 1С

    Регистрация:
    13 сен 2014
    Сообщения:
    76
    Симпатии:
    7
    Баллы:
    29
    не могу нигде найти как сделать внешнюю печатную форму для управляемых форм
    так что бы можно было пользователю в документе по кнопке печать открыть добавленную внешнюю форму, заполнить в ней реквизиты и нажать на кнопку "Сформировать", в итоге что бы выдался сформированный табличный документ для печати.
    т.е. если для управляемых форм формировать функцию печати в модуле объекта, то нужно в функции СведенияОВнешнейОбработке() добавить команду с параметром ВызовСерверногоМетода
    Код:
    Функция СведенияОВнешнейОбработке() Экспорт
    ....
        // Создадим таблицу команд (подробнее смотрим ниже)
        ТаблицаКоманд = ПолучитьТаблицуКоманд();
        // Добавим команду в таблицу, ВызовСерверногоМетода, ОткрытиеФормы, ЗаполнениеФормы
        ДобавитьКоманду(ТаблицаКоманд, НСтр("ru = 'Печать ТТН'"),     "ТТН", "ВызовСерверногоМетода", Истина, "ПечатьMXL");
    ....
    КонецФункции
    
    но мне нужно открыть форму параметром ОткрытиеФормы и от туда сформировать печать, но процедура
    Код:
    &НаСервере
    Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
        ТабличныйДокумент = СформироватьПечатнуюФорму();
        УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "ТТН", "Печать ТТН", ТабличныйДокумент);
    КонецПроцедуры // Печать()
    
    должна находиться в моделе объекта, а не в моделе формы
    может можно где такую внешнюю форму скачать для примера?
  2. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.552
    Симпатии:
    716
    Баллы:
    204
    А в чем сложности с открытием нужной дополнительной формы в коде функции формы Печать()?
  3. TopicStarter Overlay
    ExtreMe
    Offline

    ExtreMe Опытный в 1С

    Регистрация:
    13 сен 2014
    Сообщения:
    76
    Симпатии:
    7
    Баллы:
    29
    не понял вопроса
    в функции Печать() должна быть печать, не надо туда ничего мешать :)
    это прихоти БСП
  4. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.552
    Симпатии:
    716
    Баллы:
    204
    дык если нужна какая-то доп формочка для ввода каких-нибудь данных пользователем.....или я не правильно понял суть задачи?
  5. TopicStarter Overlay
    ExtreMe
    Offline

    ExtreMe Опытный в 1С

    Регистрация:
    13 сен 2014
    Сообщения:
    76
    Симпатии:
    7
    Баллы:
    29
    то есть ты предлагаешь сделать формочку с реквизитами, сделать функцию Печать() и в итоге ТабДок.Показать();?
    в УФ так не красиво :)
  6. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.552
    Симпатии:
    716
    Баллы:
    204
    неее....как-то так:
    Код:
    Функция Печать() Экспорт
    
    СтруктураВозвращаемыхЗначений = ОткрытьФорму("ПолноеИмяФормы");
    
    ТабДок = Новый ТабДок;
    .......
    Возврат ТабДок;
  7. TopicStarter Overlay
    ExtreMe
    Offline

    ExtreMe Опытный в 1С

    Регистрация:
    13 сен 2014
    Сообщения:
    76
    Симпатии:
    7
    Баллы:
    29
    в модуле объекте внешней обработки, в функции Печать() ругается на "ОткрытьФорму"
    Процедура или функция с указанным именем не определена
  8. TopicStarter Overlay
    ExtreMe
    Offline

    ExtreMe Опытный в 1С

    Регистрация:
    13 сен 2014
    Сообщения:
    76
    Симпатии:
    7
    Баллы:
    29
    Код:
    &НаКлиенте
    Процедура Сформировать(Команда) // кнопка на форме
       ЗагрузитьМодульОбъекта();
    КонецПроцедуры
    &НаСервере
    Функция ЗагрузитьМодульОбъекта()
        Обработка = РеквизитФормыВЗначение("Объект");
        Обработка.Печать();    
    КонецФункции // ЗагрузитьМодульОбъекта()
    

    Код:
    &НаСервере
    Процедура Печать() Экспорт
        //***
    КонецПроцедуры // Печать()
    

    Последнее редактирование: 24 окт 2014

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