Имя: Пароль:
1C
1С v8
Запись в РН без отбора по регистратору
,
0 EugeniaK
 
24.05.13
15:06
Добавила РН в конфигурацию.
Необходимо его заполнить в прошлом периоде.
Заполнение простое.
Выбираю данные запросом с итогом по регистратору. Создаю набор записей по регистратору, заполняю, записываю.
Получается долго.
Можно ли как-то заполнить РН без отдельной записи по каждому документу?
Т.е. сформировать набор/выборку/что-то еще по всем регистраторам сразу и записать одной командой.
1 EugeniaK
 
24.05.13
15:07
Пробовала просто в один набор писать данные с разными регистраторами. Ругается, что не установлен отбор.
2 PR
 
24.05.13
15:07
Нет
3 Hmster
 
24.05.13
15:12
повесь все записи на один документ
4 azernot
 
24.05.13
15:15
Набор записей напрямую пишется очень быстро.. У тебя каждый набор содержит тысячи записей тысячи таких наборов? Может долго потому что не оптимально написано?
5 EugeniaK
 
24.05.13
15:38
(3) Нельзя. Смысл заполнения как раз в том, чтобы потом данные регистра для отчетов использовать. В том числе и по прошлым периодам. Регистратор каждой записи нужен.
(4) Примитивнейший запрос и простое заполнение. Тысячи наборов по 5-40 записей в каждом.
6 Ненавижу 1С
 
гуру
24.05.13
15:40
отключи итоги
7 Hmster
 
24.05.13
15:44
выполняй в одной транзакции
8 azernot
 
24.05.13
15:45
НаборЗаписей.ОбменДанными.Загрузка = Истина;
перед записью поставь
9 EugeniaK
 
24.05.13
15:53
(8) Стоит. Без него вообще ругалось на закрытый период.
(6) Спасибо. Помогло.
(7) Что от этого изменится? Там вообще нет транзакции, насколько я понимаю.
10 EugeniaK
 
24.05.13
15:55
(6) Подскажи еще, по синтаксису ничего не перепутала?
РегистрыНакопления.ИмяРегистра.УстановитьИспользованиеИтогов(Ложь);
<Заполнение>
РегистрыНакопления.ИмяРегистра.УстановитьИспользованиеИтогов(Истина);
РегистрыНакопления.ИмяРегистра.ПересчитатьИтоги();
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс