Как получить ссылку на справочник по данным из SQL Binari(16) #625013


#0 by sereban
Имеется БД MS SQL Server. База не 1с, но в ней хранятся ссылки на элементы справочника 1с аналогично тому, как хранит ссылки 1с в SQL. Т.е. тип Binari в Managerment studio при выполнении запроса выглядит вот так:  0x44A64DA86AA5DA42AF40D61A13CFAEED. Подключаю базу как внешний источник данных и выбираю то же самое запросом уже из 1С в результате получаю данные, которые при преобразовании в строку выглядят так:"60 1E FD 33 7E 89 B1 42 83 56 E2 07 3E 54 33 80". Каким образом обработать результат запроса, чтобы получить ссылку 1с?
#1 by hhhh
ПолучитьСсылку(Новый УникальныйИдентификатор(ВашаэтаСтрока));
#2 by sereban
Новый УникальныйИдентификатор(Строка(мРезультатЗапроса.Выгрузить[0].УИД1С))    {}: Ошибка при вызове конструктора (УникальныйИдентификатор)
#3 by sereban
Строка(мРезультатЗапроса.Выгрузить[0].УИД1С)  - это действительно строка вот такого вида "60 1E FD 33 7E 89 B1 42 83 56 E2 07 3E 54 33 80"
#4 by H A D G E H O G s
cast (cast([_IDRRef] as uniqueidentifier) as nvarchar)
#5 by sereban
Немного не то или я не догоняю. Пример: В SQL изначально в поле Binari содержится: 0х601EFD337E89B1428356E2073E543380 cast (cast([_IDRRef] as uniqueidentifier) as nvarchar) возвращает 33FD1E60-897E-42B1-8356-E2073E543380 А должно быть: 3e543380-e207-8356-601e-fd337e89b142 тогда и ссылка находится Но тут можно написать функцию, которая будет символы переставлять местами, тогда должно взлететь.
#6 by H A D G E H O G s
Да, это так
#7 by H A D G E H O G s
Поищи, есть готовый код перестановки
#8 by sereban
Спасибо. Уже сам набросал: Только это для УИД полученного при помощи внешних источников данных.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С