#0
by EvgeniuXP
Сделал кнопку во внешней обработке (конфигурация УПП) и написал вызов функции УправлениеПечатью.СформироватьПечатныеФормы, где пятым параметром передается обычная переменная, в которую должна вернуться коллекция макетов... но в итоге платформа пишет ошибку: Попытка передачи с сервера клиенту мутабельного значения... Работаю в толстом режиме, обычные формы (не управляемые)...
#0
by EvgeniuXP
Сделал кнопку во внешней обработке (конфигурация УПП) и написал вызов функции УправлениеПечатью.СформироватьПечатныеФормы, где пятым параметром передается обычная переменная, в которую должна вернуться коллекция макетов... но в итоге платформа пишет ошибку: Попытка передачи с сервера клиенту мутабельного значения... Работаю в толстом режиме, обычные формы (не управляемые)...
#9
by EvgeniuXP
вопрос отпадает, дома во внешней обработке сделал - всё работает... на работе тоже самое - нифига... буду завтра разбираться...
#15
by EvgeniuXP
мне пятый параметр нужен, там макеты формируются - их и возвращает - на них и ошибка
#16
by EvgeniuXP
точнее возвращает таблицу значений, в строках которых хранятся табличные документы... как тогда печатные формы получить? может другая функция есть?
#22
by EvgeniuXP
т.к. там различные формы макетов могут создаваться и эта функция их - отчеты и формирует по имени... не буду же я весь их модуль копировать к себе и потом еще во временные пихать... это ж, убиться можно...
#24
by EvgeniuXP
и переносить весь модуль по формированию макета по имени (имена разные)?... обновлять потом плохо такое типовое решение... потом сравнивай всё это хозяйство...
#25
by zladenuw
создай реквизит с произвольным значением. заполняешь на сервере. поидее должно проконать
#26
by EvgeniuXP
а взять сформированный макет ни как нельзя? выводить мне его на форму не надо в универсальном форме "Печать документов"...
#28
by К_Дач
УправлениеПечатью.СформироватьПечатныеФормы("Документ.РеализацияТоваровУслуг", "ТОРГ12", МассивОбъектов, ПараметрыПечати, Обработка.ТЧКоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода);
#30
by EvgeniuXP
ошибка та же самая... перенес вызов процедуры УправлениеПечатью.СформироватьПечатныеФормы в модуль обработки - всё равно ругается на пятый параметр :(((
#31
by Feunoir
Может ты полный текст ошибки приведёшь? Таблицу значений между сервером и толстым клиентом передавать можно.
#32
by EvgeniuXP
{Форма.Форма.Форма}: Ошибка при вызове метода контекста (СформироватьПечатныеФормы) УправлениеПечатью.СформироватьПечатныеФормы("Документ.РеализацияТоваровУслуг", "ТОРГ12", МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода); по причине: Попытка передачи с сервера клиенту мутабельного значения 5-го параметра метода СформироватьПечатныеФормы .
#33
by EvgeniuXP
{Форма.Форма.Форма}: Ошибка при вызове метода контекста (СформироватьПечатныеФормы) УправлениеПечатью.СформироватьПечатныеФормы("Документ.РеализацияТоваровУслуг", "ТОРГ12", МассивОбъектов, ПараметрыПечати, ЭтотОбъект.КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода); по причине: Попытка передачи с сервера клиенту мутабельного значения 5-го параметра метода СформироватьПечатныеФормы .
#35
by EvgeniuXP
Поставил код: #Если ТолстыйКлиентОбычноеПриложение Тогда #Если ТолстыйКлиентУправляемоеПриложение Тогда Отрабатывает первое условие.
#37
by Infsams654
При чем тут это ? В этом, просто видишь как оно работает в клиент-сервер. Зачем передаешь мутабельные значения ?
#38
by Feunoir
В УправлениеПечатью.СформироватьПечатныеФормы поставь точку останова в конце процедуры и посмотри что в каком параметре у тебя возвращается с сервера.
#39
by EvgeniuXP
ИменаМакетов: строка МассивОбъектов: массив, количество элементов 1, содержит ссылку на документ. ПараметрыПечати: Неопределено КоллекцияПечатныхФорм: таблица значений, количество строк 1, содержит табличный документ, остальные примитивные колонки у строки, типа Неопределено, Строка, Число. ОбъектыПечати: список значений, количество 1, в качестве значения ДокументСсылка. ПараметрыВывода - структура, три ключа значения которых: Ложь, Неопределено, Неопределено.
#43
by Feunoir
Непонятная хреновина. Всё должно работать нормально. Форму ТОРГ12 не меняли? Может где в расшифровку засунули какой левый объект? Но тогда оно бы и из документа не печаталось бы. Попробуй другой макет сформировать.
#44
by EvgeniuXP
вторым способом пробовал, это у обработки Реквизит с типом "ТаблицаЗначений". в инициализирую в неопределено и называю по-другому, чтобы не пересекалось с именем реквизита.
#45
by EvgeniuXP
в типовой печатается, из моей функции тоже печатается (отображается форма с документом), если идти от Объект.Печать. Но мне форма не нужна, мне макет нужно получить, поэтому пытаюсь взять напрямую из УправлениеПечатью.СформироватьПечатныеФормы.
#47
by х86
>>Но мне форма не нужна, мне макет нужно что есть в твоем понимании макет? и зачем он тебе?
#51
by EvgeniuXP
сформировать нужно несколько табличных документов отфильтрованных по периоду и сотруднику: РеализацияТоваровИУслуг и СчетФактураВыданная и отправить контрагенту на емайл, при этом еще отправить по каждому документу на отдельный адрес, который указан в документе - добавлен реквизит свой.
#52
by EvgeniuXP
это ж тупо... в цикле документов формировать форму и вытаскивать табличный документ, при этом форму не отображать...
#53
by EvgeniuXP
ДокументСсылка.ПолучитьОбъект.Печать("ТОРГ12", 0, Ложь) - форму выводит с документом.
#55
by EvgeniuXP
там общая форма, а в нее параметры нельзя передавать, имя макета по котору формируется отчет...
#56
by EvgeniuXP
со внешними обработками нет проблем - там как-раз табличный документ и возвращается...
#57
by EvgeniuXP
ладно, сделаю отдельный модуль для обычного приложения... может он вернет коллекцию, опишу также как управляемый по получению стандартных форм по двум документам - выхода нет...
#58
by EvgeniuXP
ппц, обработу сделал на управляемой форме - пошло :) не фиг в обычной было делать :)))
#59
by EvgeniuXP
в управляемой форме другие проблемы.... криворукие какие-то типовые пишут... как можно писать .ПолучитьОбъект.ПроцедураВызова, а он исполняется на сервере писать "ПроцедураВызова" в директиве препроцессора Клиент... - слов нет...
#60
by EvgeniuXP
т.е. всю структуру макета получить не могу... точнее получил, но форму по умолчанию не могу получить, т.к. она берется из ВосстановитьПоУмолчанию, а эта процедура работает только в толстом клиенте в обычных формах...
#61
by EvgeniuXP
имя макета, которое является по умолчанию хранится в самой форме толстого клиента...
#64
by EvgeniuXP
В обработке (обычная форма) необходимо, чтобы отработал код в клиент-сервером варианте (на файловой работает), которая вернет коллекцию печатных форм (сформированных табличных документов):
#65
by EvgeniuXP
УправлениеПечатью.СформироватьПечатныеФормы("Документ.РеализацияТоваровУслуг", "ТОРГ12", МассивОбъектов, Неопределено, КоллекцияПечатныхФорм, ОбъектыПечати, Неопределено); - является стандартной типовой функцией. (ПС_ - ошибся).
#67
by H A D G E H O G s
По ощущениям - уже можно было бы написать годный код методом тыка, навреное.
#69
by EvgeniuXP
так написал бы, просто тут другая форма, из которую нужно показать на форме какие макеты и там некоторые макеты выделены по умолчанию, а эта запись берется уже из настроек сохраненных пользователем, которые хранятся в формах обычных... так бы уже давно двинулся дальше... а через управляемые формы я получил все сформированные отчеты...
#71
by EvgeniuXP
нафиг, проще настройки сохранять в регистре по каждому пользователю и брать от туда какой отчет по умолчанию является, буду дальше на управляемых формах делать :)
#73
by EvgeniuXP
спасибо, сделаю регистр сведений по сохранению отчетов по умолчанию для каждого пользовователя, в глобальнике поменяю в пару местах и всё. все модули тянуть в обычные формы по формированию отчетов - не выход и не есть гуд.
#74
by H A D G E H O G s
Автор скорее всего в шоке от типовой подсистемы печати в УПП, и пытается прикрутить к ней сохранение выбранных пользователем галочками нужных печатных форм, количества копий, вывода сразу на принтер с учетом внешних обработок печати, и как в толстом, так и в тонком. Удачи.
#75
by zladenuw
а если на сервере Коллекцию конвертиш в массив или структуру и передаешь на клиент. не ?
#77
by zladenuw
типа обвернуть так ПС_УправлениеПечатью.СформироватьПечатныеФормы("Документ.РеализацияТоваровУслуг", "ТОРГ12", МассивОбъектов, Неопределено, ТабЗначВМассив(КоллекцияПечатныхФорм), ОбъектыПечати, Неопределено);
#78
by К_Дач
ну ииии??? &наклиенте КоллекцияПечатныхФорм - сделай ее ТЧ, а не реквизитом, добавь реквизиты ТЧ "Макет", какие там еще нужны.
#79
by EvgeniuXP
зачем обертывать? В процедуру передается нормально (можно вообще передать с типом Неопределено, там функция сама сделать ТЗ с макетами), вернуть процедура не может значение (тз) через параметр КоллекцияПечатныхФорм, в строках которых хранится табличные документы. при возврате ругается на мутабельное значение - вот тоже понять не могу, работаю в толстом клиенте в обычных формах. в файловой работает код, а в клиент-сервере нет.
#80
by EvgeniuXP
шок только от одного: ДокументСсылка.ПолучитьОбъект.ВызватьКлиентскуюПроцедуру - вот это точно шок, так извращаться :) , где ВызватьКлиентскуюПроцедуру в модуле объекта описана как: #Если НаКлиенте Тогда Процедура ВызватьКлиентскуюПроцедуру ... КонецПроцедуры #КонецЕсли
#83
by EvgeniuXP
просто думал, может Клиент-Сервер расставить как-то в своей обработке по-умному и получу коллекцию без правки типового общего модуля - ведь по факту я работаю в толстом клиенте, и коллекция заполняется...
#84
by EvgeniuXP
я одно понять не могу, почему возникает эта ошибка "мутабельное значение", работаю в толстом на обычных формах - разделение на клиент-сервер же нет...
#85
by ОбычныйЧеловек
разделение на клиент-сервер же нет... Когда разделения нет (а нет его в твоей файловой версии) то и ошибки нет, а когда разделение есть (а есть оно у тебя на работе) то ошибка есть... обычные формы и клиент сервер не являются взаимоисключающим понятиями как ты почему-то решил.
#86
by EvgeniuXP
проверить очень просто, открываем типовую УПП 1.3, создаем внешнюю обработку обычная форма, на кнопку выполнить вешаем код , документ только подравьте Номер и дату, чтоб нашел документ, и запускаем - в клиент-сервере не выполнится, ошибка.
#87
by EvgeniuXP
тогда еще один добавить параметр МассивТабличныхДокументов в процедуру УправлениеПечатью.СформироватьПечатныеФормы, массивТабличныхДокументов и возвращать для "особых" случаев... тогда еще так попробую завтра... а то уже на управляемые пошел...
#88
by К_Дач
я тебе написал выше, как расставить клиент сервер. С клиента вызываешь серверную процедуру, из серверной процедуры вызываешь свой общий модуль, который компилируется на сервере, макеты пихаешь в табличную часть, при возврате в обработку получишь ссылки. Ну или скопируй весь требуемый код из общего модуля к себе в модуль объекта обработки. По нажатию кнопки на форме создавай экземпляр объекта обработки и вызывай нужную процедуру.
#89
by EvgeniuXP
&НаСервере - не прокатит, там ошибка вылетает прямо при открытии формы внешней обработки, а препроцессорную не пробовал
#92
by EvgeniuXP
Новую обработку сделал, в ней только этот код: &НаСервере Ошибка: {Форма.Форма.Форма(4,5)}: Процедура или функция с указанным именем не определена (КнопкаВыполнитьНажатиеСервер) <<?>>КнопкаВыполнитьНажатиеСервер;
#93
by EvgeniuXP
&НаСервере Так тоже ошибка: {Форма.Форма.Форма(17,5)}: Процедура или функция с указанным именем не определена (КнопкаВыполнитьНажатиеСервер) <<?>>КнопкаВыполнитьНажатиеСервер;
#94
by EvgeniuXP
тоже отлетает, добавил новый параметр массив, добавил туда ТабличныеДокументы - при возвращении ругается на этот параметр - содержит мутабельные значения.
#95
by EvgeniuXP
в модуле объекта обработки прописал: в модуле формы обработки написал: При нажатии на кнопку "Выполнить" появляется ошибка: "Метод объекта не обнаружен (ТТТ)".
#96
by EvgeniuXP
все остальнце параметры перед возвратом в Неопределено поставил, чтоб явно видно было, что ошибка именно на 8-ом параметре. Пустой массив (или забитый примитивными типами) возвращает через параметр...
#97
by Serg_1960
Ммм... а чего автор зациклился на "УправлениеПечатью.СформироватьПечатныеФормы"? В УПП есть и другие функции :))
#98
by К_Дач
Создай экземпляр объекта с помощью менеджера внешних обработок. Потом обращайся к методу
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- v8 строка подключения V8.Connect
- Волшебнику и всем кто поможет по теме "v8 УРБД на v8 за четыре шага"
- v8: при v8 = Новый COMОбъект("V8.Application") дает ошибку ..
- v8: Не присваивается значение переменной
- v8: Не могу подключиться из V8 к V8
- v8: есть ли аналоги openconf для 1с v8
- v8: Как удалить 1С v8 ?
- v8: Что такое мутабельное значение?
- Тонкий клиент VS Толстый клиент
- V8: Толстый или тонкий клиент?
- Тонкий клиент и толстый клиент: обращение к общим модулям...?
В этой группе 1С
- Свертка УТ 10.3
- Чем отредактировать ibases.v8i
- БГУ Закрытие счетов
- Подскажите как переименовать номенклатуру
- Корректировка реализации на основании непроведенной реализации
- Не формируются счета-фактуры на аванс (оплата и отгрузка в один день)
- Сбросить модифицированность 1с 8.2
- Подключение ККМ ОКА ПФ
- v8: 1С8.1 - Как сохранить табличный документ в pdf
- как в скд в параметр передать результат функции
- А можно ли ставить платформу 8.3 вместо 8.2
- Как получить из XML файл схемы XSD
- упп. продажа комиссионных услуг.
- ЗБУ, Пособие «Ранние сроки беременности» для Военнослужащего по КОСГУ 262
- Поле объекта не обнаружено (Субконто1)
- Как получить результат проверки xml на соответствие схеме xsd?
- Как отловить событие в contenteditable? JavaScript, HTML
- v8: Плановые начисления работников организации. Заполнение регистра
- Проблема с почтой в 1С:Документооборот
- Начисление после увольнения