Имя: Пароль:
1C
1С v8
Как работать с уникальными идентификаторами в запросе?
0 Gorr
 
30.10.17
12:41
Есть таблица в базе с полем типа УникальныйИдентификатор.
Как соединить по этому полю с данными из таблицы значений?
Проблема в том, что в запрос нельзя передать ТЗ с колонкой типа "УникальныйИдентификатор", а по строковое представление УИ не подходит для соединения с полем типа УИ.
1 Рэйв
 
30.10.17
12:43
Храни УИД как строку, а не как объект.
и в тз тоже приводи к строке.Тогда и запросе будет это дело есть
2 Gorr
 
30.10.17
12:48
проектировал базу не я. от этого не уйти.
3 Рэйв
 
30.10.17
12:52
(2)ну тогда добавь рядом с "полем типа УникальныйИдентификатор" свое типа Строка и дублируй туда УИД для использования в запросах
4 Рэйв
 
30.10.17
12:53
или же получай таблицу с УИД отдельно запросом, выгружай в тз результат, приводи к строке и загружай обратно в запрос в ВТ
5 Gorr
 
30.10.17
12:54
Вот я смотрю эта тема с уином не раз уже всплывала еще с 10 года. 7 лет прошло, а проблема осталась.
6 Рэйв
 
30.10.17
12:55
(5)Если УИД не сама ссылка, о какой смысл хранить его как объект?
7 Gorr
 
30.10.17
13:00
В документообороте вся описание схем комплексных процессов построено через УИ этапов. Никакой связи с ссылочными типами данных нет.
8 Рэйв
 
30.10.17
13:01
имхо, УИД в виде строки вполне бы подошел для связи. И в запросы бы четко попадал
9 Gorr
 
30.10.17
13:05
(8) на самом деле проблема возникает только при необходимости пост обработки запроса с последующей передачей результата в следующий запрос. что крайне редко в моей практике.
Думаю лучшим вариантом решения будет запилить под задачу отдельный РС вместо ТЗ
10 ИС-2
 
naïve
30.10.17
13:13
(9) я бы предпочел добавить в общий реквзит.

В УТ 10.2 прошло без проблем, а в ЗУП 3.1 начали валиться ошибки в типовых запросах
11 Gorr
 
30.10.17
13:24
Скорее всего скоро в одно эсе добавят возможность работы с УИ через ТЗ в запрос. имхо пора.
12 Рэйв
 
30.10.17
13:27
(11)Скорее всего не получится.В базе то стандартом считается хранение УИД в виде строки. Как раз хранение в виде объекта 1с - это изврат, который ни с чем не соединишь никаким соединением.
13 Gorr
 
31.10.17
14:48
Вот если бы было оптимальнее хранить информацию в субд в виде строк, так бы и было.
А еще, судя по веткам форума, в частности v8: Как хранить ссылки? хранение данных в бинарном виде положительно сказывается на индексации.
Основная теорема систематики: Новые системы плодят новые проблемы.