Удаление из подчиненного справочника

1. uDav 19.02.25 11:45 Сейчас в теме
Создал справочник в 1С 7.7 SQL у которого есть подчиненый . При пометке на удаление помечаются все элементы в подчиненном справочнике. Если я программно удаляю элемент в главном справочнике полностью. Необходимо перед этим удалять все элемены в подчиненом или после сжатия базы все само очиститься ?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Vlan 36 19.02.25 12:05 Сейчас в теме
(1) Имхо, надо удалять. Если их действительно надо удалить, а не очистить/заменить владельца.
3. jmw 61 19.02.25 12:36 Сейчас в теме
Всегда же можно попробовать в файловом варианте.
К примеру:
	спр = СоздатьОбъект("Справочник.Первый");
	спр.Новый();
	спр.Наименование = "Новый";
	спр.Записать();
	
	подч = СоздатьОбъект("Справочник.Второй");
	подч.ИспользоватьВладельца(спр.ТекущийЭлемент());
	подч.Новый();
	подч.Код = "12345678";
	подч.Записать();
	
	спр.Удалить(1);
Показать

Затем залазим в dbf и видим, что удалён.
(См.картинку)
Прикрепленные файлы:
4. uDav 19.02.25 13:26 Сейчас в теме
(3) Об этом я и спрашивал. Так как при пометки на удаление система сама помечает все в подчиненном справочнике, а вот с удалением чуток не догадался. Думал остается в таблице и потом разопрет базу . Так как постоянно будут добавлять и удалять записи в этом справочнике.
5. jmw 61 20.02.25 05:14 Сейчас в теме
При удалении физически из базы ни чего не удаляется. Происходит только установка пометки удаления.
Т.е. после удаления множества записей необходимо сжимать dbf или делать shrink скульной базы.

Обязательно это делается обычно после свёртки старых периодов. (не забываем на ограничение размера dbf ;–)
А для скуля достаточно включить в ежемесячный план обслуживания
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот