|
Непосредственное удаление объектов | ☑ | ||
---|---|---|---|---|
0
kible
15.02.18
✎
07:20
|
Поделитесь пожалуйста обработкой непосредственного удаления объектов.
Все облазил, не могу найти. |
|||
1
kible
15.02.18
✎
07:23
|
(0)+ kible(собака)mail.ru
|
|||
2
Chameleon1980
15.02.18
✎
07:24
|
Удалить(параметр смотрим да?)
|
|||
3
kible
15.02.18
✎
07:28
|
(2) Смотрим. Объектов много. Справочники, документы разные.
|
|||
4
Мимохожий Однако
15.02.18
✎
07:43
|
Базу пожалей, не делай так.
|
|||
5
shadow_sw
15.02.18
✎
07:47
|
(3) метаданные в помощь
|
|||
6
Bigbro
15.02.18
✎
07:52
|
универсальный подбор и обработка объектов.
отличный инструмент |
|||
7
kible
15.02.18
✎
07:53
|
(6) там каждый объект выбирать нужно
|
|||
8
Bigbro
15.02.18
✎
08:02
|
так если "объектов много" то и нужно выбирать объекты.
а если много классов - видов документов, видов справочников и т.п., которые нужно удалять полностью, без отбора то через метаданные. |
|||
9
nordbox
15.02.18
✎
08:04
|
(7) Хочешь плохому научу? ))
|
|||
10
echo77
15.02.18
✎
08:04
|
(0) Может проще пустую базу создать и нужные объекты просто перенести из исходной?
|
|||
11
nordbox
15.02.18
✎
08:11
|
(7) Учу плохому )))
В конфе, например у Справочника(ов) в ФормеСписка ставишь РежимВыделения множественное, а в правах у Роли на Справочники ставишь галочку Интерактивное удаление и развлекайся ))) и действительно, базу то пожалей, возврата назад не будет кроме как из резервной копии. Народ ногами меня не пинайте, он сам напросился )) |
|||
12
catena
15.02.18
✎
08:13
|
(11)Он в обработке ленится тип выбрать, а ты ему предлагаешь весь список выбирать.
|
|||
13
Рэйв
15.02.18
✎
08:18
|
(0)Ну, если ты так хочешь.
Кто не спрятался, я не виноват. Результаты использования кода- на твоей совести. //-- Запрос=Новый Запрос; Менеджеры = Новый СписокЗначений; Менеджеры.Добавить("Документы","Документ"); Менеджеры.Добавить("Справочники","Справочник"); Менеджеры.Добавить("ПланыВидовХарактеристик","ПланВидовХарактеристик"); Менеджеры.Добавить("ПланыСчетов","ПланСчетов"); Менеджеры.Добавить("ПланыВидовРасчета","ПланВидовРасчета"); Менеджеры.Добавить("ПланыОбмена","ПланОбмена"); Менеджеры.Добавить("БизнесПроцессы","БизнесПроцесс"); Менеджеры.Добавить("Задачи","Задача"); Для каждого Элемент из Менеджеры Цикл ВЗапрос=Элемент.Представление; Тип=Метаданные[Элемент.Значение]; Для каждого Вид из Тип Цикл Имя=Вид.Имя; Запрос.Текст="Выбрать Нечто.Ссылка Из "+ВЗапрос+"."+Имя+" КАК Нечто"; Выборка=Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл Об=Выборка.Ссылка.ПолучитьОбъект(); Об.Удалить(); КонецЦикла; КонецЦикла; КонецЦикла; |
|||
14
Рэйв
15.02.18
✎
08:19
|
И рекомендую сделать копию перед использованием кода. а то малоли...Вдруг ты потом передумаешь:-)
|
|||
15
nordbox
15.02.18
✎
08:22
|
(0) Ты не забывай, что если в спр Номенклатуры грохнишь
хоть один элемент, у тебя база сразу поедет, у Ном есть подчиненные, Единицы измерения, ШК, Свойства, характеристики если используешь хранилища и там тоже, короче много чего поедет, я про доки уже молчу У контриков тоже самое там и КИ потянется и Банки и ответственные и т.д. |
|||
16
nordbox
15.02.18
✎
08:25
|
+15 у тебя база станет хуже чем мусорка на вокзале
|
|||
17
kible
15.02.18
✎
08:28
|
(13) Спасибо.
Обработку буду запускать на копии. |
|||
18
kible
15.02.18
✎
08:29
|
Задача удалить все документы до 2017 года.
|
|||
19
Рэйв
15.02.18
✎
08:30
|
(18)Ну, тогда немного допилишь (13), удалишь лишние менеджеры и пойдет. Только не забудь прикрутить удаление движений у доком перед удалением, а то некрасиво получится с регистрами.
|
|||
20
nordbox
15.02.18
✎
08:31
|
Ох ты какой мудрый))) ты не первый,
а остатки, а партии если есть, а цены, а незакрытые заказы и т.д. дофига чего )) |
|||
21
catena
15.02.18
✎
08:31
|
А потом окажется, что нужна была свертка...
|
|||
22
nordbox
15.02.18
✎
08:31
|
(20) это к (18)
|
|||
23
kible
15.02.18
✎
08:32
|
Я объяснил заказчику как все будет он согласен.
|
|||
24
nordbox
15.02.18
✎
08:34
|
(23) (х)Фигово объяснял, потому что заказчик структуру не знает, и последствия тоже не понимает
|
|||
25
Рэйв
15.02.18
✎
08:36
|
(24)Никогда не надо спорить с заказчиком, упертом в своем желании заиметь себе геморой. За его деньги ты ему его предоставишь.А оптом за его же деньги будешь избавлять.Сплошной профит и уважуха:-)
|
|||
26
catena
15.02.18
✎
08:37
|
Интересно еще, как будут справочники по 2017 года удаляться...
|
|||
27
kible
15.02.18
✎
08:38
|
(24) Хорошо я объяснил. база не будет использоваться для работы. Я так понял учет бух учет будут проверять.
|
|||
28
lodger
15.02.18
✎
08:40
|
(26) можно попытаться из гуида разгадать примерные даты создания.
|
|||
29
Мимохожий Однако
15.02.18
✎
08:42
|
Возьми архивную копию до нужного периода и всё.
|
|||
30
kible
15.02.18
✎
08:44
|
(29) Нужно только 2017-2018 года.
|
|||
31
один я дАртаньян
15.02.18
✎
08:46
|
(0) (13) Если много, то лучше отключать расчет регистров.
РегистрыСведений[РегистрИмя].УстановитьИспользованиеИтогов(РасчитыватьИтоги); |
|||
32
один я дАртаньян
15.02.18
✎
08:47
|
(0) Конфа какая?
|
|||
33
kible
15.02.18
✎
08:48
|
(32) УТП
|
|||
34
Serg_1960
15.02.18
✎
08:51
|
Грохнуть документы до определенной даты - не проблема. Сложнее - удалить их движения. И совсем скучно - удалять не используемые записи справочников.
|
|||
35
один я дАртаньян
15.02.18
✎
08:51
|
(33) По укране ХЗ, но может там есть типовая свертка.
Тупо сверни базу. А если останутся партии, так можно ТЧ у поступлений товаров почистить, и номера входящих накладных и входящиз счетов-фактур(если они у вас есть). В том, что останется никакая проверка не разберется. |
|||
36
один я дАртаньян
15.02.18
✎
08:53
|
(33) А если надо базу за текущий приод предоставить.
Можно взять вгрузкуЗагрузкуХМЛ у документов поставить отбор, и алочки выгружать при необходимости снять. |
|||
37
Мимохожий Однако
15.02.18
✎
08:53
|
Достаточно Универсальной обработкой перенести документы в пустую базу и не проводить до удаления. Всё равно будет фигня.
|
|||
38
Рэйв
15.02.18
✎
08:55
|
(34)>>Сложнее - удалить их движения
Чего там сложного то? Перед удалением сделать //-- Для Каждого Дв Из Об.Движения Цикл Дв.Прочитать(); Дв.Очистить(); КонеЦикла; Об.Записать(); |
|||
39
kible
15.02.18
✎
08:56
|
Я сначала свернул базу. Теперь удаляю документы.
|
|||
40
один я дАртаньян
15.02.18
✎
08:57
|
(39) &НаСервере
Процедура Команда1НаСервере() ЗаросОрг = Новый Запрос; ЗаросОрг.Текст = "ВЫБРАТЬ | Организации.Ссылка КАК Ссылка |ИЗ | Справочник.Организации КАК Организации |ГДЕ | Организации.ПометкаУдаления"; тзОрг = ЗаросОрг.Выполнить().Выгрузить(); спОрганизаций = Новый СписокЗначений; спОрганизаций = тзОрг.ВыгрузитьКолонку("Ссылка"); МассивСсылк = Новый массив; Запрос = Новый Запрос; Запрос.УстановитьПараметр("спОрганизаций",спОрганизаций); ЗапросТекст = "ВЫБРАТЬ | АвансовыйОтчет.Ссылка |ИЗ | Документ.АвансовыйОтчет КАК АвансовыйОтчет |ГДЕ | АвансовыйОтчет.Организация В(&спОрганизаций)"; НПП = 0; КолВо = Метаданные.Документы.Количество(); Для Каждого ТекДок из Метаданные.Документы Цикл НПП = НПП + 1; Сообщить("Обработано: "+НПП + " из " +КолВо +" "+СокрЛП(Строка(ТЕкДок.Имя))); ХХХ = ТЕкДок.РЕквизиты.Найти("организация"); Если ХХХ <> Неопределено ТОгда Запрос.Текст = СтрЗаменить(ЗапросТекст,"Документ.АвансовыйОтчет КАК АвансовыйОтчет","Документ."+СокрЛП(Строка(ТЕкДок.Имя))+" КАК АвансовыйОтчет"); МассивСсылк.Очистить(); тз = Запрос.Выполнить().Выгрузить(); Для каждого стрТз из тз Цикл МассивСсылк.Добавить( стрТз.Ссылка); КонецЦикла; Сообщить("Колво ссылок:"+тз.Количество()); УдалитьОбъекты(МассивСсылк,Ложь) КонецЕсли; КонецЦИкла; КонецПроцедуры &НаКлиенте Процедура Команда1(Команда) Команда1НаСервере(); КонецПроцедуры |
|||
41
Рэйв
15.02.18
✎
08:57
|
(39)Есть универсальная обработка по свертке базы. Там на уровне скуля можно удалить все выбранные документы за период
|
|||
42
один я дАртаньян
15.02.18
✎
08:58
|
(39) Но лучше не удалять документы. Можно попробовать обработкой поиск и замена дублирующих.
|
|||
43
Serg_1960
15.02.18
✎
08:59
|
(37) +1 с поправкой: Если уж переносить, но переносить документы после даты удаления. Ну и, разумеется, все ссылочные объекты, упомянутые в них.
(38) Между прочим, я сказал не уточняя проблему. Специально для Вас: "сложнее по времени". Так Ок? :) |
|||
44
Рэйв
15.02.18
✎
09:00
|
(43)Ладно, так пойдет:-)
|
|||
45
Serg_1960
15.02.18
✎
09:00
|
(39) RLS им напиши чтобы не видели документы до даты свёртки :)
|
|||
46
kible
15.02.18
✎
09:05
|
(45) база должна быть готовая вчера)) А с РЛС я не дружу.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |