|
ЗначениеНеНайдено. Как получить ссылку?
| ☑ |
0
bolobol
09.03.17
✎
12:21
|
добрый день!
Имеется строка ЗначениеНеНайдено <132:bb530015170eeeb611dd97911478ed0e> - как определить можно по "132:", что это именно Справочник.СтатьиЗатрат? Не перебором же всех метаданных, я надеюсь?
Хелп, плиз.
|
|
1
Fragster
гуру
09.03.17
✎
12:30
|
проще всего не из строки. но можно и из строки, например через ЗначениеИзСтрокиВнутр()
|
|
2
1dvd
09.03.17
✎
12:30
|
ТипЗнч(БитаяСсылка) что даёт?
|
|
3
Fragster
гуру
09.03.17
✎
12:31
|
подсказка - сделай значениевстрокувнутр и посмотри, что получается. Функцию, которая делает из (0) строку для ЗначениеИзСтрокиВнутр - напиши самостоятельно
|
|
4
youalex
09.03.17
✎
12:36
|
По "132" - вряд ли.
Например, ЗначениеВСтрокуВнутр(Справочники.Номенклатура.НайтиПоКоду("00000000180")) - получается
{"#",44a01d39-c2b6-4751-85e6-06fdc2f23043,73:82afe069959a26f711e5d61c65003b3f}
Здесь 44a01d39-c2b6-4751-85e6-06fdc2f23043 - идентификатор типа, причем он же получается при ЗначениеВСтрокуВнутр(Тип("СправочникСсылка.Номенклатура"))
"73:" - вообще можно менять, ЗначениеИзСтрокиВнутр() - будет все равно возвращать эту ссылку
|
|
5
Рэйв
09.03.17
✎
12:42
|
(0)вот обработка которая преобразует строку как в сабже в нормальный УИД и находит тип.
Покопайся в коде
|
|
6
Fragster
гуру
09.03.17
✎
12:53
|
(4) в клюшках прокатывало. на самом деле 72 - это какой-то внутренний номер.
Стр = ЗначениеВСТрокуВнутр(Справочники.Валюты.RUB); //{"#",41dbb66b-ff77-4b8f-aaf8-0ca2012d3a6f,72:9e58113bdf0666d5448fd8521666af1b}
Стр2 = ЗначениеВСТрокуВнутр(Справочники.Валюты.ПустаяСсылка()); //{"#",41dbb66b-ff77-4b8f-aaf8-0ca2012d3a6f,72:00000000000000000000000000000000}
и можно обходом метаданных (затем с заменой 00000 на штуку из "объект не найден") получить искомую ссылку
|
|
7
youalex
09.03.17
✎
13:33
|
(6) судя по (5) - это номер в имени реальной таблицы, т.е. в моем случае - "Reference73"
|
|
8
bolobol
09.03.17
✎
13:36
|
(7) Да, так работает.
(5) Спасибо за обру!
Всем спасибо за идеи! Колдую))
|
|