gifts2017

Противоядие от ошибочного массового заполнения регистра сведений - или - как всё вернуть обратно, но только для этого регистра....

Опубликовал Игорь Калчев (Igor030370) в раздел Администрирование - Сервисные утилиты

Бывает так, что ошибка в коде обработки или в данных приводит к некорректному заполнению регистров сведений с независимой записью. В моей практике работы с регистром сведений "Значения дополнительных реквизитов" была ошибка в данных на загрузку. Ошибочные записи заметили, когда данные уже были загружены. Как быть в таком случае? Как вернуть всё обратно?
Если есть резервная копия базы, то можно очень просто вернуть всё на место для этого регистра не трогая остальные данные! Конечно, то что проделано руками пользователей в этом регистре с момента создания резервной копии до момента перезагрузки регистра - потеряется(((, но это неизбежность.

Для сохранения в файл записей регистра необходимо:

  1. Развернуть резервную копию и запустить эту обработку.
  2. Выбрать регистр сведений для выгрузки в файл.
  3. Выбрать файл, куда будут выгружены все записи регистра и нажать [Выполнить]

Для замены всех записей регистра на записи из файла необходимо:

  1. Запустить обработку в "живой" базе. Лучше на всякий случай сделать это монопольно, а ещё лучше сначала на копии, а потом в "живой".
  2. Выбрать регистр сведений для загрузки записей из файла.
  3. Установить переключатель в положение "Загрузить из файла". Если необходимо, то можно загружать в транзакции.
  4. Выбрать файл из которого будут загружаться записи.
  5. Нажать кнопку [Выполнить].

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
СпастиРегистрСведений.epf
.epf 8,04Kb
11.04.12
25
.epf 8,04Kb 25 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Олег Кострицын (recon) 11.04.12 18:41
C виду не плохо, но зачем изобретать велосипед если есть более функциональная обработка "Выгрузка\загрузка данных XML" с диска ИТС ?
2. Игорь Калчев (Igor030370) 11.04.12 19:38
(1) recon, да, Вы совершенно правы. Чёт я ступил... надо снимать с публикации
видно когда понял, что заполнил регистр ошибочными данными ум помрачился ) Помню, что сварганил по принципу ЗначениеВФайл()....ЗначениеИзФайла() и быстренько вернул всё обратно, вот велосипед и получился...
3. Александр Капустин (kapustinag) 11.04.12 20:28
Предлагаю оставить, не снимать с публикации.
Да, "ВыгрузкаЗагрузкаДанныхXML.epf" может очень многое. Но она - опасное оружие в неумелых руках, и может очень многое испортить. А эта обработка сделает только то, что ей сказали сделать. Ничего лишнего.

Как пример, чтобы не быть голословным:
- с помощью "ВыгрузкаЗагрузкаДанныхXML.epf" восстанавливался 1 (один) документ из резервной копии.
- документ был непроведенный, помеченный на удаление. Галка "Выгружать с документом все его движения" была отключена.
- были сняты галки на всех других типах объектов, и на всех "объектах по ссылкам".
- полученный xml-файл был проверен визуально в текстовом редакторе. Там действительно был только один объект - этот самый документ. Никаких движений по регистрам, никаких объектов по ссылкам.

- При загрузке НЕ НАЖИМАЛИСЬ галки "отключить итоги".

А теперь - результат:
- В процессе загрузки обработка зачем-то отключила итоги, затем загрузила документ успешно, затем стала включать итоги. И нарвалась на блокировку, так как в базе были работающие пользователи. В конце концов свалилась по ошибке "Превышено время ожидания запроса на блокировку", так и не включив итоги.
4. Сергей Лунев (luns) 11.04.12 22:26
(2) в (3) верно говорят.
помню давно как то, была подобная ситуация.
тоже написал свое, хотя и знал про типовую. но было проще свое накидать, чем разбираться в коде типовой.
мало ли...
5. qwe qwerty (quebracho) 22.04.12 08:03
Можно через COM, если база не на Аляске, и не только регистры... По УИД сопоставлять.
6. Александр Журавлев (apostal86) 02.06.12 14:43
(3) kapustinag, тогда для Вас обработка по включению итогов для регистров. На инфостарте можно много таких найти
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа