Как по ГУИД найти элемент справочника? |
Я |
25.03.09 – 12:58
Господа, подскажите, как зная гуид найти элемент справочника?
1 – 25.03.09 – 12:58
ГУИД 1С
2 – 25.03.09 – 12:59
Справочники.ТвойСпр.ПолучитьСсылку(
3 – 25.03.09 – 13:00
А зачем его искать, когда его можно сразу получить?
4 – 25.03.09 – 13:05
щас скажет что он запросом хочет найти справочник по гуиду
5 – 25.03.09 – 13:09
у меня есть гуид, мне надо знать кому он принадлежит?
6 – 25.03.09 – 13:10
(5) Вид справочника/документа и т.п. в гуид не зашит.
7 – 25.03.09 – 13:11
(5) делаем так, ты гуляешь где-то полчаса, потом приходишь и перечитываешь (2) и (3) как если бы это было (28) и (34) и восклицаешь:
— Ну вот! наконец-то! Что, сразу трудно было ответить?
8 – 25.03.09 – 13:11
(5) Это ты у нас спрашиваешь? Тогда не надо. Вдруг ты не выдержишь такого знания.
9 – 25.03.09 – 13:11
(5) Пройдись по всем справочникам и для каждого как в (2)
10 – 25.03.09 – 13:13
(9) Думаешь, автор нашел где-то мумажку, где был написан GUID? Или все же допускаешь мысль, что он не от сырости завелся?
11 – 25.03.09 – 13:19
(10) Думаю именно насчёт “бумажки” – например, загружает GUIDы загружает из ранее криво выгруженного файла. Иначе – откуда вопрос-то возник?
12 – 25.03.09 – 13:25
Контр = Справочники.Контрагенты.ПолучитьСсылку(“efe16b82-efd0-0c344-9f60-d6a32f0c4687”);
Подскажите в чем проблема, программа ругается на несоответствие типов?
13 – 25.03.09 – 13:28
дефисы поубирать
14 – 25.03.09 – 13:28
(12) СП – украли?
15 – 25.03.09 – 13:32
(12) ты же строку передаешь, а надо ГУИД.
16 – 25.03.09 – 13:53
(11) Оттуда же, откуда берутся 80% вопросов – от нежелания подумать.
17 – 25.03.09 – 13:54
Контр = Справочники.Контрагенты.ПолучитьСсылку(Новый УникальныйИдентификатор(“efe16b82-efd0-0c344-9f60-d6a32f0c4687”));
18 – 25.03.09 – 13:55
XMLЗначение(Тип(“СправочникСсылка.Контрагенты”),”efe16b82-efd0-0c344-9f60-d6a32f0c4687″)
19 – 25.03.09 – 13:59
У нас РИБ УТ. При загрузке из переферийного узла вылетает ошибка:
Запись с такими ключевыми полями существует! <Объект не найден>(54:efe16b82
efd00c3449f60d6a32f0c4687)
(Регистр сведений:контактная информация).
В регистре все записи целые, ссылочность не нарушена.
20 – 25.03.09 – 14:01
Дикость какая-то.
Уверен, что 54-ая таблица – Контрагенты, а не Организации, Физ.лица, или Пункты разгрузки?
21 – 25.03.09 – 14:02
<<В регистре все записи целые, ссылочность не нарушена.>>
Точно – точно??
Проверь в периферийке, что с регистром.
22 – 25.03.09 – 14:10
(17) не работает, ругается на недопустимое значение парметра.
23 – 25.03.09 – 14:11
(21) в переферийке все нормально с регистром, также как и в центре
24 – 25.03.09 – 14:12
(22) Что у тебя за GUID с группой из 5 цифр?
25 – 25.03.09 – 14:14
Это я исправила efe16b82-efd0-c344-9f60-d6a32f0c4687
26 – 25.03.09 – 14:15
(16) Помог бы девушке. С одного же города.
27 – 25.03.09 – 14:16
(19) такое ощущение, что и в центре и на периферии одновременно
заполнили конт. инфу по одному и тому же контрагенту.
Отсюда ругань при обмене, что запись уже есть.
Надо исключать такие коллизии для регистра контактная информация.
28 – 25.03.09 – 14:16
(19) файл выгрузки как формируется? имхо – дважды выгружена одна и таже запись регистра
при использовании типовой выгрузки-загрузки ни разу не встречал такого
а “Объект не найден” – объекты могут записываться позже, нежели движения…
29 – 25.03.09 – 14:17
(27) приоритет у центральной базы, при одновременном заполнении – будут разные гуиды и просто задвоенные значения
30 – 25.03.09 – 14:19
(25) Значит, неправильно исправила.
Что-то не так у тебя с цифрами. И в (19) – нечётное число цифр, чего быть не может.
31 – 25.03.09 – 14:20
(27), (29) мда..
Нету никаких приоритетов.
<<одновременном заполнении – будут разные гуиды и просто задвоенные значения>>
Если только ссылочного объекта.
32 – 25.03.09 – 14:20
(29) Какие гуиды в РС?
33 – 25.03.09 – 14:21
(32) имел ввиду гуиды ведущих измерений
34 – 25.03.09 – 14:23
(33) Дык это разные записи будут. Разных элементов.
Вообще, запись должна была просто затереться, ИМХО…
35 – 25.03.09 – 14:23
(31) насчет приоритетов – сам не думал о таком, однако несколько раз сталкивался – при одновременном изменении в центре и филиале одного объекта – после обмена оставались изменения в центре, хз как это происходило…
36 – 25.03.09 – 14:23
Как вариант:
1) В периферийке удалили элемент справочника.
2) Изменили по ОсновномуОтбору РС
3) Измерение, по которому выскакивает ошибка – не ведущее и не в ОсновномОтборе.
37 – 25.03.09 – 14:23
(36) УТ – типовая?
38 – 25.03.09 – 14:24
(36) ничего могли не удалять – “Объект не найден” – объекты могут записываться позже, нежели движения…
39 – 25.03.09 – 14:25
имхо – в выгрузке дважды одна и та же запись, при инсерте индексы матерят…
40 – 25.03.09 – 14:25
(39) Ну и как такое может быть? Сбой?
41 – 25.03.09 – 14:26
В ТаблицеРегистрации – задвоение?
42 – 25.03.09 – 14:26
Счаст запрос накропаю
43 – 25.03.09 – 14:26
(40) хз, надо взять файло обмена и поискать в нем этот гуид – возможно, что и обнаружится
44 – 25.03.09 – 14:27
неизвестно, как автор выгрузку получает
45 – 25.03.09 – 14:32
ВЫБРАТЬ
ВложенныйЗапрос.Объект,
ВложенныйЗапрос.Тип,
ВложенныйЗапрос.Вид
ИЗ
(ВЫБРАТЬ
КонтактнаяИнформацияИзменения.Объект КАК Объект,
КонтактнаяИнформацияИзменения.Тип КАК Тип,
КонтактнаяИнформацияИзменения.Вид КАК Вид,
1 КАК Поле1
ИЗ
РегистрСведений.КонтактнаяИнформация.Изменения КАК КонтактнаяИнформацияИзменения
ГДЕ
КонтактнаяИнформацияИзменения.Узел = &Узел) КАК ВложенныйЗапрос
ГДЕ
ВложенныйЗапрос.Поле1 > 1
Автор, выполни это в консоле запросов, в периферийке, узел – это узел центральной базы.
46 – 25.03.09 – 14:33
Млин пардон, вот это:
ВЫБРАТЬ
ВложенныйЗапрос.Объект,
ВложенныйЗапрос.Тип,
ВложенныйЗапрос.Вид
ИЗ
(ВЫБРАТЬ
КонтактнаяИнформацияИзменения.Объект КАК Объект,
КонтактнаяИнформацияИзменения.Тип КАК Тип,
КонтактнаяИнформацияИзменения.Вид КАК Вид,
СУММА(1) КАК Поле1
ИЗ
РегистрСведений.КонтактнаяИнформация.Изменения КАК КонтактнаяИнформацияИзменения
ГДЕ
КонтактнаяИнформацияИзменения.Узел = &Узел
СГРУППИРОВАТЬ ПО
КонтактнаяИнформацияИзменения.Объект,
КонтактнаяИнформацияИзменения.Тип,
КонтактнаяИнформацияИзменения.Вид) КАК ВложенныйЗапрос
ГДЕ
ВложенныйЗапрос.Поле1 > 1
47 – 25.03.09 – 15:01
(46) Консоль отчетов ничего не выводит
48 – 25.03.09 – 15:04
(47) Значит нет задвоения. ХЗ тогда что.
49 – 25.03.09 – 15:04
(47) Значит нет задвоения. ХЗ тогда что.
50 – 25.03.09 – 15:23
при записи в регистр сделать проверку и игнорировать ошибку, чтобы загрузка прошла до конца
H A D G E H O G s
51 – 25.03.09 – 15:28
(50) Это – системное. При Обмене – и так пропуск проверок.
Пример поиска:
ГУИД = "4b9c2fa7-3824-11ea-ab9e-38d547def818";
ОбъектСсылка = Справочники.Номенклатура.ПолучитьСсылку(Новый УникальныйИдентификатор(ГУИД));
сообщить(ОбъектСсылка);
если объект не найден:
<Объект не найден> (206:ab9e38d547def81811ea38244b9c2fa7)
если объект найден (наименование объекта):
Желтый НМ 0,05кг
Рубрики
- Все
- CRM
- Битрикс24
- Frameworks
- Laravel
- Bootstrap 4
- React Native
- CMS
- OpenCart 3
- WordPress
- Функции
- Авторские функции
- 1С-Битрикс
- MODX
- АТС
- Asterisk
- OS
- Linux
- Fedora
- Linux Mint
- Manjaro
- Rocky Linux
- CentOS
- Debian
- Ubuntu
- Windows
- macOS
- Linux
- Контейнеризация
- Docker
- Программирование
- 1C
- Javascript
- Node JS
- PHP
- Python
- Android Studio
- Web
- Библиотеки
- Базы данных
- MySQL
- 1С
- Плагины DW
- WordPress
- Редакторы и IDE
- PHPStorm
- VS Code
- Sublime Text 3
- Notepad++
- Софт
- Blockchain
Свежие комментарии
Пн | Вт | Ср | Чт | Пт | Сб | Вс |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Битая ссылка, <Объект не найден>, Уникальный Идентификатор, GUID 74
Когда кто-то удаляет данные из базы без проверки ссылок на эти объекты, то везде где этот объект использовался появляется сообщение вида: Объект не найден (84:bf5600145e3710ab11dda4c605dbe824) .
https://helpf.pro/uploads/img/_1-46z7I4U7Ww.png
В
Битая ссылка, , Уникальный Идентификатор, GUID – Управляемые формы 4
Переделал обработки из статей Битая ссылка, Объект не найден, Уникальный Идентификатор, GUID и Поиск в базе битых ссылок – объект не найден под Управляемые формы. Скачать
Блокировка записей, невозможно изменить или удалить из регистра. Конфликт блокировок MS SQL + 1C 4
При попытке удалить запись из регистра сведений – получаю ошибку: она заблокирована, ошибка блокировок и т.д. Отключил всех пользователей, перезапустил сервер, пробую удалить – опять ошибка блокировки 🙁 Путем тестов было вяснено, что проблема
В учетной политике не указан вид тарифа страховых взносов. Как указать? 0
Создайте новую запись учетной политики с начала года – Например 01.01.2013
В учетной смотрите дату начала учетной политики. Поставьте дату начала года (например 01.01.13) закладка появиться должна.
Проверьте Тариф страховых взносов: Меню Зарпла
Выгрузка результата запроса в текстовый файл с разделителями 1
Запрос = Новый Запрос();
Запрос.УстановитьПараметр(” ДатаНач” ,НачалоДня(ДатаНач));
Запрос.УстановитьПараметр(” ДатаКон” ,КонецДня(ДатаКон));
Запрос.УстановитьПараметр(” Организация” ,Организация);
Запрос.Текст = ” ВЫБРАТЬ
| ПоступлениеТоваровУ
Посмотреть все результаты поиска похожих
Пример уникального идентификатора: 4bf85396-cc7a-11ea-9ef0-c86000245adb
// //Узнать уникальный идентификатор ГУИД = КонтрагентСсылка.УникальныйИдентификатор(); //Создаём уникальный идентификатор из строки СтрокаGUID = “4bf85396-cc7a-11ea-9ef0-c86000245adb”; НовыйGUID = Новый УникальныйИдентификатор(СтрокаGUID); //Можно не указывать СтрокаGUID. Программа сгенерирует сама НовыйGUID = Новый УникальныйИдентификатор(); |
// //Получить ссылку на на объект, зная его GUID СсылкаПП = Документы.ПлатежноеПоручениеВходящее.ПолучитьСсылку(НовыйGUID); //Создать документ и присвоить ему ГУИД СтрокаGUID = “4bf85396-cc7a-11ea-9ef0-c86000245adb”; Док = Документы.ПлатежноеПоручениеВходящее.СоздатьДокумент(); СсылкаДок = Документы.ПлатежноеПоручениеВходящее.ПолучитьСсылку(Новый УникальныйИдентификатор(СтрокаGUID)); Док.УстановитьСсылкуНового(СсылкаДок); |
// //Получить ГУИД из COM-объекта V83COMConnector = Новый COMОбъект(“V83.COMConnector”); БД = V83COMConnector.Connect(ПараметрыПодключения); СтрокаГУИД = БД.XMLСтрока(Док.Ссылка); |
Вариант применения в заметке «Сделать из элемента справочника группу»
Способ может быть не самый лучший, но работает. Если мы знаем, в каких метаданных мы ищем, то все предельно просто:
Создаем уникальный идентификатор с имеющимся у нас текстом ГУИДа и пользуемся замечательной функцией “ПолучитьСсылку”.
ГУИД = Новый УникальныйИдентификатор(СтрокаГУИД); НайденнаяСсылка = <НашиМетаданные>.<НашаТаблица>.ПолучитьСсылку(ГУИД);
Если мы не знаем, к каким метаданным относится объект с нашим ГУИДом, то придется перебрать все метаданные и таблицы. Как правило задача эта довольно своеобразная, но если уж вам понадобилось искать объект по всей базе по ГУИДу, то элементарная база у вас есть, а написать алгоритм для обхода всех метаданных для вас труда не составит.