Имя: Пароль:
1C
1С v8
проблема с внешней печатной формой
0 riks05
 
31.07.17
08:22
Добрый день. Строчу значит форму ТОРГ12 для УТ 11.3
При открытии через Файл-открыть Спокойно всё печатается. Но если добавить в список внешних форм, то выдаёт ошибку "печатная форма не найдена" в чём проблема? Признаюсь что частично дёрнул эту форму. Помогите разобраться. Ссылка на форму ниже.
https://drive.google.com/open?id=0B0FiiNtBhhNsV1ZISE5pYUhKS28
1 Mankubus
 
31.07.17
08:41
(0) добавил функцию СведенияОВнешнейОбработке?
2 riks05
 
31.07.17
08:55
(1) да
Функция СведенияОВнешнейОбработке() Экспорт
    
    СтруктураРезультата = Новый Структура();
    СтруктураРезультата.Вставить("Вид", "ПечатнаяФорма");
    СтруктураРезультата.Вставить("Наименование", Метаданные().Синоним);
    СтруктураРезультата.Вставить("Версия", "1.1");
    СтруктураРезультата.Вставить("БезопасныйРежим", Ложь);
    СтруктураРезультата.Вставить("Информация", "");
    
    МассивНазначение = Новый Массив;
    МассивНазначение.Добавить("Документ.ПоступлениеТоваровУслуг");
        
    //команды
    ТаблицаКоманд = Новый ТаблицаЗначений;
    ТаблицаКоманд.Колонки.Добавить("Представление"); //как будет выглядеть описание печ.формы для пользователя
    ТаблицаКоманд.Колонки.Добавить("Идентификатор"); //имя нашего макета
    ТаблицаКоманд.Колонки.Добавить("Использование"); //ВызовСерверногоМетода
    ТаблицаКоманд.Колонки.Добавить("ПоказыватьОповещение"); //Истина
    ТаблицаКоманд.Колонки.Добавить("Модификатор"); //ПечатьМХL
    
    НоваяКоманда = ТаблицаКоманд.Добавить();
    НоваяКоманда.Представление = "ТОРГ12";
    НоваяКоманда.Идентификатор = "ПечатьСчета"; //Внешняя печатная форма
    НоваяКоманда.Использование = "ВызовСерверногоМетода"; //здесь можно прописать использование как серверного так и клиентского, отличие в том, что серверный метод будет обращаться к экспортной процедуре из модуля объекта, клиентский - к экспортной процедуре из модуля формы объекта
    НоваяКоманда.ПоказыватьОповещение = Истина;
    НоваяКоманда.Модификатор = "ПечатьMXL";

    СтруктураРезультата.Вставить("Назначение", МассивНазначение);
    СтруктураРезультата.Вставить("Команды", ТаблицаКоманд);
    
    Возврат СтруктураРезультата;
    
КонецФункции
3 riks05
 
31.07.17
08:56
(1) да, была такая функция
4 riks05
 
31.07.17
08:57
Процедура Печать(ОбъектыНазначения, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
    
    
    
    НайденнаяСтрока = КоллекцияПечатныхФорм.Найти("ПечатьСчета", "ИмяМакета");
    Если НайденнаяСтрока <> Неопределено Тогда
        НайденнаяСтрока.ТабличныйДокумент = СформироватьПечатнуюФормуТОРГ12(ОбъектыНазначения, ОбъектыПечати);
    КонецЕсли;
    
КонецПроцедуры
5 Serg_1960
 
31.07.17
09:39
Мелочь, но так будет методически более корректно:
    
ТаблицаКоманд = Новый ТаблицаЗначений;
    ТаблицаКоманд.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));//как будет выглядеть описание печ.формы для пользователя
6 riks05
 
31.07.17
09:52
(5) да согласен, но появлению печатной формы это не по способствовало
7 Serg_1960
 
31.07.17
09:53
Интересно: у автора процедура Печать() формируется &НаСервере или как? :)
8 oslokot
 
31.07.17
10:00
Недавно делал печформу торг12. Вот как должна выглядеть процедура входа

Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
    
    ПараметрыПечати = Новый Структура("ВыводитьГТД,ВыводитьУслуги", Ложь, Ложь);
    
    СтруктураТипов = ОбщегоНазначенияУТ.СоответствиеМассивовПоТипамОбъектов(МассивОбъектов);
    
    УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
        КоллекцияПечатныхФорм,
        "ПечатьТоварнаяНакладнаяТОРГ12",
        "Товарная накладная (ТОРГ-12)",
        СформироватьПечатнуюФорму(СтруктураТипов, МассивОбъектов, ПараметрыПечати));
    
КонецПроцедуры
9 oslokot
 
31.07.17
10:01
+ УТ 11.3
10 riks05
 
31.07.17
10:07
(9) Моежешь отправить свою форму, я просто в этом деле всего пару недель, тяжело разобраться
11 oslokot
 
31.07.17
10:11
12 riks05
 
31.07.17
10:34
(11) Спасибо большое, в твоей форме не вижу запроса, по которому выбирается данные для ТЧ. Просто суть моей задачи такова что в документе вводится нормальная номенклатура, а в печатной форме нужно вывести Наименование из справочника "номенклатура поставщика"
13 oslokot
 
31.07.17
10:43
(12) а в форме вообще ничего нет, не смотри туда)
Все в модуле. А запроса там нет, используется обращение к типовому через менеджер объекта.

Но ты можешь смело впендюрить туда любой свой запрос
14 riks05
 
31.07.17
10:48
(13) а есть вообще гденибудь гайд, по вытягиванию стандартных форм во внешние и последующим извращениеям? просто не хочется так по каждой форме долбить на форумы. а судя по моей стажировке мне подобных заданий будет приходить куча
15 oslokot
 
31.07.17
10:50
да полно. на итс-е должно быть, да и погугли
16 Chameleon1980
 
31.07.17
11:05
гугли конструктор впф
17 Chameleon1980
 
31.07.17
11:06
или стучись