|
Передача структуры значений между формами | ☑ | ||
---|---|---|---|---|
0
Legavaz
22.12.11
✎
16:12
|
8.2
У меня проблема, прежде чем сформировать форму нужно получить группы номенклатуры от пользователя которые он хочет вывести на печать, так вот. в толстом клиенте решил проблему открытием модальной пром. формы после чего с нее читаю структуру типа (новый структура ("ТЧ1",ТаблицаЗначений)), при запуске Тонкого клиента, увы сей финт не удался. ругается на структуру хотя я ее делаю функцией с префиксом &сервер. Пытался решить путем временного хранилища, но вызов процедуры печати работает от команды обработки, хоть и владелец есть но данные приходят Неопределено, может кто сталкивался с проблемой поделитесь? спасибо. |
|||
1
H A D G E H O G s
22.12.11
✎
16:15
|
Ниче не понял
|
|||
2
H A D G E H O G s
22.12.11
✎
16:16
|
В ПриСозданииНаСервере() ты можешь передать Структуру в ТЗ внутре, а после, ты уже на ТонкомКлиенте, там ТЗ нелигитимна.
|
|||
3
YF
22.12.11
✎
16:16
|
+(1) И я тоже
|
|||
4
H A D G E H O G s
22.12.11
✎
16:16
|
Структуру в ТЗ внутре -> Структуру c ТЗ внутре
|
|||
5
H A D G E H O G s
22.12.11
✎
16:18
|
(0)
Тоесть, так Форма=ПолучитьФорму("ТвояФорма",СтруктураСТЗ); Форма.Открыть(); можно, а так: Форма=ОткрытьФорму("ТвояФорма"); Форма.Структура=СтруктураСТЗ; Форма.Открыть(); нельзя |
|||
6
H A D G E H O G s
22.12.11
✎
16:18
|
И так тоже:
Форма=ПолучитьФорму("ТвояФорма"); Форма.Структура=СтруктураСТЗ; Форма.Открыть(); нельзя |
|||
7
Legavaz
22.12.11
✎
16:55
|
мне нужно данные получить из формы после ее закрытия
Форму открываю СтруктураВозврата = ОткрытьФормуМодально("Обработка._ПечатьСкладскойДокумент.Форма.ФормаДеленияПоПФ", ПараметрыФормы, ПараметрыВыполненияКоманды.Источник); В структуре возврата в Толстом клиенте данные возвращаются. вот. в тонком клиенте события на открываемой форме: &НаКлиенте Процедура ПриЗакрытии() АдресТоваровВХранилище = ПоместитьТоварыВХранилище(); (!!! ругается сдесь! ) Структура = Новый Структура("АдресТоваровВХранилище", АдресТоваровВХранилище); ОповеститьОВыборе(АдресТоваровВХранилище); КонецПроцедуры &НаСервере Функция ПоместитьТоварыВХранилище() СтруктураЗадания = Новый Структура("ТабЧасть1,ТабЧасть2,ТабЧасть3", Объект.ТабЧасть1.Выгрузить(), Объект.ТабЧасть2.Выгрузить(), Объект.ТабЧасть3.Выгрузить()); //СтруктураЗадания = Новый Структура("ТабЧасть1,ТабЧасть2,ТабЧасть3", // Объект.ТабЧасть1.Выгрузить(), // Объект.ТабЧасть2.Выгрузить()); // //Объект.Переменная = СтруктураЗадания; //АдресТоваровВХранилище = ПоместитьВоВременноеХранилище(СтруктураЗадания, УИНФормы);//УникальныйИдентификатор Возврат СтруктураЗадания; КонецФункции |
|||
8
Legavaz
22.12.11
✎
16:58
|
тз - нелигитимна )) видимо ключевые слова. как я понимаю таблица значений на клиенте не существует впринципе? не может быть!
|
|||
9
H A D G E H O G s
22.12.11
✎
17:09
|
Почему закомменчены
//АдресТоваровВХранилище = ПоместитьВоВременноеХранилище(СтруктураЗадания, УИНФормы);//УникальныйИдентификатор ? |
|||
10
H A D G E H O G s
22.12.11
✎
17:11
|
УИНФормы - опасно.
Если форма закроется ДО ТОГО, как форма владелец получит данные из хранилища, хранилище накроется мягким ассом! Надо так АдресТоваровВХранилище = ПоместитьВоВременноеХранилище(СтруктураЗадания, Новый УникальныйИдентификатор()); 20 минут на всех хватит © Почти Гейтс, Билл Гейтс. |
|||
11
apokrit
22.12.11
✎
17:11
|
(10) В предложенном варианте, если данные из ВХ не удалить - они там то конца сеанса останутся лежать.
|
|||
12
H A D G E H O G s
22.12.11
✎
17:20
|
(11) Удалите, как считаете в форме владельце, либо они сами удаляться через 20 минутъ. Я же написал вам выше!
|
|||
13
Legavaz
22.12.11
✎
17:29
|
пробовал, не выходит. почему решили что данные будут жить 20 минут. в документации написано до первого обращения к серв. процедурам.
Уин же передается видимо для того чтобы продлить жизнь хранилищу по владельцу формы. и это нисколько не опасно. |
|||
14
Legavaz
22.12.11
✎
17:31
|
закоментарил так как уже сделал дочертиков попыток. разными возможностями.
|
|||
15
H A D G E H O G s
22.12.11
✎
17:32
|
(13) Потому что внимательно читал СП.
Уин же передается видимо для того чтобы продлить жизнь хранилищу по владельцу формы. и это нисколько не опасно. Там по коду фиг поймещь, чей это УИН |
|||
16
Legavaz
22.12.11
✎
17:53
|
очень жаль. ((
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |