Только качественный контент |
Есть и другие ситуации, в которых часть данных изменена "случайно", а часть изменена в процессе работы пользователей. И нужно восстановить именно "случайно" измененную часть данных, а остальное оставить как есть.
Исходим из того, что у нас есть архив, из которого данные можно перенести. Соответственно первое, что нужно сделать - это найти и развернуть (восстановить) архив. А дальше есть варианты...
Вариант 1. Воспользоваться обработкой ВыгрузкаЗагрузкаДанныхXML81.epf с диска ИТС. Выбрать объекты, выгрузить и загрузить.
Резюме 1. В данном случае выбор объектов для переноса выполняется практически вручную. А перенес движений по конкретному виду документа за период возможно, но весьма, весьма трудоемко.
Вариант 2. Настроить правила обмена с помощью конфигурации "Конвертация данных". Т.к. конфигурации рабочей базы и архивной скорее всего идентичные, то особых проблем с настройкой правил обмена быть не должно. При загрузке можно прописать в обработчиках дополнительные условия, по которым принимать решение - загружать переданные из архивной базы данные или нет. Подробнее о конфигурации "Конвертация данных" можно почитать на диске ИТС или приобрести книгу http://v8.1c.ru/metod/books/book.jsp?id=121
Резюме 2. Запрограммировать можно все. Поэтому в данном случае можно добиться очень высокого уровня автоматизации. Но есть небольшой недостаток: нужно уметь программировать...
Вариант 3. Добавить план обмена "ВосстановлениеДанных" без РИБ с выключенной авторегистрацией для всех объектов в рабочей базе и в архиве. В модуле плана обмена прописать:
Функция ЗагрузитьИзмененияДанныхДляУзла(УзелОбмена, КоличествоЭлементовВТранзакцииНаЗагрузкуДанных = 0, ЧтениеXML) Экспорт
Возврат ПроцедурыОбменаДанными.ЗагрузитьИзмененияДляУзлаИзФайлаОбмена(УзелОбмена, КоличествоЭлементовВТранзакцииНаЗагрузкуДанных, ЧтениеXML);
КонецФункции
Функция ВыгрузитьИзмененияДанныхДляУзла(УзелОбмена, КоличествоЭлементовВТранзакцииНаВыгрузкуДанных, ЗаписьXML) Экспорт
Возврат ПроцедурыОбменаДанными.ВыгрузитьИзмененияДляУзлаВФайлОбмена(УзелОбмена, КоличествоЭлементовВТранзакцииНаВыгрузкуДанных, ЗаписьXML);
КонецФункции
Добавить узел приемник в архиве и узел источник в рабочей базе для плана обмена "ВосстановлениеДанных". С помощью обработки РегистрацияИзмененийДляОбмена зарегистрировать нужные элементы справочников, документов и регистров. Добавить настройки обмена данными в обоих базах. Выгрузить данные из архива. Загрузить данные в рабочую базу.
Аналогично любые данные из любого архива можно будет перетащить в любое время. В дальнейшем модифицировать конфигурацию архива будет уже не нужно. Но после разворачивания (восстановления) архива, необходимо будет изменить имена узлов в архиве на противоположные.
В прилагающихся файлах есть конфигурация с планом обмена ВосстановлениеДанных. При объединении конфигураций необходимо оставить галочку только на плане обмена ВосстановлениеДанных, а после объединения конфигураций в составе плана обмена ВосстановлениеДанных указать все объекты информационной базы с выключенной авторегистрацией. Для этого выбрать в меню Действия - Включить все, выбрать в меню Действия - Запретить авторегистрацию для всех.
Для примера добавил обработку, которая позволяет зарегистрировать документы и их движения. Документы могут быть отфильтрованы за период по виду или по вхождению в последовательность. Также могут быть перенесены справочники по ссылкам первого уровня.
Резюме 3. Данный вариант сочетает в себе как сравнительную простоту реализации, так и возможность обеспечения достаточно высокого уровня автоматизации.
16.12.2009 /Константинов Алексей Викторович/