|
перенос встроенной печ формы во внешнюю из УПП | ☑ | ||
---|---|---|---|---|
0
manti
11.05.12
✎
11:44
|
Доброго всем времени! УПП стоит 1.3.22.
Есть документа корректировка реализации, есмть его встроенная печ. форма. Делаю из встроенной внешнюю. Дошел до следующего момента УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер("Документ.СчетФактураВыданный", ИмяМакета, ПараметрКоманды, Неопределено); И далее понеслись вызовы встроенных функций и процедур Процедура ВыполнитьКомандуПечатиНаПринтер, из нее Процедура СформироватьПечатныеФормыДляБыстройПечатиОбычноеПриложение, Процедура СформироватьПечатныеФормыДляБыстройПечати, Процедура СформироватьПечатныеФормы, Функция МенеджерОбъектаПоПолномуИмени, Функция РазложитьСтрокуВМассивПодстрок. И все эти вызовы идут ради Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода), которая вызывается из Процедура СформироватьПечатныеФормы. Проблема вся в том, что если я оставлю эту цепочку всю как есть, то вызывается функции из глобальных модулей, а мне нужно чтобы эта печать шла из моей внешней обработки. Как моэно решить эту проблему? |
|||
1
Cube
11.05.12
✎
11:47
|
(0) "А ты думаешь нам, царям, легко?" (с) Иван Васильевич меняет профессию.
Перенести нужные куски кода в модуль обработки не предлагать? |
|||
2
Галахад
гуру
11.05.12
✎
11:48
|
Чо-та не понял. Разве плохо "вызывается функции из глобальных модулей"?
В чем проблема-то? |
|||
3
manti
11.05.12
✎
11:50
|
тоесть после УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер("Документ.СчетФактураВыданный", ИмяМакета,ПараметрКоманды,Неопределено); должна пойти
Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) ПараметрыВывода.ДоступнаПечатьПоКомплектно = Истина; Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "СчетФактура") Тогда УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "СчетФактура", "Счет фактура", ПечатьСчетаФактурыММ(МассивОбъектов, ОбъектыПечати)); КонецЕсли; Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "СчетФактура283") Тогда УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "СчетФактура283", "Счет фактура", ПечатьСчетаФактурыММ(МассивОбъектов, ОбъектыПечати)); КонецЕсли; Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "СчетФактура84") Тогда УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "СчетФактура84", "Счет фактура", ПечатьСчетаФактурыММ(МассивОбъектов, ОбъектыПечати)); КонецЕсли; Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "СчетФактура575") Тогда УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "СчетФактура575", "Счет фактура", ПечатьСчетаФактурыММ(МассивОбъектов, ОбъектыПечати)); КонецЕсли; КонецПроцедуры а как параметры в нее передать, минуя столько процедур? |
|||
4
manti
11.05.12
✎
11:51
|
(2) в печати вызывается ПечатьСчетаФактурыММ - там у меня запрос переделан под нужды
|
|||
5
Рыжий Лис
11.05.12
✎
11:54
|
|
|||
6
Cube
11.05.12
✎
11:55
|
(4) Чо-чо, ПечатьСчетаФактурыМММ?!)) Гламурненько))
|
|||
7
strange2007
11.05.12
✎
11:59
|
Много форм вынес во внешние. С корректировкой реализации не бодался. Реально алгоритм всегда одинаковый: основную проц-у печати выношу в обработку. При необходимости макет тоже переношу. Все вызовы из проц-ры как правило идут к экспортным проц-м. Если используются локальные, не экспортные, то переношу их тоже в обработку, но этого уже год не наблюдал
|
|||
8
manti
11.05.12
✎
12:10
|
(5) у меня вместо СсылкаНаОбъект выражение ВнОбработка.СсылкаНаОбъект, принимающий тип ДокументСсылка.СчетФактураВыданный, значение Счет-фактура выданный ПЕ-00000763 от 04.05.2012 8:28:20.
В итоге когда идет ПечатьМоейПечатнойФормы(МассивОбъектов, ОбъектыПечати) ругается Поле объекта недоступно для записи (Ссылка) Для каждого Ссылка Из МассивОбъектов Цикл |
|||
9
Рыжий Лис
11.05.12
✎
12:14
|
(8) Переименуйте Ссылку во что либо иное
|
|||
10
manti
11.05.12
✎
13:04
|
(9) спасибо большое заработала. Теперь проблема в выхове с сервера
Ошибка при вызове метода контекста (ПредставлениеСерий) Строчка.НаименованиеТовара = СокрЛП(Строчка.НаименованиеТовара) + ФормированиеПечатныхФормСервер.ПредставлениеСерий(Строчка); по причине: Попытка передачи с клиента на сервер мутабельного значения 1-го параметра метода ПредставлениеСерий (). В конфе не ругается а во внешней обработке уже не работает. |
|||
11
aspirant
11.05.12
✎
13:35
|
я с мутабельными боролся, перенося эти процедуры тоже во внешнюю форму.
|
|||
12
manti
11.05.12
✎
13:53
|
(11) да так и сделал, всем спасибо)
|
|||
13
Рыжий Лис
11.05.12
✎
20:03
|
(11)(12) Для таких случаев есть модуль ФормированиеПечатныхФорм без слова Сервер.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |