Как удалить большое количество документов в 1С 8.2 – 8.3

Решение проблемы, при удалении очень большого количества документов.  (250 000) штук!

Когда SQl  «выжрал» всю память и свободное  место на диске?

Иногда возникает ситуация, когда нужно удалить большое количество документов (например, 250 000!).

И как вы не стараетесь, сервер  SQL   «съедает»  
сперва всю оперативную память, а затем и все место на диске (например, диске С:).

Если у вас возникали подобные ситуации, то вот способ, который поможет вам с этой проблемой. 

  
Решается запуском VBS скрипта.
Что он делает, создает подключение через COM к информационной базе, (клиент серверный вариант работы), запускает внешнюю обработку и вызывает экспортную процедуру.

При этом вам не надо запускать 1С – ку ! 

Обработка (модуль объекта): 
Чтоб сделать экспортную процедуру код пишем в модуле объекта обработки.

 

Процедура run() Экспорт

ДЛя НН = 1 По Метаданные.Документы.Количество() Цикл
                ИмяДок = Метаданные.Документы.Получить(НН-1).Имя;  
                Запрос = НОвый Запрос;
                               Запрос.Текст =  "ВЫБРАТЬ
                               |Док.Ссылка КАК Док_
                               |ИЗ Документ." + ИмяДок + " КАК Док";
                               Выборка = Запрос.Выполнить().Выбрать();
                               Пока Выборка.Следующий() Цикл
                                               ДокОБ = Выборка.Док_.ПолучитьОБъект();
                                               ДокОБ.Удалить();
                               КонецЦикла;  
                КонецЦикла; 
КонецПроцедуры

 

————————————————————————————————-

VBS Скрипт:

Set v82 = CreateObject("V82.Application")

res = v82.Connect("Srvr = IPАДРЕСС;Ref=ИМЯБАЗЫ;Usr=ПОЛЬЗОВАТЕЛЬ;Pwd=ПАРОЛЬ")

set obr = v82.ExternalDataProcessors.Create("d:\temp\del_doc.epf")

obr.run()

v82=null

obr=null

 

————————————————————————————————-

Во второй строке укажите свои параметры подключения к ИБ.



Есть вопросы? пишите в группу Telegram!

Сканируйте и присоединяйтесь к сообществу!

7 дней лекций – Бесплатно!

о том как правильно администрировать 1С