Имя: Пароль:
1C
1C 7.7
v7: Как быстро "грохнуть" все записи в справочнике
,
0 zenon46
 
14.12.23
12:32
Доброго дня!
7.7 SQL - как быстро удалить все записи в справочнике (справочник подчинен Номенклатуре)
Стандартная выборка и пометка удаления, работает очень долго.
1 Андрей_Андреич
 
naïve
14.12.23
12:33
Можно в транзакции через 300-1000 элементов
2 АгентБезопасной Нацио
 
14.12.23
12:34
truncate table
3 Андрей_Андреич
 
naïve
14.12.23
12:39
(2) Ну тогда уже Update Replace ISMARK with 1 where 1=1
И предоставить все-таки платформе удалить с контролем ссылочной целостности?
4 Андрей_Андреич
 
naïve
14.12.23
12:40
(3) Написал от балды - точный синтаксис смотреть надо
5 AAA
 
14.12.23
12:41
а сколько элементов?
а так то смотрите на DELETE ..
6 Андрей_Андреич
 
naïve
14.12.23
12:42
Update ИмяСПР Set IsMark=1 From ИмяСПР
7 zenon46
 
14.12.23
12:47
(2) Сделал так truncate table SC552 - все улетело за доли секунды ) Ща еще потестим, но вроде все хорошо.
8 АгентБезопасной Нацио
 
14.12.23
12:48
(3)можно и  Update ... SET ISMARK=1, можно по-всякому. Если удаляет свойства, которые только информационные, то и без контроля. Да можно поискать ссылки и руками (в смысле, обработкой), пишется не слишком долго.
9 AAA
 
14.12.23
12:50
(7)хирургический способ ) быстро потому что удаление логическое, указатель передвинулся и не стало записей )
10 АгентБезопасной Нацио
 
14.12.23
12:51
(9) зато не надо прыгать, чтоб отвалились...
11 AAA
 
14.12.23
12:52
(10)ну это да )
12 Андрей_Андреич
 
naïve
14.12.23
12:54
УРБД-то нет? а то прилетит обратно
13 АгентБезопасной Нацио
 
14.12.23
13:04
(12) разве что приползёт потихоньку.
Но и в периферийки удаление не улетит.
такие штуки в периферийках лучше "отправляемыми скриптами" делать. Хотя тоже вариантов много...
14 AAA
 
14.12.23
13:08
(13)+100 такое удаление не фиксируется (разве что дядюшкой или уже дедушкой Билли)))
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан