Пакетное переименование

Этот инструмент переименовывает файлы документов, используя поля метаданных документа в качестве источника нового имени файла и/или имени папки. Наряду с возможностью использовать содержимое метаданных, есть также полезные функции для добавления последовательной нумерации и даты, изменения букв, поиска/замены, замены подстроки, разбитие строки и более сложные схемы имени заданием скриптов.

Скриншот инструмента Пакетное переименование

При составлении формулы переименования, инструмент показывает в списке файлов новые имена и можно легко проверить и изменить формулу согласно нашим требованиям.

Формула переименования может содержать любой статичный текст и для быстрой ссылки на поля метаданных или применения любых специальных функций, можно воспользоваться кнопкой со стрелкой вправо в правой части поля Формула переименования, чтобы просмотреть и выбрать в списке доступные опции.

Поля метаданных ссылаются на константы в квадратных скобках, например, [Title] или [Subject].

Как статичный текст, константы и поля метаданных, функции Счётчик и Дата вступают в силу при вставке и отображают конкретную панель конфигурации перед добавлением в формулу, как показано на скриншоте выше.

Модифицирующие функции (регистр букв, заменить, подстрока, разделить) изменяют часть формулы затрагиваемую функцией, поэтому перед вводом пользователь должен выбрать часть уже введённой формулы.
Несколько примеров:
- верхний регистр текущего имени файла: [SetCase:U]([F])
- название, как новое имя, но заменить слово "нет" на "никогда": [ReplaceS:нет|никогда]([Title])

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

Меню Управление скриптами

Подпункт Управление скриптами... открывает редактор инструмента Мои скрипты и скрипты разделяют те же особенности, за исключением того, что в этом случае скрипт должен иметь основную функцию, возвратом которой будет текст, использованный в том месте, где его ссылка вводится в формулу переименования. Для того чтобы это работало, имя скрипта должно иметь имя этой функции. Для тестирования предлагается запустить скрипт и в редакторе появится окно сообщения с результатом функции.
Доступ к внутренней функциональности обеспечивается двумя корневыми объектами, один с именем BatchFile, референт обрабатываемого файла IFileObject и именованный объект CurrentField, который содержит файл обрабатывающий текущее имя, или данные передаются в качестве параметра, если функция скрипта используется в режиме изменения.

Таким образом, если мы хотим создать функцию для возврата текста переданного как параметр, можно создать скрипт с именем Reverse и с этим кодом VBScript:

Function Reverse
   Reverse=StrReverse(CurrentField.Value)
end Function

И использовать его в формуле переименования в режиме изменения для инвертирования в этом примере поля темы: [Reverse]([Subject])

Один из возможных примеров использования объекта BatchFile в JScript:

function CreationDatePlusOne() {
    if (BatchFile.Metadata.CreationDate !== undefined) {
        var dt = new Date(BatchFile.Metadata.CreationDate);
        dt.setDate(dt.getDate() + 1);
        return dt.toLocaleDateString()
    }
}

Он возвращает дату создания поля метаданных плюс один день и может быть использован в формуле переименования этого пути: [Title]_[Subject]_[CreationDatePlusOne]

Инструмент можно использовать также для организации файлов в структуре папок. Эти файлы могут быть переименованы и перемещены в новую или существующую папку, используя формулу переименования для создания имени нового файла и папки. Чтобы определить, что какая-то часть формулы переименования относится к имени папки, вместо нового имени файла надо только добавить разделитель имени папки, символ "\" обратный слэш для разделения частей названия папок из прошлой части от нового имени. Можно построить полный или относительный путь к файлу.
Например: "C:\PDFs\[Author]\[Title]\[F]", или "[Author]\[Title]\[F]".