Имя: Пароль:
1C
1С v8
Баг с временным хранилищем
,
0 UncleVader
 
24.07.13
12:55
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
   ЗапросСпискаУведомлений = Новый Запрос;
   ЗапросСпискаУведомлений.Текст = СписокУведомлений.ТекстЗапроса;
   АдресЗапросаСпискаОповещений = ПоместитьВоВременноеХранилище(ЗапросСпискаУведомлений,УникальныйИдентификатор);
КонецПроцедуры


1. Создаю запрос и помещаю его во временное хранилище для того чтобы потом им пользоваться
2. АдресЗапросаСпискаОповещений - реквизит формы
3. Пока находимся в процедуре ПриСозданииНаСервере можем вернуть запрос из временного хранилища
4. Как только покидаем пределы этой процедуры значение во временном хранилище очищается
5. Данный эффект наблюдается на клиент-серверной базе, в файловом варианте все ок
ЧЯДНТ? Спасибо!
1 ДенисЧ
 
24.07.13
12:56
Всё. Не читаешь СП...
2 Nexux
 
24.07.13
12:57
ЭтаФорма.УникальныйИдентификатор
3 UncleVader
 
24.07.13
12:59
(1) Читаю
(2) ЭтаФорма.УникальныйИдентификатор = УникальныйИдентификатор
разве нет?!
4 Nexux
 
24.07.13
13:00
вообще не факт, что запрос сериализуется, в каком-то релизе сильно ущемили ВХ
5 Nexux
 
24.07.13
13:00
попробуйте на старом релизе, из 15 ветки, например
6 UncleVader
 
24.07.13
13:07
на 8.2.17.153 не работает, на 8.2.18.102 работает
похоже баг платформы
7 Nexux
 
24.07.13
13:07
100% убрали возможность помещать в ВХ несериализуемое, проверил ДанныеФормыСтруктура - на 8.2.15.310 позволяет в серверном варианте получать из ВХ, на 8.2.18.109 возвращает неопределено
8 Nexux
 
24.07.13
13:07
это не баг, это закрытие недокументированной возможности :) не могу найти чейджлог, к содалению
9 UncleVader
 
24.07.13
13:11
(8) ясно, спасибо, буду менять логику
10 YHVVH
 
24.07.13
13:26
че за фигня вообще написана
11 YHVVH
 
24.07.13
13:26
что хотим сохранить вообще не понятно
12 YHVVH
 
24.07.13
13:27
и во вторых в функцию передавай уже адрес куда сохранять
13 UncleVader
 
24.07.13
13:52
(10) фигня такая - на форме есть дин. список с произвольным запросом, я хочу в удобном мне месте и времени получать состояние выборки этого запроса. Поскольку я не могу напрямую обратиться к данным дин. списка, я делаю копию запроса чтобы потом его выполнять и смотреть что в нем есть. Для этого создаю запрос, беру текст из дин. списка и хочу его сохранить во ВХ. Согласно документации мне надо чтобы данные, помещенные во ВХ уничтожались при разрушении формы, поэтому я передаю в функцию УИД формы.
14 Поросенок Петр
 
24.07.13
13:59
Считай что запросу в хранилище темно и страшно.
15 UncleVader
 
24.07.13
14:10
(14) так и понял, сделал хранение только текста запроса, а сам запрос создаю уже по месту. Изначально такой подход был нужен для того чтобы синхронно с заданием параметров динамического списка сразу их задавать и для этого зеркального запроса