Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Общие данные доступные из разных форм одной обработки (Структура как реквизит обработки).

Общие данные доступные из разных форм одной обработки (Структура как реквизит обработки).
Я
   Йоссариан
 
07.02.18 - 19:12
Для определенности скажем, что речь об обработке для приема товара по поступлению на складе.
Возникла необходимость перед приемкой кучу данных запросить и дальше с ними работать уже повторно обращаясь. Но так она (обработка устроена) что однотипные функции должны теперь у меня будут делать из разных форм (скажем формы выбора товара в накладной и форме ввода данных по выбранному товару.

Встал вопрос - как хранить такие данные как менеджер временных таблиц (например)  прочие промежуточные данные, чтобы к ним можно было обращаться в разные моменты времени из разных форм обработки, при этом данных довольно много и каждый раз паковать-распаковывать в хранилище
значений не хотелось бы.

"Облегчает" дело то что формы обработки обычные. И вторая вызывается из первой с указанием ее как владельца (не соображу имеет это значение или нет?)

Т.к. нельзя создать реквизит обработки типа "Структура", то придумался такой костыль (и он сработал)

Добавляем реквизит обработки типа ДокументОбъект и используем его ДополнительныеСвойства как нужную нам структуру.

Эксперимент показал, что МВТ между двумя формами передался.

Отсюда вопросы
1. Где подводные камни ) ? Я немного не понимаю как платформа работает с контекстами - инициализация этих доп.свойств происходит из первой формы значит на (толстом) клиенте (верно?). Записались эти данные в структуру, которая является свойством реквизита обработки. Открылась другая форма - у нее же свой клиентский контекст - т.е. значение основного реквизита ОбработкаОбъект у нее свое? или нет? Как произошла передача данных?

2. в случае с управляемыми формами такой номер очевидно не прокатит там только через хранилище? Вроде даже нештатным образом говорят работает, но гонять в хранилище значений и обратно МВТ с таблицами по 20тыс строк не кайф.

3. может это все глупая фигня и есть кошерный способ создавать (вообще говоря "серверные") данные (довольно объемные) и обращаться к ним повторно из разных клиентских контекстов без перегонки через хранилище (вот пишу и чувствую что никак.. н перегонять большие выборки это какой-то изврат)
 
 
   Йоссариан
 
1 - 07.02.18 - 20:06
видимо опять я непонятно изложил с чрезмерным количеством букв ((
ну или вопрос тривиальный.

Ни у кого не возникает задачи один раз данные собрать (объемные и замысловатые) и потом к ним обращаться повторно?

Ну тогда, если у кого-то возникала потребность сделать реквизит обработки типа "Структура" и обращаться к нему из разных обычных форм этой обработки, то делюсь этим лайфхаком ):
создать реквизит типа ДокументОбъект[какого-то вида] и юзать его ДополнительныеСвойства.
   xXeNoNx
 
2 - 07.02.18 - 20:21
решение должно быть проще и лаконичнее, если не выходит, то какая разница как извращаться
   Йоссариан
 
3 - 07.02.18 - 20:28
(2) ну ок )
правда непонятно почему ТЗ может быть реквизитом формы (интересно, используется только ли для громоздких нелаконичных решений) а структура не может.
   Cyberhawk
 
4 - 07.02.18 - 22:03
(3) Вообще-то тип "Произвольный" есть

Список тем форума
Рекламное место пустует  Рекламное место пустует
Основная теорема систематики: Новые системы плодят новые проблемы.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует