|   |   | 
| 
 | Вывод печатных форм документа | ☑ | ||
|---|---|---|---|---|
| 0
    
        LivingStar 30.09.19✎ 05:37 | 
        Необходимо сделать вывод печатных форм документа. У документа есть макеты но нет их печати.
 Подскажите пожалуйста как правильно это сделать? В модуле менеджера есть процедура Печать() Она может как то помочь? Или нужно самому все создавать? Хотелось бы использовать и подключить, имеющийся функционал. Если это возможно. Пытаюсь узнать как сделать это правильно. // Формирует печатные формы. // // Параметры: // МассивОбъектов - Массив - ссылки на объекты, которые нужно распечатать; // ПараметрыПечати - Структура - дополнительные настройки печати; // КоллекцияПечатныхФорм - ТаблицаЗначений - сформированные табличные документы (выходной параметр) // ОбъектыПечати - СписокЗначений - значение - ссылка на объект; // представление - имя области в которой был выведен объект (выходной параметр); // ПараметрыВывода - Структура - дополнительные параметры сформированных табличных документов (выходной параметр). // Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт пбУправлениеПечатьюВнутренний.Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода, "прбОперативноеСообщениеОбИнцидентеПредпосылкеИнцидента", "ПроизводственнаяБезопасностьПромышленнаяБезопасность"); КонецПроцедуры | |||
| 1
    
        PaulBC 30.09.19✎ 05:53 | ||||
| 2
    
        LivingStar 30.09.19✎ 06:26 | 
        (1) нету доступа     | |||
| 3
    
        ДенисЧ 30.09.19✎ 06:27 | 
        (2) На 7 дней возьми и почитай. Или прояви смекалку и найди образ диска в сетях.     | |||
| 4
    
        LivingStar 30.09.19✎ 06:27 | 
        (3) Он уже был у меня.     | |||
| 5
    
        ДенисЧ 30.09.19✎ 06:32 | 
        (4) И что? Новый емейл завести никак?     | |||
| 6
    
        LivingStar 30.09.19✎ 06:36 | 
        (5) Хорошо, вошел. Как мне понять что правильно сделать?     | |||
| 7
    
        ДенисЧ 30.09.19✎ 06:45 | 
        (6) Хорошо, вошёл. А теперь попробуй почитать...     | |||
| 8
    
        hhhh 30.09.19✎ 06:47 | 
        (6) наверно, правильнее всего будет прочитать, что там написано. И применить всё к своему документу.     | |||
| 9
    
        hhhh 30.09.19✎ 06:49 | 
        (6) да. И нам заодно вкратце расскажешь, про что там. Интересно ведь.     | |||
| 10
    
        LivingStar 30.09.19✎ 06:51 | 
        (8) Я именно этим сейчас занят. 
 (7) Может какие то намеки? Читать долго придется. | |||
| 11
    
        LivingStar 30.09.19✎ 07:12 | 
        Говорят кнопки печати не создаются. Они сами появляются в режиме предприятия.
 Вот пытаюсь понять как это. | |||
| 12
    
        hhhh 30.09.19✎ 07:21 | 
        (11) а ты в режиме предприятия наверно не посмотрел. Наверняка там есть эти кнопки.     | |||
| 13
    
        LivingStar 30.09.19✎ 07:24 | 
        (12) Хочу об этом же спросить. У документа есть 2 вида события.
 В режиме предприятия есть кнопка печати. У документа с одним видом события активна, у другого нет. Как это сделано? Подскажите пожалуйтса. А то это же не работает в другой базе. Нужно разобраться в чем дело. И сделать там также. | |||
| 14
    
        hhhh 30.09.19✎ 07:37 | 
        (13) это вам у авторов конфы надо спросить, как там сделано. Мы-то откуда это можем знать? Смотрите в модуль менеджера.     | |||
| 15
    
        Мимохожий Однако 30.09.19✎ 07:38 | 
        ОФФ: Пятнично     | |||
| 16
    
        LivingStar 30.09.19✎ 07:40 | 
        (14) Типовой механизм. Я думал это известно, куда посмотреть.     | |||
| 17
    
        hhhh 30.09.19✎ 07:51 | 
        (16) конечно известно. В модуль менеджера. Процедуры какие там?     | |||
| 18
    
        LivingStar 30.09.19✎ 09:43 | 
        (17) В модуле менеджера там где нет результата, вот такие процедуры. Но кнопки нет (((
 Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт пбУправлениеПечатьюВнутренний.ДобавитьКомандыПечати(КомандыПечати,"ОперативноеСообщениеОбАварииИнцидентеУтратеВзрывчатыхВеществ", "ПроизводственнаяБезопасностьПромышленнаяБезопасность"); КонецПроцедуры // Формирует печатные формы. // // Параметры: // МассивОбъектов - Массив - ссылки на объекты, которые нужно распечатать; // ПараметрыПечати - Структура - дополнительные настройки печати; // КоллекцияПечатныхФорм - ТаблицаЗначений - сформированные табличные документы (выходной параметр) // ОбъектыПечати - СписокЗначений - значение - ссылка на объект; // представление - имя области в которой был выведен объект (выходной параметр); // ПараметрыВывода - Структура - дополнительные параметры сформированных табличных документов (выходной параметр). // Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт пбУправлениеПечатьюВнутренний.Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода, "ОперативноеСообщениеОбАварииИнцидентеУтратеВзрывчатыхВеществ", "ПроизводственнаяБезопасностьПромышленнаяБезопасность"); КонецПроцедуры | |||
| 19
    
        Мимохожий Однако 30.09.19✎ 09:45 | 
        (18) Пройдись отладчиком ПриОткрытии или ПриСозданииНаСервере. Набредешь на место, где кнопки добавляются     | |||
| 20
    
        hhhh 30.09.19✎ 09:45 | 
        (18) кнопки - это не кнопки. По-научному это называется "команды". И они походу есть у вас.     | |||
| 21
    
        hhhh 30.09.19✎ 09:46 | 
        (18) вот же ДобавитьКомандыПечати. Добавить команды, улавливаешь?     | |||
| 22
    
        LivingStar 30.09.19✎ 09:54 | 
        (21) Дело в том что работает в одной конфигурации. И не работает в другой. Я смотрю по коду и не вижу причин, почему не работает в той в которой не работает. И что мне нужно поправить. Может будет какая подсказка. Да я сомтрю код в отладчике. Но выявить не могу причину. В чем различия, или чего не хватает.     | |||
| 23
    
        Fish гуру 30.09.19✎ 09:56 | 
        Похоже, не хватает знаний.     | |||
| 24
    
        hhhh 30.09.19✎ 09:57 | 
        (22) что конкретно не работает? Ругается? Или плюется?     | |||
| 25
    
        LivingStar 30.09.19✎ 10:37 | 
        (23) Так я и пытаюсь разобраться. Все прописано а не работает. А в другой конфигурации работает.
 (24) Ошибок нет. Просто нет кнопки на документе. А в другой конфигурации есть или не активна в зависимости от вида докумнета. | |||
| 26
    
        catena 30.09.19✎ 10:44 | 
        (22)Вряд ли модуль пбУправлениеПечатьюВнутренний типовой, а значит, мало у кого он есть. Сложно сказать, что там происходит.     | |||
| 27
    
        LivingStar 30.09.19✎ 10:47 | ||||
| 28
    
        Василий Алибабаевич 30.09.19✎ 10:48 | 
        (27) Офигенная картинка. Сразу все стало понятно. )))     | |||
| 29
    
        Кац 30.09.19✎ 10:55 | 
        (25) Документ не типовой чтоль?     | |||
| 30
    
        hhhh 30.09.19✎ 11:08 | 
        (27) ну, сравнение этих двух конф сделай     | |||
