Вход | Регистрация


1С:Предприятие ::

Метки: 

Удаление неиспользуемых элементов для большой базы

Я
   Klesk
 
12.01.18 - 17:10
все какие видел , включая типовую, используют НайтиПоСсылкам
которая очень медленная, так как ищет и возвращает все ссылки на объекты
Есть какие то другие пути автоматизации этой задачи?
 
  Рекламное место пустует
   Klesk
 
1 - 12.01.18 - 17:13
+ и не монопольно
   Мыш
 
2 - 12.01.18 - 17:13
(0) Написать свою обработку, которая предварительно проанализирует ссылки в метаданных и будет искать только в тех объектах, где возможны ссылки.
   Джинн
 
3 - 12.01.18 - 17:14
(0) БыстроНайтиПоСсылкам
   lodger
 
4 - 12.01.18 - 17:14
(3) МойМодуль.БыстроНайтиПоСсылкам()
   Волшебник
 
Модератор
5 - 12.01.18 - 17:14
(3) А если нужно ещё быстрее?
   Мыш
 
6 - 12.01.18 - 17:15
(5) МухойНашелПоСсылкам()
   Klesk
 
7 - 12.01.18 - 17:27
(2) а есть функция аналог "Найти ссылки на объект" как в конфигураторе?
   Klesk
 
8 - 12.01.18 - 17:28
"Поиск ссылок на объект" т.е.
   Мыш
 
9 - 12.01.18 - 17:29
(8) Нет. Только суррогат вида "Для Каждого ЭлементКоллекции Из Метаданные.*" )
   Lama12
 
10 - 12.01.18 - 17:38
(0) Пожалуй это самый быстрый вариант. И делать его нужно либо монопольно, либо так что б за время поиска ссылок не вводились новые данные.
 
  Рекламное место пустует
   timurhv
 
11 - 12.01.18 - 17:44
   timurhv
 
12 - 12.01.18 - 17:46
+(11) Один раз надо было удалить 480тыс разных элементов. Стандартная на "НайтиПоСсылкам" задумалась на 2-3 дня.
Эта по ссылке за 1.5 часа справилась.

Только надо посмотреть исправили или нет ошибку битых ссылок в регистрах сведений, когда удаляемый объект находится в измерениях.
   Вафель
 
13 - 12.01.18 - 17:49
если знаешь где нужно искать то можно самому запрос написать
   Klesk
 
14 - 12.01.18 - 17:51
(11) я так понимаю она только помеченные на удаление удаляет
   timurhv
 
15 - 12.01.18 - 17:55
(14) "Тыж программист". Там есть бесплатная версия.
Работает как в (9).
   Cyberhawk
 
16 - 12.01.18 - 19:00
ИР в помощь, находишь все объекты в групповой обработке и затем передаешь их в удаление
   Злопчинский
 
17 - 12.01.18 - 19:07
А вот если объект типа справочник общего вида....
   Maniac
 
18 - 12.01.18 - 19:13
Легко.
   Klesk
 
19 - 12.01.18 - 19:13
Стоп, а если УТ 11.1 (режим совместимости Версия 8.2.16)
а в справке:
Примечание:

Если параметр ОбластьПоиска неопределен или используется режим совместимости Версия8_3_4 и ниже, поиск осуществляется во всех тех данных, которые доступны в рамках текущего сеанса с учетом разделения (условное разделение учитывается).

Это значит что не получится?
   Klesk
 
20 - 12.01.18 - 19:39
а не все работает, спасибо

а в каких метаданных искать ссылки? Во всех?
как быть например с планами обмена?
   mistеr
 
21 - 12.01.18 - 20:30
(2) А разве НайтиПоСсылкам() не так делает?
   Klesk
 
22 - 13.01.18 - 11:57
написал обработку, ищу ссылки на объект мет. в метаданных спр, док, РС, РН, Бизн.проц
эти метаданные передаются третьим параметром

СсылкиНаНайденныеОбъекты=НайтиПоСсылкам(МассивУдаляемыхСсылок,Новый Массив,ВключенныеОбъектыМет);

создал в справочнике валюты новую, запустил удаление элементов только по этому справочнику,  в итоге уже 24 часа работает
видимо тоже не вариант или что то не так делаю?
   mexanik_96
 
23 - 13.01.18 - 12:06
(0) ирп(инструменты разработчика) посмотри
   Lama12
 
24 - 13.01.18 - 12:09
(22) Мне вот интересно. Разработчики дали определенный инструмент. Они отвечают за его работу.  Ты уверен что хочешь взять на себя ответственность за разрушения базы в случае чего? Хотя если вышестоящее руководство настаивает и принимает риски на себя, то это конечно вариант.
   Лефмихалыч
 
25 - 13.01.18 - 12:18
(5) УдалитьКХерамПотомБоротьсяСПоследствиями()
   mistеr
 
26 - 13.01.18 - 13:34
(22) О — Отладка.
Т — Тестирование.
© Азбука программирования.
   Klesk
 
27 - 13.01.18 - 14:53
(26) там она висит на НайтиПоСсылкам , чего там отлаживать
(24) ну во первых речь об удалении уже не идет, хотя бы пометить, для удаления есть инструменты нарушающие политику 1с, а пометка ни к чему страшному не приведет
   Лефмихалыч
 
28 - 13.01.18 - 15:43
(27) городи огород с прямыми запросами к СУБД, раз так. Нефиг было делать, где ни попадя ЛюбаяСсылка.
   kubik_live
 
29 - 13.01.18 - 19:22
(0) Смотри ИР (16). Мне помогло
   Klesk
 
30 - 15.01.18 - 22:53
(16) (29) спасибо за ИР, помогло удалить помеченные, но оно вроде как не решает исходную задачу - пометить на удаление, или я не разобрался?
   Tateossian
 
31 - 15.01.18 - 23:34
Поправьте, если не прав: хай ловд сервисы, типа ВК.ком, ФБ.ком, миста.ру :3 и так далее - они ж вообще не удаляют данные, но занимаются очисткой?
   tesseract
 
32 - 15.01.18 - 23:37
(28) Делал обработку по очень быстрому удалению - с последствиями до сих пор имеем дело, не все данные удалось выцепить из связанных таблиц.
База больше 400Гб. Тестирование и исправление просто виснет :-)
   TormozIT
 
33 - 25.01.18 - 23:19
(30) Инструмент "Удаление объектов с контролем ссылок" позволяет определять, на какие из выбранных (например всех объектов из нужной таблицы) объектов нет полезных ссылок. Далее по этому признаку можно выбрать строки кандидатов и передать их в инструмент "Подбор и обработка объектов" и там уже пометить на удаление.
http://imagizer.imageshack.com/img923/1747/qTskp7.png
 
  Рекламное место пустует
   cons74
 
34 - 26.01.18 - 07:14
(33) меня в вашей обработке смущает вот это: http://shot.qip.ru/00Qtkp-6oZhWgxjC/(большой кусок закомментированного кода)
   TormozIT
 
35 - 26.01.18 - 21:25
(34)
Этот код оставлен достаточно давно для подстраховки перехода на более универсальный подход. Уже года 2 как там не возникало потребности в доработках.
Поэтому его можно считать почти бесполезным.



Список тем форума
  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует