Имя: Пароль:
1C
1С v8
Найти в базе полученной внешним соединением элемент справочника УИД?
0 Knowledge
 
14.09.13
09:28
Как проверить есть ли  в базе полученной внешним соединением  cntr = COMObject("V82.COMConnector");
connection = cntr.Connect(…)) элемент справочника с  заданным уникальным  идентификатором.
Например:
Пар_сотрудник = Справочники.Сотрудники.НайтиПоКодУ(КодСотрудника);
    СтрУИД = Строка(Пар_сотрудник.УникальныйИдентификатор());
    Внешние_ Сотрудники = connection.Справочники.Сотрудники;
Как дальше проверить , если  в справочники  “Внешние_ Сотрудники”  элемент с  СтрУИД?
1 Knowledge
 
14.09.13
09:32
(0) Пардон, тема должна быть такой:"Найти в базе полученной внешним соединением  элемент справочника  с  заданным УИД?"
2 Staffa
 
14.09.13
10:02
Ссылка = Справочники.Внешние_Сотрудники.ПолучитьСсылку(Новый УникальныйИдентификатор(СтрУИД));
Если Ссылка.ПолучитьОбъект() = Неопределено Тогда
// не существует
Иначе
// существует
КонецЕсли;
3 Knowledge
 
14.09.13
10:27
(2) Не получится, Новый УникальныйИдентификатор(СтрУИД) это не объект вызываемой базы.
4 Knowledge
 
14.09.13
10:35
Я кажется нашел выход, хотя вроде в документации об этом не написано (про 2-й параметр метода NewObject) :
УИД =  connection.NewObject("УникальныйИдентификатор",СтрУИД)
ВненешнийСотрудник = Внешние_ Сотрудники.ПолучитьСсылку(УИД);