Создание нескольких копий в регистре при записи

1. user876792 21.05.18 14:08 Сейчас в теме
			Если ВыборкаПК.Следующий() Тогда
			
					Для н = 0 По КоличествоКопий Цикл
						Набор = РегистрыСведений.КомпьютерыИОргтехника.СоздатьНаборЗаписей();
						Набор.Прочитать();				
						НовЗапись = Набор.Добавить();
						НовЗапись.ОбъектОИС = ЭтотОбъект.Ссылка;
						НовЗапись.Код = ЭтотОбъект.Код;
						НовЗапись.Изготовитель = ВыборкаПК.Изготовитель;
						НовЗапись.НазначениеОбъекта = ВыборкаПК.НазначениеОбъекта;
						НовЗапись.Комментарий2 = ВыборкаПК.Комментарий2;
						НовЗапись.МодельУстройства = ВыборкаПК.МодельУстройства;
						НовЗапись.ДрДопХарактеристики = ВыборкаПК.ДрДопХарактеристики;
						НовЗапись.ДиагональМонитора = ВыборкаПК.ДиагональМонитора;
						НовЗапись.ТипПроцессора = ВыборкаПК.ТипПроцессора;
						НовЗапись.ОбъемПамяти = ВыборкаПК.ОбъемПамяти;
						НовЗапись.ОбъемЖесткогоДиска = ВыборкаПК.ОбъемЖесткогоДиска;
						НовЗапись.ОперационнаяСистема = ВыборкаПК.ОперационнаяСистема;
						НовЗапись.ЛичноеПользование = ВыборкаПК.ЛичноеПользование;	
						НовЗапись.Модернизация = ВыборкаПК.Модернизация;
						Набор.Записать();
					КонецЦикла;		
			
			КонецЕсли;	
Показать


Не создается необходимое КоличествоКопий в событии ПриЗаписи, только одна.
+
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
6. spacecraft 21.05.18 14:24 Сейчас в теме +0.1 $m
(1) в данном случае никак. В РС не может быть несколько записей с одинаковыми измерениями. Именно по уникальности измерений и находятся записи.
Единственно, что можно предложить, это добавить еще одно измерение, скажем НомерКопии, тип Число.
И в цикле присваивать ему переменную н.
user876792; +1
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. bs.nnov 21.05.18 14:14 Сейчас в теме
(1)

Набор = РегистрыСведений.КомпьютерыИОргтехника.СоздатьНаборЗаписей();
Набор .Отбор.Измерение.Установить(ЗначениеИзмерение);
Набор.Прочитать();
Fe9_min; +1
5. Fe9_min 50 21.05.18 14:23 Сейчас в теме
(1)
Когда вы читаете() без отбора регистр сведений, то берутся все записи и заменяются на вашу одну, и так в цикле каждый раз.
user876792; +1
6. spacecraft 21.05.18 14:24 Сейчас в теме +0.1 $m
(1) в данном случае никак. В РС не может быть несколько записей с одинаковыми измерениями. Именно по уникальности измерений и находятся записи.
Единственно, что можно предложить, это добавить еще одно измерение, скажем НомерКопии, тип Число.
И в цикле присваивать ему переменную н.
user876792; +1
2. vynosmozga 5 21.05.18 14:13 Сейчас в теме
Может следует проверить в регистре уникальность по измерениям. Возможно в регистре нет возможности создавать несколько записей, поэтому создается одна.
+
7. Radkt 21.05.18 14:31 Сейчас в теме
Огласите список измерений, возможно как описано в (2), получение набора без отбора, я бы вынес за пределы цикла или создавал бы менеджер записи
+
8. user876792 21.05.18 14:43 Сейчас в теме
(7) Измерения ОбъектОИС и Код
+
14. Radkt 22.05.18 17:14 Сейчас в теме
(8) Ну раз в нет измерения номер копии, то запишется только 1 запись, что и есть в вашем случае. Добавляйте в измерение номер копии или откажитесть от идеи дублировать записи и пишите в реквизит или ресурс количество копий и тиражируйте уже при получении данных и выводе на печать
+
4. Akuji 22 21.05.18 14:15 Сейчас в теме
а отбор?
Набор = РегистрыСведений.Наим.СоздатьНаборЗаписей();

Набор.Отбор.Период.Установить(Период);

Набор.Прочитать();
+
9. user876792 21.05.18 14:47 Сейчас в теме
(4) Переменная не определена (Период). Какое тут должно быть значение не понятно. Откуда брать этот период если запись в регистре еще не создана?
+
10. Akuji 22 21.05.18 14:49 Сейчас в теме
(9) имя регистра
Набор = РегистрыСведений.КомпьютерыИОргтехника.СоздатьНаборЗаписей();
Набор .Отбор.Измерение.Установить(ЗначениеИзмерение);
Набор.Прочитать()
+
11. Akuji 22 21.05.18 14:52 Сейчас в теме
РегистрСведений = РегистрыСведений.такойто.СоздатьНаборЗаписей();
РегистрСведений.Отбор.ОбъектОИС .Установить(Выб.Объект);
РегистрСведений.Отбор.Код.Установить(Выб.Код);
РегистрСведений.Прочитать();
+
12. Jimbo 9 21.05.18 16:56 Сейчас в теме
Автор, что вы хотите записать ? с одними измерениями и будет одна запись. Измерения на то и уникальны, что по ним выбирается одна запись. И замечание про отбор и прочитать верное, а то да затрете всё в регистре
+
13. user876792 21.05.18 17:07 Сейчас в теме
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот