Имя: Пароль:
1C
 
В узле РИБ: <Объект не найден> (158:8922001a4bf1113011e01d50e968ff87) как узнать
0 Ksandr
 
17.02.11
11:18
как узнать что это за объект в центральной базе?
1 Boris_Britva
 
17.02.11
11:19
по UID'у

158:8922001a4bf1113011e01d50e968ff87
2 vde69
 
17.02.11
11:19
если есть доступ в центальную базу - то легко
3 zladenuw
 
17.02.11
11:19
ну так в скобках его представление в центрально базе, ЗначениеВСтрокуВнутр
Возвращаемое значение:
Тип: Строка. Системное представление значения в информационной базе.
4 zladenuw
 
17.02.11
11:19
(1) точно ошибся, это уид :)
5 vde69
 
17.02.11
11:20
кстати в журнале регистраций погляди :)
6 Ksandr
 
17.02.11
11:23
(2) Есть.
(1) КЭП?
7 Aleksey
 
17.02.11
11:26
(6) Причем тут КЭП? Получить объект по UID - нет?
8 Boris_Britva
 
17.02.11
11:27
(6) у каждого объекта в системе есть свой уникальный номер, это и есть UID, а когда выходит сообщение <Объект не найден> (158:8922001a4bf1113011e01d50e968ff87) в скобках указан UID этого объекта, ищешь его в центральной базе, вся любовь
9 stangen
 
17.02.11
11:28
(6) попробуй открыть его (документ или справочник) - откроется пустой
10 Ksandr
 
17.02.11
11:30
Каким методом?
Вот есть ПолучитьСсылку(), но тут нужен GUID
11 Boris_Britva
 
17.02.11
11:30
(9) это можно было узнать из типа переменной
12 Boris_Britva
 
17.02.11
11:30
(10)158:8922001a4bf1113011e01d50e968ff87 а это что??
13 stangen
 
17.02.11
11:31
(11) а, не правильно понял, я думал ему надо понять тип объекта
14 sda553
 
17.02.11
11:31
ГУИД формироуется из это штуки перестановкой групп цифр
a37f00215ab1440211dfe0d62ad9f4ab = 2ad9f4ab-e0d6-11df-a37f-00215ab14402
15 Aleksey
 
17.02.11
11:32
(10)
// ГУИДУдОбъкта =  <Объект не найден> (84:bf5600145e3710ab11dda4c605dbe824)
   ГУИДУдОбъктаСтр = СтрЗаменить(ГУИДУдОбъкта,"<Объект не найден> (","");
   ГУИДУдОбъктаСтр = СтрЗаменить(ГУИДУдОбъктаСтр,")","");
   ГУИДУдОбъктаСтр = СтрЗаменить(ГУИДУдОбъктаСтр,"0x","");
   ГУИДУдОбъктаСтр = Сред(ГУИДУдОбъктаСтр, Найти(ГУИДУдОбъктаСтр,":")+1, СтрДлина(ГУИДУдОбъктаСтр));
   // Преобразуем GUID
   ГУИД = Сред(ГУИДУдОбъктаСтр,25,8)+"-"+Сред(ГУИДУдОбъктаСтр,21,4)+"-"+Сред(ГУИДУдОбъктаСтр,17,4)+"-"+Сред(ГУИДУдОбъктаСтр,1,4)+"-"+Сред(ГУИДУдОбъктаСтр,5,12);            //и получаем ГУИД = 05dbe824-a4c6-11dd-bf56-00145e3710ab
16 Aleksey
 
17.02.11
11:32
ну и далее

     // ГУИД = 05dbe824-a4c6-11dd-bf56-00145e3710ab  
   // Ссылка будет установлена в переменную СсылкаНаОбъектГуид
   УникальныйИдентификатор = Новый УникальныйИдентификатор(ГУИД)
   // все объекты по которым можно получить ссылку
   Если ПолучитьСсылкуНоМенеджеруОбъекта(Справочники,УникальныйИдентификатор) Тогда
   ИначеЕсли ПолучитьСсылкуНоМенеджеруОбъекта(Документы,УникальныйИдентификатор) Тогда
   ИначеЕсли ПолучитьСсылкуНоМенеджеруОбъекта(ПланыВидовХарактеристик,УникальныйИдентификатор) Тогда
   ИначеЕсли ПолучитьСсылкуНоМенеджеруОбъекта(ПланыСчетов,УникальныйИдентификатор) Тогда
   ИначеЕсли ПолучитьСсылкуНоМенеджеруОбъекта(ПланыОбмена,УникальныйИдентификатор) Тогда
   ИначеЕсли ПолучитьСсылкуНоМенеджеруОбъекта(БизнесПроцессы,УникальныйИдентификатор) Тогда
   ИначеЕсли ПолучитьСсылкуНоМенеджеруОбъекта(Задачи,УникальныйИдентификатор) Тогда
   КонецЕсли;
   
   // ПолучитьСсылкуНоМенеджеруОбъекта()
   Функция ПолучитьСсылкуНоМенеджеруОбъекта(ОбъектыМенеджер,УникальныйИдентификатор)
   Для Каждого Менеджер Из ОбъектыМенеджер Цикл
       СсылкаНаОбъектГуид = Менеджер.ПолучитьСсылку(УникальныйИдентификатор);
       
       Если СсылкаНаОбъектГуид.ПолучитьОбъект() <> Неопределено Тогда
           Возврат Истина;
       КонецЕсли;
   КонецЦикла;
   Возврат Ложь;    
   КонецФункции
17 sda553
 
17.02.11
11:32
(15) ага, вот такой перестановкой групп
18 Ksandr
 
17.02.11
11:35
(15) (16) Спасибо большое!
19 Ksandr
 
17.02.11
15:26
Вот что вышло (8.2):
как "+" определяется тип объекта
https://docs.google.com/leaf?id=0B4InoBzjwiEuNzUxMGFjYjEtNTQ2Mi00YjI5LTkwNzgtMzU1MzUzYmQ2OTc0&hl=ru
20 Ksandr
 
17.02.11
15:32
в недалеком будущем прикручу журнал регистрации, чтобы видеть, что с объектом было