|
v7: Можно ли в 1с 7.7 Комплексная удалить последние 2 года данных? | ☑ | ||
---|---|---|---|---|
0
Ночной Эльф
22.08.12
✎
08:39
|
Всем доброго времени суток. Вобщем ситуация такая можно ли удалить из базы 2 последних года т.е. из всех документов, справочников и регистров которые были созданы за последние 2 года?
Просто базу нужно отдать на тестирование 3 лицам руководство согласилось на это если будет удалена информация за последние 2 года. Можно ли это как нибудь сделать не в ручную? |
|||
1
BlackSeaCat
22.08.12
✎
08:41
|
Можно и вручную, и почти мгновенно: поднять базу из бэкапа.
|
|||
2
Ночной Эльф
22.08.12
✎
08:42
|
(1) Поднять то поднять можно а конфигурация то уже не та она у нас каждую неделю переписывается
|
|||
3
Valery
22.08.12
✎
08:43
|
свертку сделать
|
|||
4
Godofsin
22.08.12
✎
08:43
|
(0) Что значит "тестирование"? Как насчет выгрузки файла конфигурации?
|
|||
5
Ночной Эльф
22.08.12
✎
08:44
|
(3) А ты недумал что свертка делает наоборот т.е. останет 2011 и 2012 года если сделать по 01.01.2011 А как чтобы наоборот последний документ был 31.12.2010
|
|||
6
Ночной Эльф
22.08.12
✎
08:44
|
(4) как это сделать ?
|
|||
7
Godofsin
22.08.12
✎
08:49
|
(6)а блин 7ка же... МД им отдай и все, будет струтура без данных вообще.
|
|||
8
Ночной Эльф
22.08.12
✎
08:50
|
да но им и данные нужные какие то чтобы понятнее было так вобще х?р разберуться тут так все закручено
|
|||
9
Fedot200
22.08.12
✎
08:55
|
Док=СоздатьОбъект("Документ");
Док.ВыбратьДокументы(ДатаНачала,ДатаКонца); Пока Док.ПолучитьДокумент()>0 Цикл Док.Удалить(); КонецЦикла; Не? |
|||
10
Ночной Эльф
22.08.12
✎
08:57
|
и че вот у нас тут около 50 различных документов используется и мне для каждого это делать?
|
|||
11
Godofsin
22.08.12
✎
08:58
|
(10) зачем?
|
|||
12
Ночной Эльф
22.08.12
✎
08:58
|
(9) или же он выбирает вобще все документы ?
|
|||
13
Fedot200
22.08.12
✎
08:58
|
(10) Док=СоздатьОбъект("Документ"); - все доки выбирает
|
|||
14
Ночной Эльф
22.08.12
✎
08:59
|
а получает в глобальный модуль засунуть при открытии базы чтобы сработало, а потом просто удалить эти строки и все
|
|||
15
Fedot200
22.08.12
✎
08:59
|
Единственное если документов до хера, то может долго удалять. Пробуй вначале маленький период, чтобы время оценить.
|
|||
16
Fedot200
22.08.12
✎
09:00
|
(14) Нафига? Обработку сделай внешнюю.
|
|||
17
Godofsin
22.08.12
✎
09:00
|
(14) Обработкой внешней сделай
|
|||
18
KRV
22.08.12
✎
09:00
|
Мдя.. за судьбу 1С можно не беспокоиться.. титаноклювые отрастают быстрее, чем предыдущих выгоняют в антигравитаторы за профнепригодность..
|
|||
19
Ночной Эльф
22.08.12
✎
09:00
|
ок спасибо щас попробую
|
|||
20
Ночной Эльф
22.08.12
✎
09:01
|
(18) че за бред ты несешь
|
|||
21
Fedot200
22.08.12
✎
09:03
|
(18)А чё норм, в глобальный модуль воткнуть удаление и прям в рабочую базу и клево :-)
|
|||
22
Надсмотрщик
22.08.12
✎
09:10
|
+(18) Маразм крепчал
|
|||
23
ZloyProger
22.08.12
✎
09:38
|
Хех) Это мне напомнило мою студенческую молодость, когда на кафедре написал в ворде макрос типа selеct all delete save close и поставил его в автозагрузку))) Инженеры потом месяц к компам не подпускали))) Пока чуть не выкинутую ими машину поднял и реанимировал.
|
|||
24
Maximysis
22.08.12
✎
10:36
|
1) Сверни базу на нужное число.(на это число создадутся операции в которых будут остатки до свертки)
2) Типовая обработка "Обработка документов" удали все доки на дату. Если не нужны остатки то и созданные сверткой операции снеси. |
|||
25
BlackSeaCat
22.08.12
✎
10:40
|
Напоминаю советчикам: автору надо еще почистить "справочники и регистры которые были созданы за последние 2 года"
|
|||
26
Надсмотрщик
22.08.12
✎
10:41
|
(24) Еще одна жертва Чернобыля........
|
|||
27
snikos
22.08.12
✎
10:47
|
Не знаю как в 7.7 но в 8.2 можно было бы пойти по принципу изготовления демо версий.
Извлеч из архива двухлетнюю базу с данными и через сравнение и объединение конфигураций объеденить ее с выгруженной в файл текущей конфигурацией. |
|||
28
Джордж1
22.08.12
✎
10:49
|
Удаляем все доки за 2 года. Помечаем на удаление все элементы справочников - удаляем помеченные объекты стандартным образом
|
|||
29
Эльниньо
22.08.12
✎
11:00
|
С доками понятно. Как с справочниками быть?
|
|||
30
vova1122
22.08.12
✎
11:02
|
Предложенный код в (9) отработает намного быстрее если его поместить в транзакцию по 500 операций
|
|||
31
SED
22.08.12
✎
11:03
|
(0) интересно какой смысл передавать со старыми данными, если у вас там все переписывается 1 раз в неделю? может проще перенести в пустую базу 1-2 месяца не таких старых в чистую базу
|
|||
32
Кукуев
22.08.12
✎
11:17
|
У меня есть МОД, поэтому я бы сделал так:
Сделал пустую базу из нужного MD, установил на неё МОД, удалил все ненужные справочники (которые создаются при создании чистой базы), синхронизировал оставшиеся, настроил правила и сделал бы выгрузку документов за нужный период из базы-источника (подразумевая, что в ней МОД установлен, конечно). При выгрузке документов будут выгружаться только справочники, на которые есть ссылки в документах. Если не нужна история справочников - всё это делается настройках правил. После загрузки в чистую базу имел бы документы и справочники только за нужный период... |
|||
33
GreyAngel
22.08.12
✎
11:19
|
(29) Пометить на удаление и воспользоваться стандартным механизмом удаления помеченных. Не?
|
|||
34
GreyAngel
22.08.12
✎
11:21
|
(32) Вы уверены, что автор темы понял хотя бы половину написанного? Я вот что-то сомневаюсь. :)
PS. Советы надо давать такие, чтобы собеседник их понимал. |
|||
35
Кукуев
22.08.12
✎
11:32
|
(34) Запутать автора - такая цель не преследовалась, конечно, приношу извинения...
МОД - Менеджер Обмена Данными, вроде как известный механизм по обмену, ну а как с ним работать - при желании можно разобраться. И я просто описал, как можно получить сабж, имея МОД... p.s. и это был не то чтоб совет, а один из способов выполнени я поставленной |
|||
36
Кукуев
22.08.12
✎
11:34
|
+(35)поставленной задачи.
(улетело в эфир раньше времени :)) |
|||
37
Эльниньо
22.08.12
✎
11:42
|
(33) Пометить на удаление элементы созданные за последние 2 года?
|
|||
38
Надсмотрщик
22.08.12
✎
11:45
|
(37) Отметился :-)))
|
|||
39
Митор
22.08.12
✎
11:47
|
(2) поднять из быкапа, быкап обновить на ту конфигурацию
|
|||
40
SED
22.08.12
✎
11:50
|
+(39) поднять и накатить текущий мд
|
|||
41
Джордж1
22.08.12
✎
11:51
|
(37)Еще раз. Помечаем на удаление ВСЕ элементы справочников. Удаляем помеченные объекты стандартным образом.
|
|||
42
Irek-kazan
22.08.12
✎
11:53
|
а не проще обезличить базу?
|
|||
43
vova1122
22.08.12
✎
11:55
|
(37)
1. Сначала пометить на удаление документы за 2 года. Потом стандартным механизмом Удалить помеченные документы. 2. Пометить все элементы справочников (похожим кодом как в (9)). 3. Потом стандартным механизмом Удалить помеченные элементы справочников 4. Элементы справочников, какие удалить система не позволила удалить снять пометку удаления. Всё, у вас база двухгодичной давности.... |
|||
44
zva
22.08.12
✎
11:55
|
(0) Нужно базу выложить, тут и свернут и удалят и обновят...
|
|||
45
Надсмотрщик
22.08.12
✎
11:56
|
(43) Думаешь до него дошло? :-)
|
|||
46
Джордж1
22.08.12
✎
12:08
|
(43)
1. Почему бы сразу не удалить. Без пометки |
|||
47
Эльниньо
22.08.12
✎
12:13
|
(41) Ещё раз: "удалить из базы 2 последних года т.е. из всех документов, справочников..."
|
|||
48
Эльниньо
22.08.12
✎
12:13
|
(46) Ай, красава!
|
|||
49
vova1122
22.08.12
✎
12:14
|
(46) Оптимизации нет предела...
|
|||
50
Джордж1
22.08.12
✎
12:15
|
(47)Именно это в итоге и получится. удалятся 2 последних года. совсем
|
|||
51
GreyAngel
22.08.12
✎
12:41
|
(47) Автору нужно, чтобы в базе отсутствовали последние два года, а вовсе не полная копия базы двухгодичной давности. Так что предложенный вариант удовлетворяет условиям задачи. Не надо искать сложности, там где их нет.
|
|||
52
Эльниньо
22.08.12
✎
12:51
|
(51) Да меня прикалывает серьёзное обсуждение идиотской задачи.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |