HelpF.pro

Загрузка данных из таблицы значений в регистр сведений

В документе есть табличная часть вида
№ Инвентарная группа Январь Февраль Март Апрель ... и т.д.
1 Бумага 150 175 130 140 ...
1 Кантовары 50 15 30 27 ...
1 Хозтовары 10 29 37 60 ...

Нужно выгрузить табличную часть документа в Таблицу значений и загрузить в регистр сведений

Период Дата Подразделение Инвентарная группа Количество
01.01.2010 01.01.2010 Хоз. Отдел Бумага 150
01.01.2010 02.01.2010 Хоз. Отдел Бумага 175
01.01.2010 03.01.2010 Хоз. Отдел Бумага 130
...........................
01.01.2010 01.01.2010 Хоз. Отдел Кантовары 50
01.01.2010 02.01.2010 Хоз. Отдел Кантовары 15
01.01.2010 03.01.2010 Хоз. Отдел Кантовары 30
.....
и т.д

вот примерный код:
Код 1C v 8.х
  ТЗ = Новый ТаблицаЗначений;
ТЗ = СписокИнвентарныхГрупп.Выгрузить();
СчетчикКолонок = 2;
СчетчикСтрок = 0;
Пока СчетчикСтрок < СписокИнвентарныхГрупп.Количество()Цикл
Пока СчетчикКолонок<=13 Цикл
НаборДанных = РегистрыСведений.ЛимитыИнвентаря.СоздатьНаборЗаписей();
НаборДанных.Отбор.ИнвентарнаяГруппа.Установить(ТЗ[СчетчикСтрок][1]);
НаборДанных.Отбор.Подразделение.Установить(ПОдразделение);
НаборДанных.Отбор.Дата.Установить(ДобавитьМесяц(НачалоГода(Период),СчетчикКолонок-2));
НаборДанных.Прочитать();
Если НаборДанных.Количество() = 0 Тогда
Запись = НаборДанных.Добавить();
Иначе
Запись = НаборДанных[0];
КонецЕсли;
Запись.Подразделение = Подразделение;
Запись.ИнвентарнаяГруппа = ТЗ[СчетчикСтрок][1];
Запись.Дата = ДобавитьМесяц(НачалоГода(Период),СчетчикКолонок-2);
Запись.Количество = ТЗ[СчетчикСтрок][СчетчикКолонок+1];
Запись.Период = Период;
НаборДанных.Записать();
СчетчикКолонок = СчетчикКолонок+1;
КонецЦикла;
СчетчикСтрок = СчетчикСтрок+1;
СчетчикКолонок = 2;
КонецЦикла;

Опубликовано на сайте: https://HelpF.pro
Прямая ссылка: https://HelpF.pro/faq/view/639.html