Модули для задач\Директория\Замена типов файлов


Функция ПередОткрытием()

    Задача = Этот.Владелец.Параметр;
    Если (Задача=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) Тогда	
		Задача.Владелец.Обновить();
	Конец;
	Задача.Выбранный(Результаты);

Конец


Помощь сайту
Yandex-деньги
  • 4100170082825
Кошелек Scrill
  • moolex@moolex.ru