|
Вывод печатных форм документа | ☑ | ||
---|---|---|---|---|
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) тогда следует проверить его наличие в процедуре ПриОпределенииОбъектовСКомандамиПечати модуля УправлениеПечатьюПереопределяемый. Скорей всего там его просто нет.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |