Имя: Пароль:
1C
 
Сделал ВПФ для управляемых форм, но в форме документа она не появляется!
0 altaykniga
 
27.03.15
14:33
Привет всем, товарищи. Нет опыта во внешних печатных формах, можете ругать, но подскажите ))

Была ВПФ для обычных форм. Переписал ее для упрляемых. Через файл-открыть впф работает хорошо, даже добавляю ее во внешние печатные формы... На форме документа при нажатии кнопки «Печать» вываливается список с разными печатными формами, но моей внешней печатной формы там нет. Думается, что неправильно передаю параметры какие-то... Гляньте код, господа, пожалуйста!

Функция СведенияОВнешнейОбработке() Экспорт
    
    ПараметрыРегистрации = Новый Структура;
    
    МассивНазначений = Новый Массив;
    ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма");
    
    МассивНазначений.Добавить("Документ.экзТТН");
    ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
    
    ПараметрыРегистрации.Вставить("Наименование", "ТТН ЮСК,ЮжныйЦентр (внешняя)");
    
    ПараметрыРегистрации.Вставить("БезопасныйРежим", Ложь);
    
    ПараметрыРегистрации.Вставить("Версия", "3.0.38.51");
    ПараметрыРегистрации.Вставить("Информация", "Внешняя печатная форма создана ""...""");
    
    // Создадим таблицу команд (подробнее смотрим ниже)
    ТаблицаКоманд = Получить_Таблицу_Команд();
    
    // Добавим команду в таблицу
    //ДобавитьКоманду(ТаблицаКоманд, "АвансовыйОтчет", "АвансовыйОтчет", "ВызовСерверногоМетода", Истина, "ПечатьMXL");
    
    ДобавитьКоманду(ТаблицаКоманд, "ТТН ЮСК,ЮжныйЦентр (внешняя)", "ТТН", "ВызовСерверногоМетода", Истина, "ПечатьMXL");
    
    // Сохраним таблицу команд в параметры регистрации обработки
    ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
    
    // Теперь вернем системе наши параметры
    Возврат ПараметрыРегистрации;
КонецФункции

Функция Получить_Таблицу_Команд()
    
    Команды = Новый ТаблицаЗначений;
    Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));
    Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));
    Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка"));
    Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));
    Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
    Возврат Команды;
    
КонецФункции

Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")
    НоваяКоманда = ТаблицаКоманд.Добавить();
    НоваяКоманда.Представление = Представление;
    НоваяКоманда.Идентификатор = Идентификатор;
    НоваяКоманда.Использование = Использование;
    НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
    НоваяКоманда.Модификатор = Модификатор;
    
КонецПроцедуры

Процедура Печать(МассивОбъектов,  КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
    
    


Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ТТН") Тогда
        СтруктураПараметровПечати = Новый Структура;
        СтруктураПараметровПечати.Вставить("ВидДокументаПечати",  "ТТН");
        СтруктураПараметровПечати.Вставить("ИмяПараметровПечати", "ПАРАМЕТРЫ_ПЕЧАТИ_РеализацияТоваровУслуг_Акт");
        УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "ТТН", "ТТН",
            ПечатьТТНки(МассивОбъектов[0], ОбъектыПечати));
КонецЕсли;


    
    ОбщегоНазначенияБП.ЗаполнитьДополнительныеПараметрыПечати(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода);    
    
КонецПроцедуры

Функция ПечатьТТНки(СсылкаНаОбъект, ОбъектыПечати) Экспорт
        
    Если СсылкаНаОбъект.Товары.Количество() = 0 Тогда
        Возврат Неопределено;
    КонецЕсли;

    ТабДок = Новый ТабличныйДокумент;
    ТабДок.Вывести(ПечатьЭкземпляраФормыСП31ЛицеваяСторона());
    ТабДок.Вывести(ПечатьЭкземпляраФормыСП31ОборотнаяСторона());
    Возврат ТабДок;
    
КонецФункции
1 DrShad
 
27.03.15
14:34
а если в вывалившемся меню выбрать Дополнительные печатные формы?
2 altaykniga
 
27.03.15
14:39
(1) нет там такой строки
3 DrShad
 
27.03.15
14:43
(2) а у меня есть
4 DrShad
 
27.03.15
14:43
что я делаю не так?
5 altaykniga
 
27.03.15
15:43
(0) Думаю, косяк разработчиков! Конфигурация - БухгалтерияЭлеватора, релиз 3.0.37.25. К типовым документам моя впф подключается, а к документам отраслевым - нет! Обработчики еще не перевели свои объекты толком на управляемый интерфейс!
6 altaykniga
 
27.03.15
15:44
(5) Обработчики = разработчики
7 Naumov
 
27.03.15
15:54
кто бы сомневался