Имя: Пароль:
1C
1С v8
Очистка базы 1С8 аналогично 1с77
,
0 Мимохожий Однако
 
19.09.21
16:51
Для очистки базы от документов и регистров в базе 1с77 есть замечательный скрипт, удаляющий таблицы напрямую. Потом после тестирования и исправления с базой можно было работать. Прелесть в том, что процессу удаления занимает не более минуты. Есть ли такой же инструмент для базы 1с8? Стандартное удаление помеченных на удаление занимает значительное время. Создание базы из файла конфигурации или почкованием периферийной базы не подходит, т.к. при этом меняется внутренний идентификатор базы. В связи защитой, которая привязана к внутреннему идентификатору базы, эти способы не подходят.
1 rphosts
 
19.09.21
17:03
Думаю накидать обработки которая создает такой скрипт (обходя метаданные и используя СтруктуруХраненияДанныхИБ) не такая уж и сложная задача
2 серый КТУЛХУ
 
19.09.21
17:06
а создание временной пустой из конфигурации, ее выгрузка в дт - и загрузка из этого дт в целевой - тоже меняет внутр.ид целевой?
3 Мимохожий Однако
 
19.09.21
17:24
(2) Да
4 Мимохожий Однако
 
19.09.21
17:27
(1) Моей квалификации недостаточно. На просторах инета подобных поделок не обнаружил.
Правда нашёл один вариант. В универсальном обмене в формате XML есть последняя страничка "Удаление данных". В режиме конфигуратора убрал из состава полного обмена все объекты и запустил удаление документов и регистров. Сколько займёт времени пока не знаю, т.к. процесс еще идёт...
5 hhhh
 
19.09.21
17:44
(4) "Стандартное удаление помеченных на удаление занимает значительное время" - тут есть выход, не помечать на удаление всю базу, а удалять порциями, по 3-5 тыс. элементов. Тогда стандартное удаление займет не так уж много времени, в общем, можно за пару часов всё вычистить. Запустив удаление несколько раз.
6 asady
 
19.09.21
17:51
(0) Если надо оставить справочники я бы написал обработку (аналогичную писал давно для 7.7)
примерно по шагам
1. Отключаем итоги
2. Удаляем движения регистров (естественно все в режиме обменданными.загрузка-истина)
3. Помечаем документы к удалению и очищаем данные (реквизитты и таб.части)
4. Запускаем процесс физического удаления помеченных объектов.
5. Запускаем ТИИ
6. Включаем итоги

признаюсь пока мне самому не требовалось такое, но если бы пришлось - примерно так бы и действовал.
7 Aleksey
 
19.09.21
17:54
Дроп табл. Делов то на 15 минут с перекуром
8 ДенисЧ
 
19.09.21
18:21
(7) А без перекура на час ))
9 Мимохожий Однако
 
19.09.21
18:33
(6) Скинь )
10 rphosts
 
19.09.21
18:45
(7) схема обработки которая накидает скрипт в (1) только не DROP, а TRUNCATE TABLE
11 rphosts
 
19.09.21
18:45
(4) если не прикладывать усилий - ничему и не научишься
12 asady
 
19.09.21
18:52
(9) семерошную обработку?
Это ж мне в архивы лезть придется - зачем,
ты же сам написал в (0) что есть для семерки прекрасный скрипт под скуль - наверное он побыстрее будет

В годах этак 5х-7х - процесс очистки базы от документов занимал примерно час - но и без скрипта по сценарию (6) не намного дольше.
13 kubik_live
 
19.09.21
19:06
+(12)
А что проблемного в 7.7 очистить документооборот?
В файловой: удаляем индексы, все dh dt ra rg, файлы общего журнала и перекрестных ссылок.
Делаем тии и вуаля
итог: База очищена от всех доков.
Процесс в пределах часа (с перекурами)
14 Мимохожий Однако
 
19.09.21
19:08
(13) Мне надо для 1с8 )
15 Мимохожий Однако
 
19.09.21
19:09
(14) +, но быстро
16 kubik_live
 
19.09.21
19:10
(14) я попробовал ИР - намного удобнее и быстрее
17 kubik_live
 
19.09.21
19:12
+(16) Нечто подобным в текущий момент занимаюсь - пробная свертка и перенос БП20 в 30 (базе 8 лет с проблемами ведения учета)
18 Мимохожий Однако
 
19.09.21
19:38
(16) Надо посмотреть. Спасибо.
19 тук-тук
 
19.09.21
21:19
загрузить кастрированный cf без РН и документов, потом загрузить исходный cf
20 kubik_live
 
19.09.21
23:56
(19) Изобрази такое чудо в студию!
21 Aleksey
 
20.09.21
01:11
(18) в ИР есть Структура хранения БД и там Очистка таблиц СУБД
22 TormozIT
 
гуру
20.09.21
08:32
Тоже пробовал ИР. Много полезного.
Вот про очистку таблиц БД через СУБД
http://devtool1c.ucoz.ru/_si/0/22160898.png
23 ДенисЧ
 
20.09.21
08:36
(22) ТОлько ты не учитываешь один момент - не у всех есть доступ к скулю
24 TormozIT
 
гуру
20.09.21
08:47
(23) Так это не я. Я лишь показал иллюстрацию к выше обозначенной возможности.
25 ChMikle
 
20.09.21
09:29
Пустую базу создал и объединил файлы конфигураций , так не проще ?
26 Garykom
 
гуру
20.09.21
09:46
(20) Изобразить то можно, только вот готовить его заманаешься за счет перекрестных связей
27 Tatitutu
 
20.09.21
11:12
28 Обработка
 
20.09.21
11:36
Я делаю так:
1. Делаю выгрузку базы и конфы.
2. создаю копию чистую.
3. Универсальной обработкой переношу справочники.

Быстро и удобно.
29 серый КТУЛХУ
 
20.09.21
12:13
(3): а выгрузить исходный cf-ник, войти в конфигуратор и убить все "очищаемые" объекты метаданных, сохраниться, потом загрузить предварительно выгруженный исходный cf-ник обратно - получится? а внутр.ид базв при этом сохранится?
30 Мимохожий Однако
 
20.09.21
12:49
(27) Это пробовал изначально. По этой схеме меняется какой-то внутренний идентификатор базы. После этого не работает обработка с вшитой защитой.
(29) Любопытно. Надо попробовать.
31 Мимохожий Однако
 
20.09.21
12:49
(23) Именно этот фактор меня остановил. База моего клиента файловая.
32 Serg_1960
 
20.09.21
12:50
(27) Во-первых, ТС утверждает что подобные варианты ему не подходят из-за защиты, "которая привязана к внутреннему идентификатору базы". А во-вторых, автор обработки заблуждается относительно регистрации в плане обмена "Полный"  - не все объекты базы данных участвуют в обмене. Даже если он РИБ-обмен с наименованием "Полный" :(
33 Serg_1960
 
20.09.21
12:56
(29) Внутренний идентификатор сохранится, но овчинка выделки не стоит: при удалении объектов из конфигурации - контроль идет на уровне конфигурации, а наличие/отсутствие данных в базе - не принципиально. Они будут "участвовать", когда будете обновлять конфигурацию базы данных.
34 серый КТУЛХУ
 
20.09.21
13:25
(33): нифига не понял. "кто на ком стоял?" (с)
35 Serg_1960
 
20.09.21
13:35
(34) В чём смысл лишних телодвижений?
36 серый КТУЛХУ
 
20.09.21
14:02
(35): в (0).
как неожиданно, да?
37 Serg_1960
 
20.09.21
14:22
(36) Мда, информативно поговорили :) "Единственное, что человек делает всегда искренне, так это —  заблуждается."(с)
Вторая попытка: в чём смысл (29)?