Имя: Пароль:
1C
1С v8
Ускорение записи в регистр сведений
0 Оболтус
 
28.02.12
12:25
Используется конструкция:

НоваяЗапись = РегистрыСведений.Регистр.СоздатьМенеджерЗаписи();
НоваяЗапись.Пользователь = Пользователь.Ссылка;
НоваяЗапись.Лог    = СокрЛП(стр);
НоваяЗапись.Записать();

В отладчике основной затык на Записать. Можно ли как-то ускорить заполнение регистра с помощью других конструкций?
1 asady
 
28.02.12
12:27
(0) структура регистра - дай описание
2 Ненавижу 1С
 
гуру
28.02.12
12:28
(0) это случайно не в цикле?
3 Азат
 
28.02.12
12:28
(0) если несколько записей, то таблица значений и Загрузить
4 Kuzen
 
28.02.12
12:28
РегистрСведенийНаборЗаписей
5 ЧеловекДуши
 
28.02.12
12:28
Ага...

типо в цикле...

НаборЗаписейЗначенияСвойств = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();

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

А потом... одним ударом

НаборЗаписейЗначенияСвойств.Записать();
6 Рэйв
 
28.02.12
12:29
попробуй так

НаборЗаписей = РегистрыСведений.Регистр.СоздатьНаборЗаписей();

НаборЗаписей.Отбор.Пользователь.Установить(Пользователь.Ссылка);  

НоваяЗапись = НаборЗаписей.Добавить();
НоваяЗапись. Пользователь = Пользователь.Ссылка;
НоваяЗапись.Лог    = СокрЛП(стр);

НаборЗаписей.Записать();


А еще посмотри в модуль регистра. Возможно при записи там что-то большое ворочается.
7 ЧеловекДуши
 
28.02.12
12:29
+ но вроде есть свои затыки, желательно с определенным интервалом производить запись.
8 Оболтус
 
28.02.12
12:30
(1)4 измерения: 2 справочника-ссылки, дата и строка 200 символов.
Ресурсов нет.
7 реквизитов: 3 перечисления,строка 10 символов, 2 строки 50 символов и строка 150 символов.
9 Оболтус
 
28.02.12
12:30
(2)В огромном цикле.
10 Оболтус
 
28.02.12
12:32
(5)Что делать с отборами? Можно отборы в цикл запихать, а потом после цикла записать?

(3)О, это идея, надо покопать, спасибо.
11 Оболтус
 
28.02.12
12:32
(6)Не получилось организовать это дело в цикле.
12 asady
 
28.02.12
12:33
(0) ты это - строку из измерений то убери
13 Оболтус
 
28.02.12
12:34
(12)Без неё не получается добиться уникальности измерений :(.
14 Оболтус
 
28.02.12
12:35
За одно время может быть несколько записей для 2-х справочников.
15 asady
 
28.02.12
12:44
(14) в этом случае тупо добавляй в лог
тормоза из-за этого
16 Оболтус
 
28.02.12
12:46
(15)В смысле "добавляй в лог"? Если запись уже существует, то реквизиты не перезаписывать, а дописывать?
17 asady
 
28.02.12
12:47
(16) именно
18 Оболтус
 
28.02.12
12:48
А время и числа в измерения можно?
19 Нуф-Нуф
 
28.02.12
12:48
пиши напрямую в таблицы баз данных
20 Оболтус
 
28.02.12
12:49
(19)Не. Это слишком круто :)
21 asady
 
28.02.12
12:49
(18) время засунь в дату (лучше в период)
число можно - но не нужно
22 Оболтус
 
28.02.12
13:40
(21)Числом можно задать версию для даты. :)