Имя: Пароль:
1C
1C 7.7
v7: Свертка самописной базы
0 nameless13
 
22.08.11
11:25
Есть самописная база SQL, при проведении в документах у неё прописаны куча всяких связок с другими задачами, а также всякие проверки при отмене проведения и прочее.
Штатными средствами свернуть базу не получается потому что вызываются процедуры "ПриОтменеПроведения()", ПриУдаленииДокумента().
Нужно зачистить базу в обход Предопределенных процедур, наверняка есть люди с таким опытом, подскажите как лучше реализовать это процесс.
1 nameless13
 
22.08.11
11:25
база SQL
2 Ёпрст
 
22.08.11
11:27
(0) ТКВ - На фига её сворачивать ?
3 DGorgoN
 
22.08.11
11:28
Hz - Смотреть надо, а вообще есть на инфостате куча способов и обработок.
А так - мой час от 500 руб. если больше суток работы, иначе 1000 руб. =)

P.S. Думаю одно из самых выгодных предложений здесь =)
4 1Сергей
 
22.08.11
11:28
Кто такая Светка?
5 vis_tmp
 
22.08.11
11:29
Интересно, какая у самописной базы "Светка"? )
6 nameless13
 
22.08.11
11:32
(2) много доков в базе накопилось с 2002 года и при изменении например плана счетов, долго реорганизацию данных проводит. Также базы весят уже слишком много нужно место освобождать
7 nameless13
 
22.08.11
11:33
(4) Светка - это значит свёртка (буква ёкнулась где-то)
8 povar
 
22.08.11
11:35
(6)
"Также базы весят уже слишком много"
много - это сколько ?


"нужно место освобождать" - разве это сейчас проблема ?
9 sammmm
 
22.08.11
11:35
я сначала добавлял константу Свертка, и на момент свертки ставил её значение 1. И в модуле ОбработкаОтменыПроведения вставлял.

   Если Константа.Свертка=1 тогда
       СтатусВозврата(1);
       Возврат;
   КонецЕсли;


После свертки опять 0.
10 sammmm
 
22.08.11
11:36
11 sammmm
 
22.08.11
11:40
Во всех документах подобавлять в процедуру ОбработкаУдаленияПроведения цикл проверки значения константы Свертка                        
Добавить константу Свертка                                        
Константу Запрет Проведения = 01.01.00                                        
Свертка =1                                        
Wrap.ert запускаем на 31.12.03 число (это если тебе до 01.01.2004)резать надо                                    
Объединением конфигурации добавляем документы ФиксацияРегистров и Фиксацияпериодических                                
Формируем остатки по регистрам обработкой на 31.12.03 число                                        
Формируем периодические обработкой на 31.12.03 число                                        
Точку актуальности выставляем на 01.01.00                                        
Удаляем Все документы по 30 число                                        
Меняем период расчета на декабрь 2003                                        
Документы за 31 число удаляем вручную                                        
Меняем период расчета                                        
Удаляем документы физически                                        
Выгрузка-Загрузка(в чистую)                                        
ТА поставить 01.01.04                                        
Проводим документы ФиксацияРегистра и ФиксацияПериода на 01.01.04

ТА и константы в исходное положение
12 nameless13
 
22.08.11
11:56
(11) Спасибо за конструктивный ответ, в целом понял. Есть несколько вопросов по пунктам:

Документы за 31 число удаляем вручную - а если обработкой их прихватить той же, почему вручную?

Выгрузка-Загрузка(в чистую) - после физического удаление документов в этой базе, зачем грузить в чистую, если продолжать вести в этой же?
13 andrewks
 
22.08.11
11:58
(12) "Выгрузка-Загрузка(в чистую) - после физического удаление документов в этой базе, зачем грузить в чистую, если продолжать вести в этой же?" чтобы окончательно избавится от удалённых данных + одновременное ТиИ
14 sammmm
 
22.08.11
12:00
Удалять вручную надо, потому что Документы ФиксацияРегистра и ФиксацияПериодических создаются на 31.12.03, т.е. обработка удалит их тоже.

Беда небольшая если не в чистую загрузишь. Смотри сам
15 sammmm
 
22.08.11
12:01
ещё бывает что Формировать остатки по регистрам обработкой на 31.12.03 число нужно до WRAP, а не после