Имя: Пароль:
1C
1С v8
Добавить внешнюю печатную форму (УФ)
,
0 tiago
 
19.05.17
13:59
Приветствую, товарищи!

Первый раз пытаюсь добавить внешнюю печатную форму в конф-ю на УФ и столкнулся с трудностями. Нужные процедуры/функции (СведенияОВнешнейОбработке) в модуль обработки добавил, но в самом документе (в кн. Печать) новая строка не добавляется(((

В чем может быть проблема?
Может ли быть из-за того, что обработка требует красным цветом разрешить использование в небезопасном режиме, а я не в курсе как это сделать?
1 Ц_У
 
19.05.17
14:05
(0) 1. в сведениях можно отключить безопасный режим или влючить
2. в документе нет нужных процедур/функций для подключения печатной формы см. типовые
2 tiago
 
19.05.17
14:06
Еще заметил такое, что в созданном элементе справочника "Дополнительные обработки" в Назначении ничего не выбрано, а когда пытаюсь выбрать, то этот выбор не сохраняется.
В самом же модуле в Параметры регистрации нужный документ добавлен в массив Назначений.
3 tiago
 
19.05.17
14:08
(1) В модуле у меня есть такая строка
    ПараметрыРегистрации.Вставить("БезопасныйРежим", Ложь);
Я рассчитывал, что она и должна решить вопрос с безопасностью.
4 tiago
 
19.05.17
14:10
(1) Уточните, что имели в виду в 2.
5 Ц_У
 
19.05.17
14:11
6 Ц_У
 
19.05.17
14:13
Ну и в состав добавить ОбъектСДополнительнымиКомандами
7 tiago
 
19.05.17
14:37
(5) Я всего лишь хотел повторить такое же как в уроках
https://www.youtube.com/watch?v=raETys0J16M
https://www.youtube.com/watch?v=OdY5JdHMilU

Но ваш пример запутал меня еще больше))
8 Ц_У
 
19.05.17
14:44
(7) "конф-ю на УФ" видимо самописная, в видео пример для типовой?
9 tiago
 
19.05.17
14:47
Добавляю в типовую от "Рейтинга"
10 Ц_У
 
19.05.17
14:49
(9) я даже не знаю поздравить вас или посочувствовать
11 _Дайвер_
 
19.05.17
14:55
(0) Функция СведенияОВнешнейОбработке() Экспорт
    
    Имя = "Наименование";
    Синоним = "Наименование обработки в 1с";
    
    ОбъектыНазначенияФормы = Новый Массив;
    ПараметрыРегистрации = Новый Структура;
    ПараметрыРегистрации.Вставить("Вид","ДополнительнаяОбработка");
    ПараметрыРегистрации.Вставить("Наименование",Синоним);
    ПараметрыРегистрации.Вставить("Версия",Формат(ТекущаяДата(),"ДФ=yyyy.MM.dd"));
    ПараметрыРегистрации.Вставить("БезопасныйРежим",Ложь);
    ПараметрыРегистрации.Вставить("Информация","Информация об обработке");
    
    ТаблицаКоманд = ПолучитьТаблицу_Команд();
    
    ДобавитьКоманду(ТаблицаКоманд,
    Синоним,
    Имя,
    "ОткрытиеФормы",
    Ложь,
    "ФормаОтчета"
    );
    
    ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
    
    Возврат ПараметрыРегистрации;
    
КонецФункции

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

Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")
    
    НоваяКоманда = ТаблицаКоманд.Добавить();
    НоваяКоманда.Представление = Представление;
    НоваяКоманда.Идентификатор = Идентификатор;
    НоваяКоманда.Использование = Использование;
    НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
    НоваяКоманда.Модификатор = Модификатор;
    
КонецПроцедуры
12 Ц_У
 
19.05.17
15:07
(11) это поможет вывести кнопку печать в документе?
13 tiago
 
19.05.17
15:07
(11) Практически точно так же написано у и меня, кроме строк
    ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма");

и

    ДобавитьКоманду(ТаблицаКоманд, "Загрузка договоров", "ЗагрузкаДоговоров", "ВызовСерверногоМетода", ложь, "ПечатьXML");

Но это считаю не критично.
В вашем случае печатная форма добавляется?
14 Ц_У
 
19.05.17
15:09
(13) у формы документа есть что то похожее:
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    // СтандартныеПодсистемы.Печать
    УправлениеПечатью.ПриСозданииНаСервере(ЭтотОбъект);
    // Конец СтандартныеПодсистемы.Печать
КонецПроцедуры
15 _Дайвер_
 
19.05.17
15:20
(13) Не правильно услышал автора)
16 _Дайвер_
 
19.05.17
15:22
(0) Тебе в список команд добавить вывести название твоей печатной формы нужно?
17 tiago
 
19.05.17
15:25
(16) Мне нужно добавить обработку с внешней печатной формой в справочник "дополнительных отчетов и обработок", и что бы эта обработка появилась в документе, когда нажимаю на кн. Печать.
18 Ц_У
 
19.05.17
15:34
(17) представим, что все же типовая...
Определяемые типы ищи (6) в составе нет твоего документа
проверь наличие функций из // СтандартныеПодсистемы.Печать
19 tiago
 
19.05.17
15:41
(14) У меня в общем модуле УправлениеПечатью нет такой процедуры ПриСозданииНаСервере. И модуля СтандартныеПодсистемы нету. Но все это есть в конф-и релизом постарше.
Видимо не удастся внешнюю добавить в список, как я задумал без изменения конф-и. Тогда придется лепить кнопку и прописывать весь код в модуле док-а...

Спасибо за помощь!
20 Ц_У
 
19.05.17
15:51
(19) создай команду и дерни через ВнешниеОбработки(Отчеты).Подключить()
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший