Создание элемента справочника с заданным GUID.
Внимание! Тема закрыта. Добавлять сообщения в закрытую тему запрещено.
Здравствуйте, уважаемые =)
Под конец рабочего дня приспичило написать обработку для создания нового элемента справочника Номенклатура с заданным ГУИДом =)
Имеется: платформа 8.3.5.1231, самописная конфа и com-соединение к УПП 1.3.59.1.
Внешняя обработка: по com получаю номенклатуру (собственно нужна ГУИД, Код, Наименование). Проверяю в самописной базе, что нет такого ГУИДа, и создаю новый элемент Номенклатура:
РезСсылка = Справочники._Номенклатура.ПолучитьСсылку(Новый УникальныйИдентификатор(ГУИД)).Ссылка.Наименование;
Сообщить("Результат - *" + РезСсылка + "*");
НоменклатураНов = Справочники._Номенклатура.СоздатьЭлемент();
Если НЕ ЗначениеЗаполнено(РезСсылка) Тогда
Сообщить("Нет такого ГУИД");
НоменклатураНов.УстановитьСсылкуНового(Новый УникальныйИдентификатор(ГУИД));
КонецЕсли;
НоменклатураНов.Наименование = Номенклатура;
НоменклатураНов.Записать();
Ошибка - Ошибка при вызове метода контекста (УстановитьСсылкуНового) НоменклатураНов.УстановитьСсылкуНового(НовыйУникальныйИдентификатор(ГУИД)); по причине: Несоответствие типов (параметр номер '1')
Самое что прикольное взял из примера справочника, да и из примеров что гугл показал =)
МБ что-то упустил или неправильно понял...
Под конец рабочего дня приспичило написать обработку для создания нового элемента справочника Номенклатура с заданным ГУИДом =)
Имеется: платформа 8.3.5.1231, самописная конфа и com-соединение к УПП 1.3.59.1.
Внешняя обработка: по com получаю номенклатуру (собственно нужна ГУИД, Код, Наименование). Проверяю в самописной базе, что нет такого ГУИДа, и создаю новый элемент Номенклатура:
РезСсылка = Справочники._Номенклатура.ПолучитьСсылку(Новый УникальныйИдентификатор(ГУИД)).Ссылка.Наименование;
Сообщить("Результат - *" + РезСсылка + "*");
НоменклатураНов = Справочники._Номенклатура.СоздатьЭлемент();
Если НЕ ЗначениеЗаполнено(РезСсылка) Тогда
Сообщить("Нет такого ГУИД");
НоменклатураНов.УстановитьСсылкуНового(Новый УникальныйИдентификатор(ГУИД));
КонецЕсли;
НоменклатураНов.Наименование = Номенклатура;
НоменклатураНов.Записать();
Ошибка - Ошибка при вызове метода контекста (УстановитьСсылкуНового) НоменклатураНов.УстановитьСсылкуНового(НовыйУникальныйИдентификатор(ГУИД)); по причине: Несоответствие типов (параметр номер '1')
Самое что прикольное взял из примера справочника, да и из примеров что гугл показал =)
МБ что-то упустил или неправильно понял...
По теме из базы знаний
- Универсальный редактор реквизитов объектов. Мультиобработчик
- Про ссылки, уникальные идентификаторы, GUID и не найденные объекты
- Обмен с системой Меркурий через Web + Ветис.API для любых конфигураций (универсальная конфигурация Хамелеон Меркурий)
- Создание стартовой базы
- Расширяемый фреймворк на 1С, или Нюансы натягивания совы на глобус
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Идентификатор = Новый УникальныйИдентификатор(ОбъектXDTO.Id);
Ссылка = Справочники.Контрагенты.ПолучитьСсылку(Идентификатор);
Объект = Ссылка.ПолучитьОбъект();
Если Объект = Неопределено Тогда
Если ОбъектXDTO.ThisIsGroup Тогда
Объект = Справочники.Контрагенты.СоздатьГруппу();
Иначе
Объект = Справочники.Контрагенты.СоздатьЭлемент();
КонецЕсли;
Объект.УстановитьСсылкуНового(Ссылка);
Объект.УстановитьНовыйКод();
Объект.Записать();
КонецЕсли;
Показать
(3) Dimon93dimon,
подправил для себя, все заработало, спасибо =)
подправил для себя, все заработало, спасибо =)
РезСсылка = Справочники.ммр_Номенклатура.ПолучитьСсылку(Новый УникальныйИдентификатор(ГУИД));
Объект = РезСсылка.ПолучитьОбъект();
НоменклатураНов = Справочники.ммр_Номенклатура.СоздатьЭлемент();
Если Объект = Неопределено Тогда
НоменклатураНов.УстановитьСсылкуНового(РезСсылка);
КонецЕсли;
НоменклатураНов.Наименование = Номенклатура;
НоменклатураНов.Записать();
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот