Почему 1С не удаляет помеченные объекты

Тот, кто работает с программными продуктами 1С, знает, что удалить объект просто так в любой программе 1С заветной кнопочкой Delete не получится. Объекты сначала помечаются на удаление, а потом удаляются. Сделано это из соображений безопасности. Битые ссылки обрушивают систему.

Представьте себе, что одним неверным нажатием можно будет снести какую-то важную бумаженцию, которая включена в отчётный период у Бухгалтерии 1С или что-то формируется, используя контрольные цифры из документа, который мы пытаемся удалить. Отчёт получится бесполезным, а расчетные параметры могут поплыть. Кроме того, нарушится и логика работы программы. Система будет искать значение там, где его уже нет. Это чревато зависаниями и прочими сопутствующими проблемами. Поэтому, в программах 1С реализован специальный механизм – пометить на удаление. Это безопасный способ избавления от записей в базе данных.

Screenshot_342.png

И вроде бы это логично и понятно. Заходим в стандартный диалог и вроде как всё.

Screenshot_344.png

Но случаются такие моменты, когда и встроенный механизм удаления через функцию “пометить на удаление”, выдает ошибку. Вы пытаетесь очистить список документов, но 1С не удаляет помеченные объекты и ругается страшными словами. 

Screenshot_343.png

Давайте попробуем справиться с этой проблемой. Для начала разберемся почему 1С не удаляет помеченные объекты. В общем-то, проблема уже описана чуть выше. Если такое случилось, то скорее всего, вы пытаетесь удалить какой-то связанный документ. Или, что хуже, произошел системный сбой и нужно будет просить помощь у программистов. Можете обратиться к нам.

 


1231312317.png    Мы всегда на связи!

    

     

По России: 8 (800) 600-32-31

По Москве: +7 (495) 139-09-60


В общем-то, теоретически оно всё просто. 1С-ка лочит эту операцию, потому что какая-то часть на него ссылается. Значит, нужно просто удалить все ссылки из документов на удаляемый объект или удалить сами объекты, содержащие ссылки. Выглядит всё довольно просто и понятно. Система подскажет вам где проблема.

Screenshot_346.png

Но как теперь всё поменять разом. Никто не помнит где и какие документы создавались, а возможно создавали их разные люди. Поэтому, существует ряд инструментов.

В первую очередь обратитесь к стандартной обработке с диска ИТС “Поиск и замена значений”. Нужно найти всё, что ссылается на проблемный документ и обработать эти значения или заменой, или удалением. Интерфейс обработки довольно понятный и приятный. Можно найти и поменять сами значения и найти ссылки.

Screenshot_347.png

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

Но бывают и более неприятные ситуации. Битые ссылки могут появиться в результате неправильной работы системы. Тогда простыми инструментами проблему не решить. Ведь программа уже думает, что есть ссылка, а объект удалить уже нельзя. Это может произойти если повреждена база данных приложения. Полезно попробовать восстановить рабочую базу из копии. Но процедура требует или знаний, или наличия программиста, чтобы процесс прошел без лишних проблем. 

Если же не бояться за целостность данных, можно просто для любого объекта из справочника вызвать метод “Удалить()” и все удалиться не смотря на любые ссылки. Делается это через конфигуратор. Правда если вы понимаете, о чем идёт речь, то наша статья вам уже не нужна. Тем же, кто не понимает о чем идёт речь, применять такое “опасное” удаление категорически не советуем. Потом будет очень сложно найти все концы и отправные точки, если мы вдруг промазали. 

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *