Удаление данных средствами SQL, теория и практика

Публикация № 822080

Администрирование - Администрирование данных 1С - Чистка базы

обработка удалениеданных MSSQL

Методика быстрого удаления данных через SQL. Выбираем документ в 1С, добавляем простые условия - получаем готовый скрипт, удаляющий сами документы, их табличные части и движения по регистрам.

В данной статье будет рассмотрена методика удаления данных запросом в MSSQL-студии.

Отказ от ответственности

Делайте архив. 

Проверяйте, пожалуйста, текст скрипта перед выполнением. Понимайте, что делаете. Помните, что ответственность лежит целиком на Вас!

С особой внимательностью рекомендую проверять скрипт перед выполнением, если в Вашей базе есть случаи, когда период записей регистров отличается от даты регистратора.

Основная цель применения

Прикладная задача, в процессе решения которой родилась данная методика: свертка базы (ввод остатков, удаление документов и движений регистров в прошлых периодах). То есть: удаление документов (вместе с табличными частями, разумеется) до определённой даты, и их движений. Иногда обработка использовалась для удаления данных с более сложными условиями, но они менялись вручную уже в SQL-студии.

Предыстория

Проблема: свертка стандартными средствами происходила неприлично долго. Точней, именно этап удаления старых данных. Остатки вводятся быстро, а вот удаление движений регистров, пометка на удаление документов, само удаление - по нашим оценкам на наших объёмах (500ГБ) заняло бы недели.

Решение: удалить данные средствами SQL, чтоб миновать механизмы платформы 1С, ненужные при данной операции, но отнимающие драгоценное (в рамках данной задачи) время.

Препятствия: Данные в SQL хранятся в разных таблицах. Таблиц много, как их связать - не всегда понятно. То есть мало очистить сам документ (шапку), надо очистить также данные табличных частей, и движений документа. Движения по разным регистрам. Для одного документа регистров может быть много. Каждый регистр в свою очередь хранит данные также в нескольких таблицах. Наименования таблиц - неосмысленные.

Теория

Варианты (операторы) удаления в SQL.

  1. DROP - полное удаление таблицы из структуры данных (вместе с данными). То есть очищаются не только данные, но и метаданные. Работает мгновенно.
  2. TRUNCATE - полная очистка таблицы с сохранением структуры таблицы (очищаются только строки таблицы, колонки остаются прежними). Работает мгновенно.
  3. DELETE - удаление записей в таблице по определенному условию. Занимает определенное время.

Оператором DROP на практике я почти не пользуюсь. TRUNCATE - иногда пригождается, когда по условию задачи возможно удалить всю таблицу (данные не нужны совсем, либо можно после удаления загрузить откуда-то только нужную часть). В остальных случаях (в том числе в рамках данной методики) используется DELETE. 

Для того, чтоб удалить данные целостно по ряду связанных таблиц документа (шапка, ТЧ, движения) - сперва я рассматривал вариант честно отобрать данные документа по дате, а потом уже связать с другими таблицами через JOIN. То есть очистить поочередно все связанные таблицы, после чего удалить основную (так как только в ней есть реквизит, по которому решаем удалять объект или нет)

В итоге была выбрана и реализована следующая стратегия

  1. Удаляем движения регистров, которые двигает нужный вид документа, по связке с основной таблицей документа
  2. Удаляем строки табличных частей документа, по связке с основной таблицей документа
  3. Удаляем основную таблицу документа
  4. Очищаем целиком таблицы журналов, где участвует документ (нехорошо, но в нашем случае - не критично, можно и не трогать)
  5. Опционально можно очистить таблицы регистрации изменений для обмена

Таблиц много + названия неудобные + конструктора запросов нет = очень много рутины с высокой вероятностью ошибки и дороговизной ошибок. Поэтому был создан инструмент, берущий большую часть рутины на себя.

Устаревшая стратегия (альтернатива)

Первое решение, от которого я впоследствии отказался. Хотя вначале оно казалось более удобным и простым. А именно - очистить шапку. А потом все связанные таблицы поочередно, у кого нет "пары" в основной таблице (ссылка/регистратор = "битая" ссылка).

Данный вариант не работает для движений документа. Так как после удаления основной таблицы документа - IS NULL даёт истину после соединения таблицы движений регистра и основной таблицы документа в 2х случаях

  1. Когда действительно записи сделаны этим видом документа, и эти документы были удалены (тут всё хорошо)
  2. Когда записи были сделаны документами других видов, и в этом случае записи удаляются ошибочно (так нельзя!). Чтоб решить эту проблему надо связывать таблицу регистра со всеми возможными типами регистраторов, а это слишком сложно

Вобщем порядок был такой (отличия в пунктах 2 и 3)

  1. Удаляем записи регистров, которые двигает нужный вид документа, по связке с основной таблицей документа
  2. Удаляем основную таблицу документа
  3. Удаляем записи табличных частей документа, у которых Ссылка после соединения = IS NULL
  4. Остальное (как в основном варианте, журналы и регистрация изменений)

Но в процессе эксплуатации выяснилось, что удаление по пустой шапке на больших объёмах работает медленно, поэтому по умолчанию от данной стратегии пришлось отказаться (по крайней мере, на нашем примере), но эта опция по-прежнему доступна по соответствующей галочке на первой закладке.

Особенности

  1. Доступна опция порционного удаления.
  2. На данный момент, обработка существует только для обычного приложения.
  3. Обработка сама не подключается в SQL и не запускает скрипт там на выполнение. Только формирует текст скрипта. Считаю, что скопировать-вставить нетрудно, а если нет навыков работы в SQL-студии, то и запускать подобное, возможно, рано.
  4. Исходный код открыт.

Порядок действий 

  1. Делаем архив
  2. Составляем список удаляемых данных (самые большие таблицы, которые удалить стандартными средствами слишком долго / неудобно / не хочется разбираться с тем, что удаляемые данные зарегистрируются к обмену и "пойдут" куда не надо)
  3. Запускаем обработку, при желании сверху ставим отбор
  4. Выделяем в списке нужные виды документов (обязательно выделяем ОСНОВНЫЕ таблицы, то есть таблицы шапок, а не табличных частей)
    Можно сразу несколько с Ctrl-ом (доступно множественное выделение)
  5. Переходим на вторую закладку и выбираем нужный нам вариант удаления (например по дате)
  6. Нажимаем соответствующую кнопку по формированию скрипта
  7. Получаем в окне сообщений готовый скрипт на удаление данных на языке SQL
  8. Копируем в буфер, вставляем в SQL Management Studio
  9. При надобности корректируем. Например через замену (Ctrl+H) можно заменить "<" на ">=", и получится скрипт удаляющий данные документов не до указанной даты, а, наоборот, - начиная с неё. Либо отбор по дате можно заменить на пометку документа на удаления (_Marked = 1). Либо чтоб удалялись только непроведенные (_Posted = 0). 
  10. Запускаем на выполнение, дожидаемся завершения, наблюдаем за статусом на закладке Messages
  11. Проверяем результат в 1С
  12. Обязательно пересчитываем итоги затронутых регистров накопления и бухгалтерии, так как таблицы итогов не обрабатываются

При желании протестировать/посмотреть "что именно будет удаляться" предусмотрена соответствующая опция (галочка справа внизу), в этом случае скрипты будут формироваться с оператором SELECT, а не DELETE. Можно выделить нужный кусок, запустить на исполнение, посмотреть результаты, прежде чем запускать на удаление.

Вместо эпилога

Конструктивную критику, вопросы и пожелания - прошу в комментарии!

Спасибо за прочтение!

Скачать файлы

Наименование Файл Версия Размер
Удаление данных средствами SQL, теория и практика:

.epf 22,45Kb
16.11.18
111
.epf 1.29 22,45Kb 111 Скачать

Специальные предложения

Вознаграждение за ответ
Показать полностью
Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
3. refostart 05.07.18 13:31 Сейчас в теме
Обработка просто огонь, удобно делать тестовые копии с урезанными данными!
Полезна для изучения структуры таблиц в SQL

1. Удобно было бы из ОСНОВНЫЕ таблицы заложить в фильтр (решается сортировкой нужной колонки)
2. Вывод сообщений скрипта в SQL немного не удобен, особенно при обработке большого количества документов
3. Сдвиг дат

Иногда проскальзывает сообщение 'Недопустимое имя столбца "_Period"'
Похоже в скрипте

PRINT 'Начинаю очистку регистра: РегистрСведений.СостоянияОСОрганизаций.Основная	' +CAST(GETDATE() as varchar);
DELETE	FROM SubData
	FROM _InfoRg12237 SubData
 	INNER JOIN _Document188 MainData
ON SubData._RecorderRRef = MainData._IDRRef
WHERE _Period < @date_trim;
4. METAL 115 11.07.18 16:10 Сейчас в теме
(3) Спасибо большое, комментарии приняты, постараюсь реализовать/поправить, но из-за нехватки времени сроки обещать не могу.
По 1 - есть некое решение уже, сам столкнулся, доведу чуть до ума, поделюсь
2. Сейчас есть неудобство, когда начинает чистить какую-то таблицу - сообщает о начале вместе с сообщением о завершении. Не знаю с чем связано, но постараюсь решить. Если есть предложения - внимательно слушаю.
3. Не понял честно говоря, о чём речь
4. 'Недопустимое имя столбца "_Period"' - Да, тоже замечал, такое бывает когда идёт попытка очистить регистр, у которого регистратором является выбранный документ, но регистр непериодический. В этом случае регистр не очищается. Посчитал нестрашным для наших задач, поэтому пока не успел поправить.
6. METAL 115 27.07.18 16:48 Сейчас в теме
(3)
1. Удобно было бы из ОСНОВНЫЕ таблицы заложить в фильтр (решается сортировкой нужной колонки)
2. Вывод сообщений скрипта в SQL немного не удобен, особенно при обработке большого количества документов

Улучшено в новой версии
5. METAL 115 27.07.18 12:32 Сейчас в теме
UPD Обновлена версия обработки. Бета.
[*] Редизайн интерфейса, повышение юзабилити.
[+] Добавлена возможность целостного удаления документов на отдельной закладке
[+] Частично реализована опция порционного удаления. Порциями удаляются данные при выборе произвольной таблицы, а также при целостном удалении документов - основная таблица документа. Продолжение следует.
[*] Рефакторинг системы вывода сообщений. Теперь сообщения выводятся мгновенно, и выглядит всё более коротко и информативно
7. METAL 115 03.08.18 10:53 Сейчас в теме
[↑] Доделано и протестировано порционное удаление
8. METAL 115 16.11.18 16:19 Сейчас в теме
Иногда проскальзывает сообщение 'Недопустимое имя столбца "_Period"'

[fix] Исправлено
9. AlexeyT1978 96 28.01.19 10:18 Сейчас в теме
Ух, крутая штука, скоро пригодится!
10. AlexeyT1978 96 29.01.19 11:43 Сейчас в теме
Вчера пользовался, работает корректно, но остаются ссылки в "присоединенных файлах". Наверное, вручную буду удалять.
11. METAL 115 29.01.19 15:50 Сейчас в теме
(10) Спасибо за обратную связь!
Ссылки в "присоединённых файлах" (то есть ссылки на удаляемые произвольные документы в произвольных справочниках) как почистить на уровне SQL в процессе свёртки базы - пока не вижу вариантов... Видимо да, проще на уровне 1С сделать
12. METAL 115 01.02.19 16:00 Сейчас в теме
[+] Добавлена возможность удалить все записи выбранных регистров накопления ДО определённой даты
13. METAL 115 01.02.19 16:43 Сейчас в теме
После свертки очередной базы выяснилась одна особенность-недоработка. Стали сверять остатки после свертки на свёрнутой базе и оригинальном исходнике. Обнаружили расхождения - движения документов без регистратора.
Чтоб удалить их был добавлен новый функционал в обработку, а именно удобное удаление движений регистров накопления без привязки к документам до определённой даты
Прикрепленные файлы:
14. METAL 115 04.02.19 14:48 Сейчас в теме
Свёртка - дело хорошее. Но как убедиться, что остатки свёрнутой базы совпадают с оригинальной базой? Отдельная интересная задачка.
Можно выгрузить в табличный документ и сравнить через "Сравнить файлы", но хотелось сделать что-то удобней, быстрее и надёжней.
Есть методика, когда обрезанная база подключается через универсальный веб-сервис в оригинальную базу, выполняет произвольный запрос (чтоб получить "оригинальные" остатки до обрезки) и сверяет другим запросом со свернутой базой. См. скрины.
Если кому-то интересно - ставьте лайки, пишите что-нибудь. при наличии спроса и времени - сделаю чтоб запускалось на произвольной конфигурации и опубликую!
Спасибо.
Прикрепленные файлы:
AntonH851; IvanPoh; 2PRV; +3 Ответить
16. 2PRV 7 19.02.19 12:14 Сейчас в теме
(14)
база подключается через универсальный веб-сервис

Было бы интересно посмотреть на такую обработку.
обрезанная база подключается через универсальный веб-сервис
, а не проще com-соединением получить остатки из базы?
17. METAL 115 19.02.19 13:04 Сейчас в теме
(16) COM - хорошо, но очень он требовательный. Если базы для сравнения на разных серверах и не очень толстым каналом, COM, к сожалению - не вариант.
ОК, принято, обязательно оформлю через какое-то время! Наверное уже в марте. Если срочно - напишите в личку пожалуйста
15. IvanPoh 15 14.02.19 12:30 Сейчас в теме
Было бы круто добавлять произвольные отборы на документы
18. NIC001 10 21.02.19 14:13 Сейчас в теме
Добрый день.
Извините, не увидел, а с БП 3.0 как отработает Ваша обработка?
19. METAL 115 22.02.19 03:15 Сейчас в теме
(18) Здравствуйте! Думаю, что точно так же, как и на любой другой конфигурации. Но непременно в режиме обычного приложения её придётся запускать для получения скрипта. Если возникнут проблемы - пожалуйста, пишите, готов попробовать доработать в марте.
20. NIC001 10 22.02.19 16:30 Сейчас в теме
Добрый день.
В марте не актуально.
Спасибо.
Попробовали.
При запуске в режиме 8.2 отработало штатно.
За это отдельно спасибо.
Удаление объектов на нашей базе (100 ГБ на SQL) прошло ровно и заняло чуть более 2-х часов.
А вот ТиИ длится уже 12 часов к ряду...
Пока "рубит" версии объектов.
Как долго будет продолжаться? Не знаю.
Посоветуете что-нибудь?
21. NIC001 10 23.02.19 11:12 Сейчас в теме
(20) Всем добрый день.
...
Судя по всему, удаление версий объектов будет идти около 20 дней.
За сутки прошло 5%.
Увы.
Без решения этого момента выигрыш от обработки полностью теряется.
На сегодня отработала штатная свёртка.
Жаль.
Первые впечатления были более позитивные.
к сожалению, в том виде и с теми комментариями (инструкциями/объяснениями) как есть, использовать обработку бесполезно.
23. METAL 115 24.02.19 00:05 Сейчас в теме
(21) Почему выигрыш теряется? Иными словами, что делаете? Какова цель операции? Чего достичь хочется? Уменьшить размер базы удалением ненужных данных, основная часть которых находится в «версиях..»? Или...?
22. METAL 115 24.02.19 00:01 Сейчас в теме
(20) Спасибо за отзыв!
А что значит «версии объектов»? Регистр сведений, откуда хочется убрать битые ссылки на документы? Или...?
24. NIC001 10 25.02.19 09:19 Сейчас в теме
Добрый день.
Отвечу по пунктам.
1. Почему выигрыш теряется?
Идея была в сокращении времени на удаление объектов после штатной свёртки баз.
Этого не произошло, т.к, используя штатную свёртку удалось закончить много раньше.
2. А что значит «версии объектов»?
Согласно рекомендаций, после удаления информации на дату, требуется провести ТиИ.
Это нормально.
Но то, что за трое суток прошло только 5 % от проверки логической целостности версий объектов в регистре сведений, это не нормально.
У меня за 40 часов отработала штатная свёртка.
Отсюда понимаю, либо что-то не доработано в обработке, либо что-то не досказано в описании.
Прикрепленные файлы:
25. METAL 115 26.02.19 14:06 Сейчас в теме
(24)
На вашем месте я бы пробовал выгрузить нужные версии до свёртки (например в XML).
Потом сворачивал базу, удалял данные (регистры, документы).
Потом удалял бы таблицу версий целиком.
А потом бы загружал из файла нужные версии.
А так - получилось, что сами объекты удалены, а версии - остались.
Хотя всё равно конечно странно, почему ТиИ идёт так долго.
Возможно, оборудование не справляется.
26. METAL 115 26.02.19 14:11 Сейчас в теме
(24)
Отсюда понимаю, либо что-то не доработано в обработке, либо что-то не досказано в описании.

Обработка не удаляет наборы записей регистров, не подчинённых регистратору (в режиме удаления документов с движениями и ТЧ). Я надеялся, что это понятно из интерфейса
Прикрепленные файлы:
27. NIC001 10 27.02.19 09:22 Сейчас в теме
Добрый день всем.
После серии проб и ошибок...
***
Ситуация: база БП КОРП 100 Гб. на SQL.
По совокупности причин, приняли решение обрезать на 01/01/2019г.
С помощью стандартной свёртки от 1С рассчитали остатки и создали операции ввода начальных остатков.
Типовое удаление старых документов прервали, ибо бессовестно долго и нет гарантированного результата.
Время: 1,5 часа.
С помощью данной обработки полностью очистили версии объектов.
Время: 30 минут.
После этого, с помощью данной обработки, удалили документы до даты.
Заняло 70 минут.
После этого пересчитали итоги.
Заняло ~1,5 часа.
Нашли ~ 20 "потерянных" записей и отработали их вручную.
База работает штатно, весит 25 Гб.
***
Спасибо.
28. METAL 115 27.02.19 14:24 Сейчас в теме
(27) Очень рад, Александр! Спасибо за отзыв!
29. titanium2008 15 05.10.19 12:56 Сейчас в теме
Добрый день, а по организации умеет удалять?
30. METAL 115 05.10.19 13:33 Сейчас в теме
(29) Нет.
Можете попробовать вот эту разработку https://infostart.ru/public/731455/
31. AKV77 248 15.11.19 09:42 Сейчас в теме
Здравствуйте ! Обработка очень удобна, Спасибо. Есть замечания:
При тестировании сначала сделал выборку данных Sel ect используя удаление порциями... скрипт отрабатывает с ошибкой.
Для исправления немного изменил процедуру:

Процедура ОбработатьСкрипт_ЗаменитьУдалениеНаЧтение(ТекстСкрипта)
	
	Если ПисатьСкриптНаЧтение Тогда
		//ТекстСкрипта = СтрЗаменить(ТекстСкрипта, "DELETE", "SELECT * ");
		Если УдалятьПорциями Тогда
			ТекстСкрипта = СтрЗаменить(ТекстСкрипта, "DELETE TOP(@PortionSize)", "SELECT TOP(@PortionSize) * ");
		Иначе
			ТекстСкрипта = СтрЗаменить(ТекстСкрипта, "DELETE", "SELECT * ");
		КонецЕсли;	
		ТекстСкрипта = СтрЗаменить(ТекстСкрипта, "FR OM SubData", "");
	КонецЕсли; 
	
	// ну и покажем наконец-то
	Сообщить(ТекстСкрипта);

КонецПроцедуры
Показать
32. METAL 115 22.11.19 16:00 Сейчас в теме
(31) Шикарно, исправил, благодарю, коллега!
33. AlexeyIsip 10 10.03.20 02:37 Сейчас в теме
Предлагаю обмен https://infostart.ru/public/1178808/ у меня удаляются только движения, документы помечатся на удаление, у тебя нет отбора и запуска из-под 1с средствами ADO. Если согласен, то моя почта alex_isip@mail.ru
Оставьте свое сообщение

См. также

Очистка регистрации обмена Промо

Чистка базы v8 v8::ОУ УТ10 Абонемент ($m)

Данная обработка предназначена для очистки узла. Для очистки необходимо указать период,организацию.

1 стартмани

19.09.2017    15675    5    serg-lom89    0    

Свертка базы и очистка таблиц

Свертка базы Чистка базы v8 1cv8.cf Россия Абонемент ($m)

Обработка написана с использованием БСП. Встраивается как внешняя. Работает в фоне. Позволяет средствами SQL очищать выборочно таблицы с настройками, заданными привычным образом через отбор СКД.

5 стартмани

05.03.2020    2615    9    YAGolova    5    

Удаление движений документов

Чистка базы Обработка документов v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка для удаления движений документов, управляемые формы.

2 стартмани

23.01.2020    2260    6    wowik    4    

Свертка БД 1С: обрезка до выбранной даты средствами MS SQL

Свертка базы Чистка базы v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Внешняя обработка, позволяющая произвести анализ размера БД и грубую обрезку данных до выбранной даты средствами MS SQL. Управляемые формы, 1С:Предприятие 8.3 (8.3.9.1818).

1 стартмани

15.11.2019    10070    116    dmitrydemenew    32    

Очистка кэша 1С 8 (8.0, 8.1, 8.2, 8.3). Грамотная чистка кэша 1С с сохранением настроек. Промо

Чистка базы Сервисные утилиты Администрирование данных 1С v8 1cv8.cf Россия Абонемент ($m)

Эффективное средство для устранения ошибок, возникающих в локальном кэше 1С на клиенте, которым легко сможет воспользоваться пользователь с любым уровнем знаний. Wsf-скрипт, созданный на стандартном языке автоматизации Windows - "WSH JScript", очищает кэш 1С просто, быстро и безопасно. Кроме варианта, очищающего кэш текущего пользователя, имеется также вариант для чистки кэша 1С всех пользователей терминального-сервера.

1 стартмани

04.11.2018    33706    358    Eugen-S    34    

Универсальное удаление движений регистров накопления по всем непроведенным документам

Универсальные функции Чистка базы v8 1cv8.cf Абонемент ($m)

Попалась база КА 2.4 с движениями по регистрам, у которых регистратор был непроведен или помечен на удаление. Написал небольшую обработку по удалению таких записей из регистров.

1 стартмани

27.09.2019    7205    9    John_d    15    

Очистка базы данных 1С от данных по организациям прямыми SQL-запросами к СУБД

Чистка базы v8 1cv8.cf Абонемент ($m)

Работа с помощью прямых запросов в случае, когда нельзя, но очень необходимо.

10 стартмани

20.09.2019    9946    48    nomad_irk    54    

Быстрое удаление данных по организации, используя ADO

Чистка базы v8 1cv8.cf Абонемент ($m)

Время от времени возникают вопросы на форуме Инфостарта по сабжу. Данная обработка решает данную задачу.

1 стартмани

12.08.2019    5223    33    Fox-trot    26    

Удаление помеченных объектов, замена ссылок. Обычное и управляемое приложение. Не монопольно, включая рекурсивные ссылки, с отбором по метаданным и произвольным запросом Промо

Чистка базы v8 1cv8.cf Абонемент ($m)

Обработка удаления помеченных объектов с расширенным функционалом. Работает в обычном и управляемом приложении. Монопольный и разделенный режим работы. Отображение и отбор по структуре метаданных. Отборы данных произвольными запросами. Копирование и сохранение отборов. Удаление циклических ссылок (рекурсия). Представление циклических в виде дерева с отображением ключевых ссылок, не позволяющих удалить текущий объект информационной базы. Удаление записей связанных независимых регистров сведений. Групповая замена ссылок. Индикатор прогресса при поиске и контроле ссылочности.

10 стартмани

31.10.2016    48117    566    m..adm    206    

Универсальное удаление выбранного объекта 8.2 - 8.3 на управляемых формах

Чистка базы v8 v8::УФ 1cv8.cf Абонемент ($m)

Данная обработка просто хороший, удобный удалитель выбранного объекта через "ОбменДанными" с кучей дополнительных возможностей. Выгода использования данной обработки особенно ярко проявляет себя, когда у вас стоит подписка на события или другой код препятствующий удалению, но вам абсолютно необходимо удалить данный объект ввиду возможности его случайного использования. И вам нет необходимости выходить из режима 1С:Предприятия, входить в конфигуратор, менять отлаженный код блокировок и подписок на события. Таким образом осуществляется "горячее" удаление объекта.

1 стартмани

17.06.2019    4712    18    AlexandrSmith    0    

Поиск и чистка битых ссылок в регистрах сведений и накоплений 8.3

Чистка базы Поиск данных v8 1cv8.cf Абонемент ($m)

Данная обработка позволяет чистить устаревшие битые записи в регистрах сведений и накоплений. Я не затрагиваю в ней регистр бухгалтерии, так как там удаление любой записи может быть критичным для баланса. Бухгалтеры иногда готовы терпеть любые ссылки на удаленные раннее из базы объекты, лишь бы баланс сходился, даже если битая ссылка не может пролить свет на её происхождение.

1 стартмани

04.05.2019    4969    36    AlexandrSmith    2    

Удаление неиспользуемых элементов справочников в БП 3.0, УНФ 1.6, Розница 2.2, УТ 11.4, КА 2.4, 1С ERP 2.4

Обработка справочников Чистка базы v8 Розница УНФ БП3.0 Россия Абонемент ($m)

Данная обработка предназначена для удаления неиспользуемых элементов справочников в конфигурациях "1С: Бухгалтерия предприятия 3.0", "1С: Управление нашей фирмой 1.6", "1С: Розница 2.2", "1С: Управление торговлей 11.4", "1С: Комплексная автоматизация 2.4", "1С: ERP Управление предприятием 2.4"

1 стартмани

15.03.2019    6318    68    BurlakovIvan    0    

Обнуление остатков регистров бухгалтерии и накопления Промо

Универсальные обработки Чистка базы v8 v8::БУ v8::ОУ v8::УФ КА1 БП2.0 ЗУП2.5 УТ10 УПП1 УНФ БГУ ERP2 БП3.0 УТ11 УХ КА2 ЗУП3.x Россия Абонемент ($m)

Обработка позволяет обнулить остатки по регистру накопления или бухгалтерии на определенную дату. Поддерживается большинство типовых конфигураций (БП 3, БП 2, УТ 11, УТ 10, ЗУП 3, ЗУП 2, БГУ 2, БГУ 1, ERP, УПП, КА 2, КА 1, УХ 3, УХ 1, УНФ). Гибкая настройка (отборы, заполнение реквизитов и любых полей корр. счета, возможность обнулять ресурсы выборочно). Несколько режимов работы. Два интерфейса: простой и с расширенным набором настроек.

2 стартмани

19.11.2018    19858    258    morozov.sv    34    

Восстановление настроек плана счетов и очистка некорректных рабочих счетов в БГУ 1.0

Универсальные обработки Чистка базы v8 v8::БУ БГУ Россия БУ Госбюджет Абонемент ($m)

В плане счетов в БГУ 1.0 есть возможность восстановить настройки по умолчанию. Но при наличии некорректных рабочих счетов, восстановление настроек не выполняется. При этом даже нет информации, в каком именно счете проблема. Данная обработка находит некорректные рабочие счета и удаляет их.

1 стартмани

04.03.2019    15003    192    Sashares    36    

Очистка замеров производительности - даешь больше места на диске (= меньше хлама в базе)

Чистка базы v8 Розница УНФ БП3.0 УТ11 ЗУП3.x Абонемент ($m)

Вы могли и не знать, но у Вас в базе может быть несколько сотен тысяч записей о производительности системы. А появились они там благодаря встроенной в БСП подсистеме "Оценка производительности". И думаю что далеко не каждый из Вас реально собирается оценивать производительность своей системы. Специально для тех кто, как и я считает, что ему абсолютно не нужны все эти записи в базах и была создана эта обработка.

1 стартмани

31.10.2018    14648    161    1c.pro.fun    13    

Перенос организации в отдельную базу, полная очистка базы от данных организации (версия от 25.07.2019)

Универсальные обработки Чистка базы v8 1cv8.cf Абонемент ($m)

Данная обработка позволяет удалить организацию и все связанные с ней данные – документы, элементы справочников, записи регистров сведений. Обработка полезна для выделения организации в отдельную базу. Доработано для ЗУП 3.1.

3 стартмани

14.08.2018    13761    267    serge_msk    39    

Очистка периодических регистров посредством T-SQL (удаление записей, кроме среза последних) Промо

Чистка базы v8 Абонемент ($m)

Обработка для ленивых. Составит вместо Вас запрос для SQL, который удалит все не актуальные записи (т.е все, кроме среза последних)

5 стартмани

22.06.2018    14550    19    Alexander.Shvets    9    

Удаление движений непроведенных документов. УФ.

Закрытие периода Чистка базы v8 v8::УФ ERP2 УТ11 КА2 Абонемент ($m)

Обработка помогает в закрытии отчетных периодов в программах 1С.

3 стартмани

02.07.2018    9414    67    PSMNN    1    

Регламентное задание: Очистка регистра сведений "Версии объектов"

Свертка базы Чистка базы v8 УПП1 Россия Абонемент ($m)

У каждого была проблема «растущего» регистра "Версии объектов". Мы дорастили просто до чудовищных размеров(20 мил.) почистить обработкой очень трудоемко, плюс баз у нас много. Решили написать  регламентное задание.

1 стартмани

28.06.2018    9079    8    abadonna83    7    

Помощник удаления и очистки объектов

Чистка базы v8 Розница УНФ БП3.0 УТ11 КА2 Абонемент ($m)

При удалении помеченных не всегда понятно, почему не удаляется например элемент справочника. Написано, что на него ссылается какой-то документ. Заходим в этот документ - и не понятно, где именно смотреть этот элемент, и как его почистить. Особенно, если это какой-то полуслужебный элемент типа "ключ аналитики". Данное расширение выводит информацию, где именно в документе или в движениях этого документа содержится ссылка на удаляемый объект. Второе расширение помогает удалять дополнительные реквизиты объектов, а именно убирает этот дополнительный реквизит из всех объектов, где он прописан в табличной части "Дополнительные реквизиты".

2 стартмани

04.06.2018    11636    72    Kutuzov    12    

Корректировка остатков регистров накопления (обычные и управляемые формы) Промо

Закрытие периода Свертка базы Чистка базы Универсальные обработки v8 v8::УФ 1cv8.cf Абонемент ($m)

Внешняя обработка, предназначенная для удобного и быстрого исправления остатков регистров накопления (посредством автоматического ввода документов "Корректировки записей регистров", "Операция", содержащих движения, приводящие существующие остатки к желаемым). Позволяет корректировать и обнулять по аналитике и суммам остатки регистров учета товаров, партий, взаиморасчетов, налогового учета по НДС, РАУЗ, и др.

2 стартмани

14.01.2012    74395    575    stvorl    76    

Удаление справочников и документов без проверки ссылочной целостности

Чистка базы Обработка документов Обработка справочников v8 1cv8.cf Россия Абонемент ($m)

Обработка предназначена для удаления без проверки ссылочной целостности.

1 стартмани

14.03.2018    9623    65    SPARTANIC    15    

Быстрое удаление помеченных на удаление документов прямыми SQL запросами (MS SQL)

Чистка базы v8 1cv8.cf Россия Абонемент ($m)

Быстрое удаление помеченных на удаление документов прямыми SQL запросами (MS SQL) с возможностью выбора вида документа и даты по.

1 стартмани

16.02.2018    11701    94    bubnov    16    

Очистка базы данных от данных по организации

Чистка базы v8 1cv8.cf Абонемент ($m)

Обработка генерирует SQL-скрипт, который очищает базу данных от документов выбранной организации. Проверялась на конфигурации Управление производственным предприятием на платформе 8.3. Но в принципе универсальная для стандартных конфигураций на платформе 8.3.

1 стартмани

23.01.2018    16339    107    mugr    26    

Очистка регистров накопления, сведений, расчета или бухгалтерии Промо

Сервисные утилиты Чистка базы Свертка базы v8 1cv8.cf Абонемент ($m)

Очистка регистров накопления, сведений, расчета или бухгалтерии (обычная и управляемая форма)

2 стартмани

25.12.2009    59273    256    sebe    20    

Удалить "ненужную организацию" в БП 3.0 (+ доп.обработка для УТ 11.4, УПП ERP 2.4, ЗУП 3.1, КА 2.4, Розница 2.2, УНФ 1.6)

Чистка базы v8 v8::УФ Розница УНФ ERP2 БП3.0 КА2 ЗУП3.x Абонемент ($m)

Обработка, способная удалить все данные по выбранной организации из конфигурации Бухгалтерия предприятия 3.0. (+ обработка "Универсал" для УТ 11.4, УПП ERP 2.4, ЗУП 3.1, КА 2.4, Розница 2.2, УНФ 1.6)

1 стартмани

06.11.2017    30074    767    Ant10    0    

Удаление данных напрямую в SQL

Сервисные утилиты Чистка базы v8 v8::СКД 1cv8.cf Абонемент ($m)

Порой так и хочется грохнуть что нить в скуле, но наталкиваешься на отсутствие понятных и функциональный инструментов. Вроде как что то и есть, но явно писанное для каких то конкретных простых целей. И так очередное творение в данной тематике. Особенности: удаление порциями, отображение готового текста запроса, отбор данных с помощью СКД (в отборе учитываются составные типы и обращения через точку).

1 стартмани

08.07.2017    14061    91    denacid    29    

Создание первоначального образа с файлами РИБ или быстрая очистка базы от документов и движений по регистрам

Свертка базы Распределенная БД (УРИБ, УРБД) Чистка базы v8 Розница Абонемент ($m)

В «большой» базе штатными средствами создать первоначальный образ узла не получается по причине «недостатка памяти на сервере»? А способы, описанные в статье https://its.1c.ru/db/metod8dev/content/2277/hdoc не подходят? ИЛИ Удаление всех документов или свёртка базы занимает продолжительное время?

1 стартмани

06.06.2017    19996    47    Dima_    7    

Удаление организаций из базы Промо

Чистка базы v8 БП2.0 ЗУП2.5 Абонемент ($m)

У меня возникала потребность в удалении организаций и их следов из базы. Стандартными средствами этого не сделать. Кому необходимо сделать то же самое, это отличный вариант. Обработка проста и эффективна.

1 стартмани

19.06.2013    17358    52    IceEvgen    11    

Просмотр и очистка регистра сведений (управляемые формы)

Универсальные обработки Чистка базы v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Обработка предназначена для очистки регистров сведений (как независимых, так и подчиненных регистратору), работает под управляемыми формами. Реализован предварительный просмотр удаляемых данных.

1 стартмани

09.05.2017    16157    292    stone_evil    21    

Сжатие регистра "Версии объектов"

Чистка базы v8 КА1 УПП1 Россия Абонемент ($m)

Обработка позволяет выполнить 3 операции: 1. удалить одинаковые записи регистра версии объектов, оставляя первую запись, отличную от предыдущей версии; 2. удалить все данные по объекту до указанной даты; 3. удалить все данные по объекту, оставив последние

1 стартмани

27.02.2017    10744    34    mike_pol    6    

Что мешает удалению объектов?

Сервисные утилиты Чистка базы v8 1cv8.cf Абонемент ($m)

Обработка, позволяющая просмотреть цепочки объектов (как ссылочных, так и регистров), препятствующих удалению помеченных на удаление объектов. Платформа 8.3, обычные формы, управляемые формы, интерфейс такси, возможность работы в Web.

1 стартмани

20.12.2016    16535    115    Alxby    17    

Универсальный редактор реквизитов объектов. Мультиобработчик Промо

Универсальные обработки Чистка базы Обработка документов Практика программирования Обработка справочников Сервисные утилиты v8 1cv8.cf Абонемент ($m)

Объекты: Справочник, Документ, ПланОбмена, ПВХ, Бизнес-процесс, Задача, ПланСчетов, ПВР. Мультиобработчик: -Проведение, перенумерация, движения, копирование, создание на основании, подчиненность, статистика, удаление документов. -Регистрация изменений объекта(ов) в планах обмена. -Установка/Отключение ГлавногоУзла РИБ. -Поиск и восстановление "Битых" ссылок. -Недопустимые символы XML/Дерево XML. -Поиск и замена ссылок. -Ошибки ИБ, в т.ч XML. -Множество обработок справочников. -GUID. Дата и время создания объектов ссылочного типа. -Аналитика предопределенных, блокируемых реквизитов, ХранилищаЗначений. -История изменений объекта. -Активные пользователи. -Подписки на события, функциональные опции. -Загрузка пользователей ИБ из Windows, Active Directory. -Выгрузка/Загрузка пользователей ИБ в/из внешний XML-файл. -Поддержка различных режимов модальности. Файловый, Клиент-Серверный варианты. Обычная и Управляемая формы.

1 стартмани

28.12.2011    164239    2247    StepByStep    418    

Задвоились предопределенные элементы справочников? Выход есть!

Обработка справочников Чистка базы v8 1cv8.cf Абонемент ($m)

Дублирование предопределенных элементов справочников может произойти как по причине того, что при обмене данными в режиме загрузки уникальность предопределенного элемента в пределах области информационной базы не проверяется, так и при объединении/обновлении конфигураций. При попытке переименовать, или, например, пометить на удаление 1С показывает сообщение «Предопределенный элемент не уникален». В этой статье мы напишем обработку, которая позволит избавиться от дублей предопределенных элементов справочника.

1 стартмани

02.11.2016    20002    93    Luchik    8    

Удаление организации из ЗУП 2.5 (2.5.110.1)

Чистка базы Зарплата Управление персоналом (HRM) Зарплата Управление персоналом (HRM) v8 v8::СПР ЗУП2.5 Россия БУ Абонемент ($m)

Внешняя обработка для удаления организаций из ЗУП 2.5 (2.5.110.1)

4 стартмани

30.10.2016    17349    128    victor_k    3    

Удаление неиспользуемых элементов справочника (простые и управляемые формы)

Обработка справочников Чистка базы v8 1cv8.cf Абонемент ($m)

Обработка предназначена для удаления неиспользуемых элементов выбранного Вами справочника. Обработка конфигурационно-независима. UPD. Расширены возможности обработки

3 стартмани

02.08.2016    15702    75    roma_semenov79    6    

Многопоточное удаление объектов Промо

Чистка базы v8 1cv8.cf Абонемент ($m)

Обработка предназначена для ускорения процедуры удаления объектов

2 стартмани

02.06.2016    23989    53    zzz_natali    20    

Удаление документов по организациям для 1С:Бухгалтерия Предприятия 3.0 и 2.0 (управляемые и простые формы)

Чистка базы v8 v8::БУ БП2.0 БП3.0 Россия Абонемент ($m)

Обработка удаляет документы по выбранной организации, либо по всем, кроме выбранной. UPD. Добавлена обработка для управляемых форм с возможностью подбора организаций в список. Условия остаются теми же - удалить по организациям из списка, или по всем, кроме подобранных в списке.

3 стартмани

31.07.2016    26799    340    Krasnyj    52    

Ошибка "Записи регистра сведений стали неуникальными"

Чистка базы v8 1cv8.cf Абонемент ($m)

При обновлении конфигурации периодически может возникать ошибка "Записи регистра сведений стали неуникальными" или "Имеются записи с одинаковыми измерениями". Что она означает и как ее исправить.

1 стартмани

21.07.2016    73399    813    ekaruk    40    

Разделение базы Бухгалтерии 3.0 по организациям на отдельные базы

Чистка базы v8 v8::БУ БП3.0 БУ Абонемент ($m)

Было несколько организаций в одной базе Бухгалтерии 3.0, а точнее их было 4 штуки И вот на одном из очередных собраний руководства было решено разделить на отдельные базы, так как могут быть проверки В итоге написана небольшая обработка по разделению базы бухгалтерии 3.0 по организациям

2 стартмани

23.05.2016    22620    119    NNNN    12    

Удаление помеченных объектов с отбором по метаданным Промо

Чистка базы v8 1cv8.cf Абонемент ($m)

Это доработанная обработка с отбором по метаданным. По итогу общее время в сравнении со стандартной обработкой сокращено, если необходимо очистить только несколько типов документов/справочников.

1 стартмани

06.04.2016    23111    127    endym    7    

Решение проблемы с синхронизацией между УТ 11 и БП 3.0 через регистр публичных идентификаторов

Чистка базы Перенос данных из 1C8 в 1C8 v8 БП3.0 УТ11 Абонемент ($m)

Данная обработка решает проблему, которая часто возникает при обмене между Управлением торговлей 11 и Бухгалтерией предприятия 3.0, когда в регистре сведений " ПубличныеИдентификаторыСинхронизируемыхОбъектов" есть дубли ссылок или уникальных идентификаторов данных, из-за которых обмен либо вообще не проходит, либо проходит, но нет информации об успехе. Подходит как для УТ 11, так и для БП 3.0

1 стартмани

29.04.2016    18002    62    hakerxp    3    

Зачистка ссылок на документы после свертки. 1С:Бухгалтерия 3.0

Свертка базы Чистка базы Обработка документов Дебиторская и кредиторская задолженность Учет ТМЦ Дебиторская и кредиторская задолженность Учет ТМЦ v8 БП2.0 Россия БУ Абонемент ($m)

После стандартной свертки не удаляются документы из базы? Вы уже заметили, что они абсолютно во всех операциях по вводу начальных остатков? Эта обработка поможет решить вопрос!!! Все документы расчетов в виде старых документов будут заменены на новый документ расчетов, и Вы сможете избавиться от ненужных старых документов!

2 стартмани

05.04.2016    19656    72    katerinaUniv    8    

Чистка регистров накопления {остатки и обороты} по закрытым движениям (обычные формы) Промо

Чистка базы v8 1cv8.cf Абонемент ($m)

Обработка предназначена помочь очистить регистры накопления от ненужных записей. Иначе говоря, для удаления строк по измерениям регистра накопления, остатки по которым закрылись в 0.

1 стартмани

22.02.2016    26526    43    endym    14    

Удаление организации из 1С. Чистка базы 1С. Удаление "не удаляемых" объектов Промо

Чистка базы v8 1cv8.cf Абонемент ($m)

Удалить все документы, чтобы в базе осталась только одна организация со своими документами? Удалить всю информацию в регистрах, не связанную с указанной фирмой? Удалить "неудаляемую" номенклатуру? Легко! Используйте эту обработку.

10 стартмани

02.10.2015    51092    309    spy-83    84