helpf.pro
Регистрация

v8: v8. Управление Торговлей 11 - дополнительные реквизиты - добавить программно

snfr1c
28.10.2011 16:15Прочитано: 12666
Здравствуйте!
Вопрос:
Есть в справочнике Номенклатура Табличная часть Дополнительные Реквизиты. В программе разрешено использовать дополнительные реквизиты. Задача присвоить значение дополнительному реквизиту.
Код 1C v 8.2 УП
 Для каждого ДопРеквизит Из Номенклатура.ДополнительныеРеквизиты Цикл
Если ДопРеквизит.Свойство.Наименование = НазваниеДопРеквизита Тогда
//какое либо действие по добавлению или изменению реквизита
КонецЕсли;
КонецЦикла;

такая процедура не срабатывает т.к. реквизит может быть незаполнен.
Yandex
Возможно, вас также заинтересует
Реклама на портале
snfr1c
28.10.2011 17:20Ответ № 1
получилось так
Код 1C v 8.2 УП
 	
НазваниеДопРеквизита = "Страна происхождения";
ЕстьВНаличии = Номенклатура.ДополнительныеРеквизиты.Найти(ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию(НазваниеДопРеквизита), "Свойство");
СвойствоРеквизита = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию(НазваниеДопРеквизита);
Если ЕстьВНаличии = Неопределено Тогда
спрОБъект = Номенклатура.ПолучитьОбъект();
Артикул = СокрЛП(Номенклатура.Артикул);
спрОБъект.Артикул = Артикул;

НовыйРеквизит = спрОБъект.ДополнительныеРеквизиты.Добавить();
НовыйРеквизит.Свойство = СвойствоРеквизита;
НовыйРеквизит.Значение = Страна;
спрОБъект.записать();
КонецЕсли;

Где Номенклатура - ссылка на справочник номенклатура
Страна - ссылка на справочник Страны Мира
snfr1c
28.10.2011 17:20Ответ № 2
Вопрос закрыт!
Подсказка: Для редактирования своего ответа щелкните по значку (справа)
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.