|
Передача данных между модулем объекта и модулем формы | ☑ | ||
|---|---|---|---|---|
|
0
Svetlana_Kazan
06.10.17
✎
14:35
|
Подскажите, пожалуйста, как можно организовать передачу данных из модуля объекта в модуль формы? В модуле формы идет проверка соответствия номенклатуры определенным условиям и формируется текст сообщения по номенклатуре, если условие отбора не удовлетворяется. На форме документа есть дерево значений, куда необходимо в соответствующее поле соответствующей номенклатуры записать сообщение. Попыталась через ПараметрыСеанса.ПараметрСеансаДляПечати:
СообщенияТЗ = Новый ТаблицаЗначений; СообщенияТЗ.Колонки.Добавить("ОР"); СообщенияТЗ.Колонки.Добавить("ТекстыСообщений"); НоваяСтрока = СообщенияТЗ.Добавить(); НоваяСтрока.ОР = ОР; НоваяСтрока.ТекстыСообщений = ТекстыСообщений; Структура = Новый ФиксированнаяСтруктура("СообщенияТЗ", СообщенияТЗ); ПараметрыСеанса.ПараметрСеансаДляПечати = Структура; Выходит ошибка: Ошибка при установке значения атрибута контекста (ПараметрСеансаДляПечати) ПараметрыСеанса.ПараметрСеансаДляПечати = СтруктураСообщений; по причине: Фиксированный массив, фиксированное соответствие или фиксированная структура содержит значение(я) недопустимого типа |
|||
|
1
h-sp
06.10.17
✎
14:55
|
(0) ну значит нельзя таблицу значений туда пихать. Попробуйте через сериализацию. Типа
Структура = Новый ФиксированнаяСтруктура("СообщенияТЗ", ОбщегоНазначения.ЗначениеВСтрокуXML(СообщенияТЗ)); |
|||
|
2
Ненавижу 1С
гуру
06.10.17
✎
15:17
|
почему нельзя так?
&НаСервере Процедура ЗаполнитьТЗНаСервере() ТекстЗапроса = "ВЫБРАТЬ | ХозрасчетныйОстатки.Субконто1 КАК Субконто1, | ХозрасчетныйОстатки.КоличествоОстатокДт КАК КоличествоОстатокДт |ИЗ | РегистрБухгалтерии.Хозрасчетный.Остатки(, Счет В ИЕРАРХИИ (&Счет), &Субконто, ) КАК ХозрасчетныйОстатки"; Запрос = Новый Запрос(ТекстЗапроса); Запрос.УстановитьПараметр("Счет",ПланыСчетов.Хозрасчетный.ТоварыНаСкладах); Запрос.УстановитьПараметр("Субконто",ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Номенклатура); ТЗЗ = Запрос.Выполнить().Выгрузить(); ЗначениеВДанныеФормы(ТЗЗ,ТЗ); КонецПроцедуры &НаКлиенте Процедура ЗаполнитьТЗ(Команда) ЗаполнитьТЗНаСервере(); КонецПроцедуры |
|||
|
3
Svetlana_Kazan
06.10.17
✎
16:07
|
(1) Спасибо! Все получилось.
ТЗ = ОбщегоНазначения.ЗначениеИзСтрокиXML(ПараметрыСеанса.ПараметрСеансаДляПечати.СообщенияТЗ); |
| Форум | Правила | Описание | Секции | Поиск |