@kyja

Как получить код товара только созданной группы / элемента?

СправочникНоменклатуры = Справочники.Номенклатура;

НоваяГруппа = СправочникНоменклатуры.СоздатьГруппу(); 
Родитель = СправочникНоменклатуры.НайтиПоНаименованию(СправочникНоменклатуры.ПустаяСсылка(, Истина); 
НоваяГруппа.Наименование = "ГруппаПервогоУровня"; 
НоваяГруппа.Родитель = Родитель; 
НоваяГруппа.Записать(); 

//Получим ссылку на созданую группу
СсылкаИскатьГруппы = СправочникНоменклатуры.НайтиПоНаименованию("ГруппаПервогоУровня",, Родитель);
ГруппаКорень = СсылкаИскатьГруппы;

//Создадим номенклатуру в созданой группе
НовыйЭлемент = СправочникНоменклатуры.СоздатьЭлемент(); 
НовыйЭлемент.Наименование = "Тест";  
НовыйЭлемент.Родитель = ГруппаКорень;

НовыйЭлемент.Записать();

//Получим ссылку на созданый элемент
СсылкаИскатьЭлемент = СправочникНоменклатуры.НайтиПоНаименованию("Тест",, ГруппаКорень);
ЭлементСсылка = СсылкаИскатьЭлемент;


Подскажите пожалуйста есть ли какой то способ получать Код созданной группы / элемента не прибегая к поиску НайтиПоНаименованию после создания? А как то более оптимальное получать ответ Записать()?

Чтобы не обращятся НайтиПоНаименованию а использовать либо сразу готовую ссылку либо хотя бы НайтиПоКоду для 100% уникальности обработки
  • Вопрос задан
  • 31 просмотр
Решения вопроса 1
@Dementor
программист, архитектор, аналитик
1. Для новых элементов код появляется в свойстве Код после записи, но можно заранее вызвать УстановитьНовыйКод() - если нет контроля уникальности и параллельно точно так же не создаются другие элементы в этом справочнике, то конфликта номеров не будет.
2. Можно не использовать автонумерацию и устанавливать код согласно вашей логики.
3. Зачем что-то искать после записи, если у вас уже объект в памяти? Используйте СсылкаИскатьГруппы = НоваяГруппа.Ссылка
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы