Имя: Пароль:
1C
 
Загрузка более 5000 записей в РС
,
0 LivingStar
 
18.08.14
12:32
Как можно оптимальнее загрузить более 5000 записей в регистр сведений? Как и на сколько документов разбивать? По сколько строк?
1 Галахад
 
гуру
18.08.14
12:35
Круто. Целых 5 тысяч...
2 Ненавижу 1С
 
гуру
18.08.14
12:35
5000 можно не разбивать
3 ИС-2
 
naïve
18.08.14
12:37
4 Адинэснег
 
18.08.14
12:38
более 5000 тысяч - это 5001 или 999 999 999 999?
5 РенеДекарт
 
18.08.14
12:40
(0) а проблема в чем? не можете в принципе загрузить ни одной записи?
6 РенеДекарт
 
18.08.14
12:41
(4)более 5000 тысяч и 999 999 999 999 - это где-то близко, хотя миллиарды записей в 1С не видел никогда ))
7 H A D G E H O G s
 
18.08.14
12:43
ОбменДанными.Загрузка=Истина;

Тогда РС при записи не будет проверять существование набора.
8 acsent
 
18.08.14
12:46
(7) Не прав.
Набор.Записать(Ложь)
9 H A D G E H O G s
 
18.08.14
12:47
(8) щас мы все проверим
10 Rlogin
 
18.08.14
12:51
Если РС подчинен регистратору, то в ТЧ документа регистратора, желательно не делать более 1000 строк. Это общая рекомендация 1С.
11 ptiz
 
18.08.14
12:54
(10) А иначе что-то страшное случится?
12 Rlogin
 
18.08.14
12:56
(11) Дальше может быть серьезное падение скорости работы с этим документом (в запросах)
13 H A D G E H O G s
 
18.08.14
12:58
(11) Да. Кластерный индекс часто не будет использоваться.
14 H A D G E H O G s
 
18.08.14
12:59
(12) Как раз без этого документа. Ну, то есть, если в условии запроса нет конкретного регистратора.
15 Rlogin
 
18.08.14
13:01
(14) Эскалация блокировки до уровня таблицы ?
16 Бешеная Нога
 
18.08.14
13:04
а что, долго грузится?
17 H A D G E H O G s
 
18.08.14
13:15
(8) Не совсем так:
НаборЗаписей.Записать(Ложь);
НаборЗаписей.ОбменДанными.Загрузка=Ложь;

1) Вставка каждой записи в ВТ.
2) inner join ВТ с РС
3) Вставка записей из ВТ в РС.

НаборЗаписей.Записать(Ложь);
НаборЗаписей.ОбменДанными.Загрузка=Истина;

1) Вставка каждой записи в РС.
18 H A D G E H O G s
 
18.08.14
13:18
(15) Не эскалация, а блокировка всего индекса.

Я вот не знаю, Clustered Index Scan блокирует весь индекс (как сказали на курсах) или же до того места, пока выполняется условие +1 следующее значение (ведь значения индекса упорядочены и до конца его проходить не надо).
19 Rlogin
 
18.08.14
13:21
(18) При установке блокировок, SQL может проэскалировать блокировку до уровня таблицы. Тоже кстати информация с курсов :)
20 H A D G E H O G s
 
18.08.14
13:23
(19) Когда был?
21 Rlogin
 
18.08.14
13:24
(19) в июле.
22 Rlogin
 
18.08.14
13:24
(20) см (21)
23 H A D G E H O G s
 
18.08.14
13:27
Я тоже
24 Rlogin
 
18.08.14
13:41
(23) Сдал ?
25 H A D G E H O G s
 
18.08.14
13:49
(24) Нет.
26 an-korot
 
18.08.14
13:51
ребята автор троллит вас, он ни разу не ответил, а вы тут диспут развели и за бутылкой уже бежать собрались ;)
27 cons74
 
18.08.14
14:03
(26)а меня стакан есть ;-)
28 РенеДекарт
 
18.08.14
14:29
(19) почему об этом знают только 1сники, а не sqlщики? У 1С "свой особый подход", как всегда?
29 H A D G E H O G s
 
18.08.14
14:40
30 РенеДекарт
 
18.08.14
14:44
(29) ящур - это острое вирусное заболевание
второе. Откуда 1сники знают, что там с гранулярностью в блокировках у SQL, если они не ставят хинты?
31 РенеДекарт
 
18.08.14
14:45
+ .... как всегда, "мы догадываемся"? )))
32 LivingStar
 
18.08.14
14:52
да хотел узнать, может не целесообразно грузить по 5000 или по 1000 и нужно как то иначе? Или все равно да?
33 LivingStar
 
18.08.14
14:53
(26) я отходил
34 LivingStar
 
18.08.14
14:53
(10) то есть по 1000 нормально будет в документе?
35 H A D G E H O G s
 
18.08.14
14:56
(31) Нет, читаем документацию по ms sql. Там все написано.
http://www.askit.ru/custom/sql2005_admin/m11/11_05_07_locks.htm
36 acsent
 
18.08.14
15:00
(35) и где тут противоречие с тем что может быть эскалация?
37 Крошка Ру
 
18.08.14
15:04
(34) Да пиши по сколько удобнее, тебе же их потом проверять.
38 H A D G E H O G s
 
18.08.14
15:09
(36) Кто тебе сказал про противоречие, ascent? Ты следи пожалуйста за нитью разговора, которая ушла к теме "подчинен регистратору"
39 ice777
 
18.08.14
15:27
(10) а зачем вообще делать ТЧ в некоторых случаях. Есть у меня документ ИзменениеСтавок - все го одна ТЧ для исключений и дата изменения. Все. А плодит кучу записей в РС, - по количеству работающих.
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.