Имя: Пароль:
1C
 
8.2 тип УникальныйИдентификатор нельзя помещать во временную таблицу
0 maxp77
 
08.09.10
16:02
При попытке помещения таблицы значений, одна из колонок которой имеет тип - УникальныйИдентификатор, через запрос во временную таблицу платформа выдает ошибку: "Тип не может быть выбран в запросе".

Это косяк платформы или ее фича?

Пример кода:

Т_УИД            = Новый ОписаниеТипов("УникальныйИдентификатор");
Т_Строка_0        = Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(0));

т1 = Новый ТаблицаЗначений;
т1.Колонки.Добавить("Описание", Т_Строка_0);
т1.Колонки.Добавить("УИД_1", Т_УИД);
с1 = т1.Добавить();
с1.Описание = "абырвал";
с1.УИД_1 = Новый УникальныйИдентификатор;

Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
Запрос.Текст =
"ВЫБРАТЬ
|    Таблица.Описание,
|    Таблица.УИД_1
|ПОМЕСТИТЬ ВремТаблица
|ИЗ
|    &ТПД КАК Таблица";
Запрос.УстановитьПараметр("ТПД", т1);
Запрос.Выполнить();
1 НЕА123
 
08.09.10
16:03
с1.Описание = "абырвалг";
2 Defender aka LINN
 
08.09.10
16:14
А версия какая?
3 maxp77
 
08.09.10
16:15
1С:Предприятие 8.2 (8.2.12.80)
4 ptiz
 
08.09.10
16:16
(0) Раз 1С не падает - значит, фича.
5 Wingless
 
08.09.10
16:21
В строку преобразовать не вариант?
6 H A D G E H O G s
 
08.09.10
16:35
Скорее всего бага.
УИД как элемент сохраняемых данных - сырой.

В старых релизах 8.2 ТиИ ругалось на измерение регистра сведений с УИД-ом.
7 maxp77
 
08.09.10
16:37
(5) Использую некоторые свои универсальные функции/процедуры для обработки таблиц значений, предварительный поиск колонок с типом УникальныйИдентификатор, замена значений таковых на строковые значения, а потом преобразование обратно при необходимости, будет занимать слишком много времени на больших массивах данных и сведет все преимущества использования временных таблиц на нет. На 8.1. использовал в качестве своих УИДов именно строки и все работало, на 8.2. решил воспользоваться типом УникальныйИдентификатор - и вот косяк.
8 73
 
08.09.10
16:43
(7) Код в (0) на 8.1.15.14 тоже ошибку даёт.
9 maxp77
 
08.09.10
16:59
(8) на мой взгляд, появившаяся в 8.2. возможность использования типа УникальныйИдентификатор в описании метаданных сама-собой влечет за собой возможность использования этого типа в запросах, в т.ч. при создании временных таблиц из таблиц значений.
10 maxp77
 
08.09.10
17:03
ОТВЕТ 1С:
-Да, в текущий момент это правильное поведение.
11 maxp77
 
08.09.10
17:08
ОТВЕТ 1С:
-Предполагается ли в будущем появление возможности использовать тип УникальныйИдентификатор в таблицах значений помещаемых во временные таблицы через запрос?

- ДА.