| 31
    
        LivingStar 30.09.19✎ 11:13 | 
        Там где работает увидел что заходит вот в этот цикл. Что же нужно для этого сделать?
 Функция КомандыПечатиОбъекта(ОбъектМетаданных) Экспорт КомандыПечати = СоздатьКоллекциюКомандПечати(); Если ТипЗнч(ОбъектМетаданных) <> Тип("ОбъектМетаданных") Тогда Возврат КомандыПечати; КонецЕсли; Источники = ПодключаемыеКоманды.ДеревоИсточниковКоманд(); НастройкиAPI = ПодключаемыеКоманды.НастройкиПрограммногоИнтерфейсаПодключаемыхОбъектов(); ПодключенныеОтчетыИОбработки = ПодключаемыеКоманды.ТаблицаПодключаемыхОбъектов(НастройкиAPI); Источник = ПодключаемыеКоманды.ЗарегистрироватьИсточник(ОбъектМетаданных, Источники, ПодключенныеОтчетыИОбработки, НастройкиAPI); Если Источник.Менеджер = Неопределено Тогда Возврат КомандыПечати; КонецЕсли; ДобавляемыеКомандыПечати = СоздатьКоллекциюКомандПечати(); Источник.Менеджер.ДобавитьКомандыПечати(ДобавляемыеКомандыПечати); Для Каждого КомандаПечати Из ДобавляемыеКомандыПечати Цикл Если КомандаПечати.МенеджерПечати = Неопределено Тогда | |||
| 32
    
        catena 30.09.19✎ 11:24 | 
        (31)Посмотреть, что не так с ДобавляемыеКомандыПечати у того, кто не заходит.     | |||
| 33
    
        LivingStar 30.09.19✎ 12:44 | 
        (32) А от куда они берутся? что именно смотреть?     | |||
| 34
    
        catena 30.09.19✎ 12:45 | 
        (33)Я все понимаю, но форум не позволяет читать тебе твой же код вслух. Попробуй самостоятельно, это совсем не больно.     | |||
| 35
    
        hhhh 30.09.19✎ 12:47 | 
        (33) Источник.Менеджер.ДобавитьКомандыПечати     | |||
| 36
    
        LivingStar 30.09.19✎ 13:24 | 
        (35) В базе где все работает нет ничего по коду такого!!!! Практически все идентично, делал сравнение объединение.
 Ничего не выявил. Начинаю отладчиком смотреть, там сотня окон открывается, вызовов, процедур, функций. Я вообще не понимаю что смотреть! | |||
| 37
    
        hhhh 30.09.19✎ 13:26 | 
        (36) Практически все идентично - значит не всё?     | |||
| 38
    
        LivingStar 30.09.19✎ 13:28 | 
        Дорогие читатели! Может подскажете что, то есть тыкните меня носом? Реально не могу ничего понять.
 Лажу по коду и что отловить не могу понять (((( | |||
| 39
    
        LivingStar 30.09.19✎ 13:30 | 
        В базе где работает. Нужный документ, форма списка и сама форма документа открывается с кнопкой. Она активна или нет в зависимости от вида документа. А вот где нужно сделать просто её нет.     | |||
| 40
    
        LivingStar 30.09.19✎ 13:35 | 
        Почему на этой процедуре при открытии документа, Функция КомандыПечатиОбъекта(ОбъектМетаданных) Экспорт
 точки останова то срабатывают то нет. Я и сижу не пойму как я в неё вхожи, или почему не могу войти. | |||
| 41
    
        LivingStar 30.09.19✎ 13:46 | 
        (37) К примеру. При открытии формы списка документов выполняется процедура
 Функция КомандыПечатиОбъекта(ОбъектМетаданных) Экспорт там есть такая строка ДобавляемыеКомандыПечати = СоздатьКоллекциюКомандПечати(); Источник.Менеджер.ДобавитьКомандыПечати(ДобавляемыеКомандыПечати); Потом при открытии формы документа, уже не запускается. То есть при открытии формы списка это все задается? | |||
| 42
    
        Ёпрст гуру 30.09.19✎ 14:21 | 
        (0)
 Ошибка в 1025 строке | |||
| 43
    
        LivingStar 30.09.19✎ 16:06 | 
        (42) Вопрос пока не решен. Так как очевидных моментов я не вижу.     | |||
| 44
    
        Fish гуру 30.09.19✎ 16:08 | 
        (40) "не пойму как я в неё вхожи, или почему не могу войти." - Смотри стек вызовов, и поймёшь.     | |||
| 45
    
        Ёпрст гуру 30.09.19✎ 16:14 | 
        (43) в самодельном документе не назначены обработчики формы     | |||
| 46
    
        LivingStar 01.10.19✎ 06:39 | 
        (45) Есть все обработчики все как нужно.     | |||
| 47
    
        RomaH naïve 01.10.19✎ 07:04 | 
        документ надо добавить в список документов с командами печати ... 
 https://its.1c.ru/db/bsp303doc#content:53:hdoc там про это написано | |||
| 48
    
        LivingStar 01.10.19✎ 07:39 | 
        (47) Я сейчас выявил что его не было в одном общем макете, и по коду ещё различия.     | |||
| 49
    
        LivingStar 01.10.19✎ 07:47 | 
        (47) Там и команды в макете заданы.     | |||
| 50
    
        Кац 01.10.19✎ 08:16 | 
        Если док самописный, тогда читаем по ссылке из (47)
 "Объекты конфигурации, являющиеся поставщиками команд печати, следует перечислить в процедуре ПриОпределенииОбъектовСКомандамиПечати модуля УправлениеПечатьюПереопределяемый." | |||
| 51
    
        Василий Алибабаевич 01.10.19✎ 08:19 | 
        (50) Эта музыка будет вечной.
 ТС принципиально не читает ни документацию, ни ответы на форуме. | |||
| 52
    
        LivingStar 01.10.19✎ 08:33 | 
        (50) Там все было и в модулях форм и перечислено в процедурах
 (51) не известно сколько там и как делалось. Но я выявил что не было идентификатора документа и настроек команд печати в одном общем макете. По этому, хоть зачитайся документацию, понятно не будет. Открыл 2 отладчика и шел по коду, пока не появился на мек, на то что может быть. Общее представление получил. Там дальше уже в детали нужно влазить. То что писал в (43) увидел. | |||
| 53
    
        Кац 01.10.19✎ 08:39 | 
        (52) ты уже нашел в своей конфигурации общий модуль "УправлениеПечатьюПереопределяемый" ?     | |||
| 54
    
        LivingStar 01.10.19✎ 11:22 | 
        (53) Если в коде задействован другой механизм. Что он даст этот модуль?
 Возможно да смотрел его, и нужный идентификатор документа там на месте. | |||
| 55
    
        banco 01.10.19✎ 11:31 | 
        (54) Версия БСП какая?     | |||
| 56
    
        LivingStar 01.10.19✎ 12:08 | 
        (55) Подскажите где это пишут?     | |||
| 57
    
        Кац 01.10.19✎ 12:14 | 
        (56) стандартныеподсистемысервер.версиябиблиотеки()
 в третий раз спрашиваю, док самописный? | |||
| 58
    
        LivingStar 01.10.19✎ 12:30 | 
        (57) Похоже самописный, конфигурация не знакомая, с префиксами, видимо самописный.     | |||
| 59
    
        LivingStar 01.10.19✎ 13:25 | 
        (55) 3.0.2.218     | |||
| 60
    
        Кац 01.10.19✎ 16:35 | 
        (58) тогда следует проверить его наличие в процедуре ПриОпределенииОбъектовСКомандамиПечати модуля УправлениеПечатьюПереопределяемый. Скорей всего там его просто нет.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |