Информационный поток
Задания вакансии материалы разработки сообщения форума
Рубрики статей и материалов
Яндекс-директ

Как записать значение дополнительных реквизитов в конфигурации 1С УТ

  • Добавить свою публикацию
  • для этого требуется регистрация

Имеем предварительно заполненную Таблицу значений (ТаблицаДокумента). В таблице Колонка с индексом 0 - Артикул Номенклатуры. Остальные колонки - Дополнительные реквизиты справочника Вид Номенклатуры.

 

Необходимо по Артикулу найти Элемент справочника Номенклатура и заполнить все имеющиеся Дополнительные реквизиты. Доп Рекизиты для Номенклатуры определенны в спр. Вид номенклатуры.

Для записи воспользуемся предопределенной процедурой в конфигурации УТ, УправлениеСвойствами.ЗаписатьСвойстваУОбъекта(Элемент, Таблица).  При вызове данной процедуры необходимо передать в нее параметры: Элемент.Ссылка а так же Наименование Доп Реквизита и собственно значение которое необходимо записать. Наименование Доп Реквизита имеет вид: "НаименованиеРеквизита (НаименованиеЭлементаВидаНоменлатуры)".

 

 Процедура ЗаписатьНоменклатуру(ТаблицаДокумента)

	 //Создаем таблицу для передачи параметров в процедуру записи
	 Таблица = Новый ТаблицаЗначений;
	 Таблица.Колонки.Добавить("Свойство");
	 Таблица.Колонки.Добавить("Значение");
	 Таблица.Очистить();

	 //Обрабатываем таблицу значений файла данных
	 Для Каждого Стр ИЗ ТаблицаДокумента Цикл

	 Элемент = "";
	 Артикул = Стр.Артикул;

	 Если Не СокрЛП(Артикул) = "" Тогда
		 Элемент = Справочники.Номенклатура.НайтиПоРеквизиту("Артикул", Артикул);
		 Иначе Продолжить;
	 КонецЕсли;


	 //Обходим колонки таблицы (Дополнительные реквизиты 1С ВидНоменклатуры)
	 Для Колонка = 1 По ТаблицаДокумента.Колонки.Количество()-1 Цикл

		 Реквизит = ТаблицаДокумента.Колонки[Колонка].Имя;
		 ПланыВидов = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("" + Реквизит + " (" + Элемент.ВидНоменклатуры + ")");
		 
	Если Не СокрЛП(ПланыВидов) = "" Тогда

		 Строка = Таблица.Добавить();
		 Строка.Свойство = ПланыВидов;
		 Строка.Значение = Стр[Колонка];

		 //Записываем Номенклатура, Доп_Реквизит(Имя) Доп_Реквизит(Значение)
  		УправлениеСвойствами.ЗаписатьСвойстваУОбъекта(Элемент, Таблица);
	КонецЕсли;

	КонецЦикла;
КонецЦикла;

КонецПроцедуры

 

 
0
Еще от автора
≡ к списку статей