По теме из базы знаний
- 1С:Полиграфия 2. Модуль для 1С:ERP, 1С:КА и 1С:УТ
- "Подводные камни" при работе с макетами типа ActiveDocument 1С 8.3 УФ. Клиент-Сервер. Режимы работы Тонкий, Веб клиенты
- Интеграция сценарного тестирования в процесс разработки
- Обзор полезных методов БСП 3.1.4
- Инструменты разработчика "Инструментики" для тонкого клиента 1С
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для чего получать макет на "Клиент" ?
На "Клиенте" вызывайте серверный метод формирования "табличного документа", в нем уже зовите "макет"
Назад на Клиент возвращайте заполненный табличный документ и выводите его для печати "УправлениеПечатьюКлиент.ПечатьДокументов()"
На "Клиенте" вызывайте серверный метод формирования "табличного документа", в нем уже зовите "макет"
Назад на Клиент возвращайте заполненный табличный документ и выводите его для печати "УправлениеПечатьюКлиент.ПечатьДокументов()"
Всем спасибо, но это всё не то. Пользователи заходят в базу не через удалённый стол, а со своего рабочего места. И со своего места "не видят" макет печатной формы.
Из Общего модуля ПечатьТорговыхДокументов получаю макет
Для Каждого СведенияОДокументе Из СведенияСчетаНаОплату Цикл
.....
Макет = СведенияОДокументе.Документ.ПолучитьОбъект().ПолучитьМакет("Расш1_СчетДоговор");
....
КонецЦикла;
Общий модуль тоже в Расширении и обращение к нему через &Вместо
Из Общего модуля ПечатьТорговыхДокументов получаю макет
Для Каждого СведенияОДокументе Из СведенияСчетаНаОплату Цикл
.....
Макет = СведенияОДокументе.Документ.ПолучитьОбъект().ПолучитьМакет("Расш1_СчетДоговор");
....
КонецЦикла;
Общий модуль тоже в Расширении и обращение к нему через &Вместо
(12) причем тут стол? любую печатную форму бери и делай так же. Передается название макета, возвращается заполненный табличный документ, который можно показать пользователю. Если конфигурация с БСП, то там все стандартно делается, коряво, конечно, но это в 1с все так.
(15) я не администрирую ни сеть, ни 1С. Поэтому говорю со слов человека, с которым контактирую. Компания разбросана по стране. Как мне сказали, что-то там мешает админу настроить пользователям удалённый рабочий стол (УРС) и подключение к базе происходит с того места, где сидит пользователь. Если вызвать печать, работая с УРС или зайдя на сервер, вопросов нет, но если эту же печатную форму попытается вызвать пользователь из другого города, возникает сообщение
Макет "" не существует. операция прервана.
Макет "" не существует. операция прервана.
(16)
То есть вы во всех вот этих "я получаю Макет из общего модуля из расширения", "Из Общего модуля ПечатьТорговыхДокументов получаю макет" ничего не понимаете...
Пригласите, пожалуйста, сюда человека, который сможет показать код полностью и рассказать о конфигурации. Ну, или не лезьте в это вообще.
я не администрирую ни сеть, ни 1С
То есть вы во всех вот этих "я получаю Макет из общего модуля из расширения", "Из Общего модуля ПечатьТорговыхДокументов получаю макет" ничего не понимаете...
Пригласите, пожалуйста, сюда человека, который сможет показать код полностью и рассказать о конфигурации. Ну, или не лезьте в это вообще.
(18) Пока понятно, что там есть ошибка в коде или данных, которая приводит к разному поведению на разных машинах. При выполнении пользовательской и серверной части на одной физической машине все работает. При работе на разных - падает.
Что конкретно там натворил этот человек, надо разбираться предметно, а не устраивать здесь испорченный телефон.
Что конкретно там натворил этот человек, надо разбираться предметно, а не устраивать здесь испорченный телефон.
(19) Вот коды. Это модуль менеджера Счета в расширении
И Макет не считывается.
&Вместо("Печать")
Процедура Расш_1_Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "Расш1_СчетДоговор") Тогда
ТаблицаСведенийСчетНаОплату = ПолучитьТаблицуСведенийСчетаНаОплату(МассивОбъектов);
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "Расш1_СчетДоговор", "Счет-Договор",
ПечатьТорговыхДокументов.ПечататьСчетДоговора(ТаблицаСведенийСчетНаОплату, ОбъектыПечати, ПараметрыПечати),,"Документ.СчетНаОплатуПокупателю.Расш1_СчетДоговор");
// Установим имя файла приложения к договору по реквизитам самого договора,
// посколько ОбщегоНазначенияБП.ЗаполнитьДополнительныеПараметрыПечати()
// устанавливает имя файла по реквизитам объекта печати (счета на оплату).
УстановитьИмяСохраняемогоФайлаПриложениеКДоговору(ТаблицаСведенийСчетНаОплату, КоллекцияПечатныхФорм);
КонецЕсли;
ОбщегоНазначенияБП.ЗаполнитьДополнительныеПараметрыПечати(МассивОбъектов,
КоллекцияПечатныхФорм,
ОбъектыПечати,
ПараметрыВывода);
КонецПроцедуры
И ОбщийМодуль ПечатьТорговыхДокументов. Тоже в раширении
Функция ПечататьСчетДоговора(СведенияСчетаНаОплату, ОбъектыПечати, ПараметрыПечати) Экспорт
.
.
.
Макет = УправлениеПечатью.МакетПечатнойФормы("Документ.СчетНаОплатуПокупателю.Расш1_СчетДоговор");
.
.
.
Возврат ТабличныйДокумент;
КонецФункции
ПоказатьИ Макет не считывается.
Вот пост № 1 без поста № 21 просто был ни о чем.
Сделайте внешнюю печатную форму, добавьте команду замены ею "типовой" формы, и будет счастье.
Полный код формирования табличного документа, вероятнее всего, найдёте в "менеджере" документа, его забирайте (во внешнюю печатную) и сколько надо переделывайте под ваш макет
Сделайте внешнюю печатную форму, добавьте команду замены ею "типовой" формы, и будет счастье.
Полный код формирования табличного документа, вероятнее всего, найдёте в "менеджере" документа, его забирайте (во внешнюю печатную) и сколько надо переделывайте под ваш макет
нашёл такой код:
у вас три. так что, вероятно, писать надо
документ.счетнаоплату.МАКЕТЫ.счетдоговор
ЧастиПути = СтрРазделить(ПутьКМакету, ".", Истина);
...
Если ЧастиПути.Количество() <> 2 И ЧастиПути.Количество() <> 3 Тогда
ВызватьИсключение ТекстОшибки;
КонецЕсли;
у вас три. так что, вероятно, писать надо
документ.счетнаоплату.МАКЕТЫ.счетдоговор
(25) с сарказмом это или нет, но лично я реально не подозревал, что такой ход сработает. Сделал его просто наобум. При этом совершенно непонятно, когда это нужно делать, когда нет? Всегда делаешь какие-то движения и вдруг однажды оно не срабатывает. Почему? Никто не знает. Или есть знающие люди, которые объяснят, почему в одном случае "сравнить и объединить конфигурации" не вызывает никаких проблем, а в другом нужно обязательно "загрузить конфигурацию из файла"?
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот