Миграция файлового сервера: перенос связанных перекрестными ссылками файлов Microsoft Office (Excel, Word и др.)

Проблема, с которой сталкивался несколько раз сам, а недавно напомнил один из моих студентов: при миграции файлового сервера нарушаются перекрестные ссылки, которые часто содержатся в файлах Excel (и других файлах Office). Почему-то  и финансовые специалисты, и продавцы просто обожают сложные иерархии ссылок внутри файлов.

Теория

Файлы Microsoft Office (Word, Excel, Visio и др.) являются контейнерами, которые могут содержать в себе гиперссылки, ссылки на файлы, внедренные или связанные объекты и пр.

Например, сводный бюджет компании, подготовленный в Excel, называется \\MARS\Users\Finance\2011\Бюджет.xlsx.  Сводный бюджет в отдельных ячейках содержит ссылки на другие файлы Excel с бюджетами подразделений. В подавляющем большинстве случаев ссылки имеют абсолютный путь вида
=’\\MARS\Users\Finance\2011\Sales.xlsx]Лист1’!$C$2

image

Понятно, что миграция файлового сервера MARS на другой сервер, перенос отдельных файлов из общей папки Users и т.п. приведут к образованию “битых” ссылок в файле Бюджет.xlsx.

Править файлы “ручками” или получать от бухгалтерии шквал звонков в техподдержку, естественно, не хочется. Что делать?

 

Практика

Идеальным решением, конечно, будет изначальное применение DFS для размещения данных.

А если DFS не было?

Оказывается, существует целая линейка продуктов, позволяющая просканировать в поточном режиме большое количество файлов Office и составить таблички используемых в файлах перекрестных ссылок. После сканирования таблички модифицируются (индивидуально или по шаблонам) и ссылки перезаписываются обратно в файлы Office. Быстро и красиво. Но, обычно, платно.

Примеры утилит ниже:

Мне лично больше всего понравилась ReplaceMagic: наглядный интерфейс, удобные поиск и замена гиперссылок, внедренных объектов, перекрестных ссылок и пр. Есть дистрибутивы ReplaceMagic как для отдельных типов файлов Office, так и для всех сразу. Для работы требует установленного на той же самой машине Microsoft Office, т.к. сканирование документов выполняется движком самого Office.

image

Последовательность миграции данных:

Шаг №1. Backup, backup, backup!!!

Шаг №2. Перенос данных в новое место.

Шаг №3. Сканирование перенесенных файлов и замена ссылок.

Шаг №4. Выборочное тестирование перенесенных файлов.

 

Выводы

Не спешите изобретать велосипед, разрабатывая самостоятельные скрипты для миграции ссылок внутри фалов Microsoft Office. Есть апробированные решения, которые решат задачу и надежнее, и, в итоге, дешевле.

Успешной миграции!

Улыбка

2 комментария:

  1. ReplaceMagic не понимает русские имена папок и файлов

    ОтветитьУдалить
  2. I think that latest version of ReplaceMagic supports also Russian letters (any Unicode characters) plus it is much improved

    ОтветитьУдалить