|
|
Как в запросе получить значение Справочника по GUID ?
arsik, RomanYS, ТДК, Rovan, ОМЭЗ, Lama12, 2S, paramedic, ReaLg, Timon1405, Seriy_Volk, Гипервизор, ДемьянТ, Tefal, АНДР, okmail, trad, END, YFedor, San787, Широкий, Eiffil123, alexxx961503, trooba, DmitryKSL, LuckyStar, xraf, Fedor-1971, Шурик71, Жан Пердежон, Garykom, ANDRU48, nick86, RVN, Indian, vicof, Мультук, craxx, N1troZeus, АгентБезопаснойНацио, Bad_Aleks, KJlag, abfm, Александр111, takefive, Crusher, valdos08 , integer, Галахад, ХДС, Mr_Boogie, vbus, Tarlich, Михаил Козлов, _Batoo, Климов Сергей, p-soft, Sneer, Irbis, yurikmellon2, Буковка, Silgis, unenu, Волшебник, Prog_man, Vstur, alex73, Жеглофф, Олдж, maxab72, zzz_zzz_zzz, H A D G E H O G s, Homer, dchumak, ndrv, vyaz, mikecool, , Fregat, Beduin, palsergeich
| ☑ |
|
0
ОМЭЗ
30.04.26
✎
12:15
|
Здравствуйте , возможно ли такое чтоб выборкой не обрабатывать строки запроса ?
|
|
|
1
palsergeich
30.04.26
✎
12:16
|
УНИКАЛЬНЫЙИДЕНТИФИКАТОР(Ссылка) с 20 платформы есть в языке запросов
|
|
|
2
mikecool
30.04.26
✎
12:17
|
(0) регистр соответствий
|
|
|
3
mikecool
30.04.26
✎
12:17
|
(1) ты в другую сторону предложил
|
|
|
4
ОМЭЗ
30.04.26
✎
12:18
|
(1) Мне наоборот нужно
|
|
|
5
Lama12
30.04.26
✎
12:37
|
(4) Ну так УНИКАЛЬНЫЙИДЕНТИФИКАТОР(Ссылка) = &ПараметрGUID
В ПараметрGUID передай GUID. Не строку, а именно GUID. Все работает корректно.
|
|
|
6
YFedor
30.04.26
✎
13:25
|
(5) Т.е. при выполнении запроса УНИКАЛЬНЫЙИДЕНТИФИКАТОР(Ссылка) отработает столько раз, сколько элементов есть в справочнике? Этож сколько ждать ...
Тогда уж лучше перед выполнением запрома GUID преобразовать в ссылку
|
|
|
7
Lama12
30.04.26
✎
13:36
|
(6)Вопрос в (0) был про возможность. Эффективность не требовалась 😎
|
|
|
8
RomanYS
30.04.26
✎
13:37
|
(6) Это поле физически есть в базе, поэтому "отработает" в данном случае очень условно
|
|
|
9
RomanYS
30.04.26
✎
13:43
|
+ (8) проверил на практике: время выполнения второго запроса - 0
|
|
|
10
paramedic
30.04.26
✎
13:57
|
(9) Ну так с пустым УИД естественно будет "0". Вы попробуйте с реальным УИД (не обязательно существующим) запрос выполнить.
|
|
|
11
Lama12
30.04.26
✎
14:07
|
(10) Боюсь, это реальный УИД. У пустой ссылки такой. И пустая ссылка обязана храниться в базе как не пустая, иначе будет "очень плохо" для СУБД.
|
|
|
12
paramedic
30.04.26
✎
14:12
|
(11) Это не реальный УИД. УИД физически - число. В базе нулевого УИД по определению быть не может. Вот и отрабатывает запрос моментально, т.к. число "0" находится за пределами индекса. А пустая ссылка - не объект базы.
|
|
|
13
RomanYS
30.04.26
✎
14:34
|
(10) Консоль не позволяет УИД вводить, обработку писать лень.
С чего вдруг с непустым время поменяется? По логике (6) для каждого элемента справочника некие вычисления должны проводиться, с чем сравнивать результат не важно (по времени)
|
|
|
14
RomanYS
30.04.26
✎
14:37
|
(10) Вот тебе не пустой)
|
|
|
15
YFedor
30.04.26
✎
14:40
|
(14) А если в Справочник2 содержится 1 млн. записей?
|
|
|
16
RomanYS
30.04.26
✎
14:41
|
(15) так в нём ровно миллион записей, см. скрин (9) и результат первого запроса
|
|
|
17
ОМЭЗ
30.04.26
✎
15:01
|
|ИЗ
| ВТ_ТабЗн КАК ВТ_ТабЗн
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура
| ПО (ВТ_ТабЗн.part_guid = ВЫРАЗИТЬ(УНИКАЛЬНЫЙИДЕНТИФИКАТОР(Номенклатура.Ссылка) КАК СТРОКА(200))";
Хотел так сделать , но не пойму чего не хочет уникальный идентификатор преобразовывать в строку :(
|
|
|
18
2S
30.04.26
✎
15:01
|
(17) Так не рабоатет, старые грабли.
|
|
|
19
ОМЭЗ
30.04.26
✎
15:05
|
(18) А новые грабли есть какие-то ?
|
|
|
20
RomanYS
30.04.26
✎
15:14
|
(19) Преобразования GUID <=> Строка в запросе на сегодня не доступны
|
|
|
21
Eiffil123
30.04.26
✎
15:57
|
(17) уникальныйидентификатор - это постобработка на сервере 1С, а не на sql. поэтому так не сработает. А в чем проблема сделать предобработку и заполнить ссылки на номенклатуру в ВТ_ТабЗн ?
|
|
|
22
ОМЭЗ
30.04.26
✎
16:07
|
(21) ТабЗн большая , выборку не хочется делать, дольго по времени занимает обработка
|
|
|
23
Eiffil123
30.04.26
✎
16:14
|
(22) ну тогда можно сделать текстовое поле в справочнике с представлением гуида. заполнять его при записи
|
|
|
24
RomanYS
30.04.26
✎
16:18
|
(22) звучит не очень убедительно. Откуда таблица возникла?
Если она хранится в базе, что мешает сразу хранить гуиды/ссылки.
Если она приходит извне, то расход времени на добавление гуидов/ссылок будет копеечным на фоне общих затрат на создание ТЗ
|
|
|
25
ОМЭЗ
30.04.26
✎
16:21
|
(24) Извне , запрос срабатывает очень быстро , а вот обработать 5000 строк в выборке и это только по одному заказу , дольго
|
|
|
26
ОМЭЗ
30.04.26
✎
16:24
|
(23) Можно , но хочется как-то не через анус сделать , а по нормальному :)
|
|
|
27
paramedic
30.04.26
✎
16:27
|
(25) 5000 строк долго? 200 тыс, миллион - да, может долго. А 5 тыс - фигня вопрос. Скорее всего у вас некорректный алгоритм решения вашей задачи.
|
|
|
28
RomanYS
30.04.26
✎
16:31
|
(25) проверил 5000 строк - 8мс. Это долго!?
|
|
|
29
ОМЭЗ
30.04.26
✎
16:34
|
(27) Народ балованный
|
|
|
30
RomanYS
30.04.26
✎
16:37
|
(29) народ не может заметить 8 мс разницы, даже моргнуть не успеешь.
Балованный скорее здесь ты - хочешь то, чего нет, под надуманным предлогом)
|
|
|
31
ОМЭЗ
30.04.26
✎
16:39
|
(30) Согласен :)
|
|