![]() |
![]() |
![]() |
|
Про разные формы записи ГУИД. | ☑ | ||
---|---|---|---|---|
0
Гений 1С
гуру
04.12.08
✎
15:40
|
ГУИД можно записать так: e6f51714-91cb-4dce-94fe-90ae3e3e1ad3
А в 1с он еще бывает пишется так: <Объект не найден> (96:94fe90ae3e3e1ad34dce91cbe6f51714). Как по-научному называются две эти формы записи GUID. Есть ли у кого функция по переконвертации туда и обратно? |
|||
1
H A D G E H O G s
04.12.08
✎
15:43
|
Серега жжет
ГУИДИнверсныйСтр = СтрЗаменить(ГУИДИнверсный,"0x",""); ГУИД = Сред(ГУИДИнверсныйСтр,25,8)+"-"+Сред(ГУИДИнверсныйСтр,21,4)+"-"+Сред(ГУИДИнверсныйСтр,17,4)+"-"+Сред(ГУИДИнверсныйСтр,1,4)+"-"+Сред(ГУИДИнверсныйСтр,5,12); |
|||
2
Medved_1
04.12.08
✎
15:44
|
(0) если заметить, то видно, что в <Объект не найден> сначала идет предпоследний сегмент, потом последний, потом с 3го к первому.
выдача в виде <Объект не найден> - это, имхо, платформенная фича 1Ски, ибо пока аналогичную выжачу гуида в таком виде ниде не видел. руками написать можно |
|||
3
Гений 1С
гуру
04.12.08
✎
15:52
|
(2) А как она называется, неужели действительно GUID инверсный?
|
|||
4
Гений 1С
гуру
04.12.08
✎
15:52
|
(1) Сенька, а в обратную сторону?
|
|||
5
Medved_1
04.12.08
✎
15:54
|
(3) не знаю. я ж грю - не сталкивался пока нигде именно с таким форматом
|
|||
6
wPa
04.12.08
✎
16:21
|
(2) какой им смысел путать сигменты местами?
|
|||
7
Гений 1С
гуру
04.12.08
✎
16:25
|
Функция ГУИДВИнверсный(_С)
С = СтрЗаменить(_С, "-", ""); //ГУИД = Сред(С,25,8)+"-"+Сред(С,21,4)+"-"+Сред(С,17,4)+"-"+Сред(С,1,4)+"-"+Сред(С,5,12); Возврат Сред(С,17,16)+Сред(С,13,4)+Сред(С,9,4)+Сред(С,1,4)+Сред(С,5,4); КонецФункции Функция ГУИДИзИнверсного(С) Возврат Сред(С,25,8)+"-"+Сред(С,21,4)+"-"+Сред(С,17,4)+"-"+Сред(С,1,4)+"-"+Сред(С,5,12); КонецФункции |
|||
8
H A D G E H O G s
04.12.08
✎
16:26
|
(7) Умничка..
|
|||
9
Rebelx
04.12.08
✎
16:46
|
это скорее всего связано с понятиями big-endian И little-endian
|
|||
10
Гений 1С
гуру
04.12.08
✎
21:03
|
(9) Не фига себе темы
|
|||
11
TormozIT
гуру
04.12.08
✎
22:34
|
Кто по номеру таблицы тип научился определять?
|
|||
12
Lama12
04.12.08
✎
23:14
|
Вроде это связано с текстовым представлением GUID. Т.е. GUID это определенный тип данных и при преобразовании в текстовый формат происходит такая конвертация. Сталкивался с таким преобразованием в sybase и access.
|
|||
13
H A D G E H O G s
05.12.08
✎
00:41
|
(11) Только перебором по метаданным
ИстинаГдетоРядом=Ложь; Для Каждого Метаданное Из Метаданные.Справочники Цикл ПустущаяСсылка=Справочники[Метаданное.Имя].ПустаяСсылка(); Если Сред(ЗначениеВСтрокуВнутр(Справочники.Склад.ПустаяСсылка()),43,СтрДлина(Строка(ИскомыйНомер)))=ИскомыйНомер Тогда ИстинаГдетоРядом=Истина; Прервать; КонецЕсли; КонецЦикла; Если ИстинаГдеТоРядом Тогда ВотОноНашеСтрашилище=ТипЗнч(ПустущаяСсылка); ИМетаДАННОЕСвышеКонфигуратором=Метаданное; КонецЕсли; |
|||
14
TormozIT
гуру
05.12.08
✎
01:37
|
(13) Как то очень ... прямолинейно ;)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |