Модули для задач\Директория\Замена типов файлов
Функция ПередОткрытием()
Задача = Этот.Владелец.Параметр;
Если (Задача=0) Тогда Возврат 0; Конец;
Параметры = Задача.Определить(0, Объекты.Список, Свойства.Наименование, "Параметры");
Параметры.Колонки.Определить(Свойства.Наименование, 0, 150, 1, 1);
Параметры.Колонки.Определить(Свойства.Значение, 0, 150, 1, 1);
Параметры.'Отключить канву объекта' = 1;
П = Параметры.Определить(0, Объекты.Объект, Свойства.Наименование, "JPG");
Если (П.Новый()) Тогда
П.Значение = "jpg";
П.Отмечен = 1;
Конец;
П = Параметры.Определить(0, Объекты.Объект, Свойства.Наименование, "TXT");
Если (П.Новый()) Тогда
П.Значение = "txt";
П.Отмечен = 1;
Конец;
Для Объект Из Задача.Владелец Цикл
Если (Объект.'Это файл'=1) Тогда
ОбъектПараметр = Параметры.Определить(0, Объекты.Объект, Свойства.Наименование, Объект.'Тип файла');
Если (ОбъектПараметр.Значение="") Тогда
ОбъектПараметр.Значение = Объект.'Тип файла';
КонецЕсли;
Конец;
Конец;
Задача.Выбранный(Параметры);
Конец
Функция Выполнить()
// Подменяет расширения файлов по настроенным соответствиям только у отмеченных файлов в директории
Задача = Этот.Владелец.Параметр;
Если (Задача=0) Тогда Возврат 0; Конец;
Параметры = Задача.Определить(0, Объекты.Список, Свойства.Наименование, "Параметры");
Результаты = Задача.Определить(0, Объекты.Список, Свойства.Наименование, "Результат");
Результаты.Колонки.Определить(Свойства.'Путь к файлу', 0, 350, 1, 0);
Результаты.'Отключить канву объекта' = 1;
Результаты.'Отключить отметку' = 1;
Результаты.Очистить();
Для Объект Из Задача.Владелец Цикл
Если ((Объект.Отмечен=1)И(Объект.'Это файл'=1)) Тогда
ТипБыл = Объект.'Тип файла';
Для П Из Параметры Цикл
Если ((П.Отмечен=1)И(П.Наименование=ТипБыл)) Тогда
ПутьКФайлуБыл = Объект.'Путь к файлу';
ПутьКФайлуСтал = Строки.Заменить(ПутьКФайлуБыл,"."+ТипБыл,"."+П.Значение);
рез = Файлы.Переименовать(ПутьКФайлуБыл,ПутьКФайлуСтал);
Если (рез=1) Тогда
Результат = Результаты.Добавить(Объекты.Объект);
Результат.'Путь к файлу' = ПутьКФайлуСтал;
Конец;
Прервать;
Конец;
Конец;
Конец;
Конец;
Если (Результаты.Количество()>0) Тогда
Задача.Владелец.Обновить();
Конец;
Задача.Выбранный(Результаты);
Конец