diff --git a/src/cf/Catalogs/узЗадачи/Ext/ManagerModule.bsl b/src/cf/Catalogs/узЗадачи/Ext/ManagerModule.bsl
index 17fb2deeb..6f1c143a2 100644
--- a/src/cf/Catalogs/узЗадачи/Ext/ManagerModule.bsl
+++ b/src/cf/Catalogs/узЗадачи/Ext/ManagerModule.bsl
@@ -49,4 +49,42 @@
+ " " + Формат(ТекущаяДата(),"ДФ=yyyy-MM-dd");
Возврат пКомментарииВКоде;
-КонецФункции
\ No newline at end of file
+КонецФункции
+
+Функция ПолучитьПолныйПутьЗадачи(Задача) Экспорт
+
+ Массив = Новый Массив;
+
+ ЗаполнитьМассивИерархии(Задача, Массив);
+
+ Разделитель = ПолучитьРазделительПутиКлиента();
+ Путь = "";
+
+ Для Каждого СтрокаМассива ИЗ Массив Цикл
+ Путь = СтрокаМассива + Разделитель + Путь;
+ КонецЦикла;
+
+ Возврат Путь;
+
+КонецФункции
+
+Процедура ЗаполнитьМассивИерархии(Задача, Массив)
+
+ НазваниеДляПапки = СобратьНазваниеДляПапки(Задача.Наименование, Задача.Код);
+ Массив.Добавить(НазваниеДляПапки);
+
+ Если ЗначениеЗаполнено(Задача.Родитель) Тогда
+ ЗаполнитьМассивИерархии(Задача.Родитель, Массив);
+ КонецЕсли;
+
+КонецПроцедуры
+
+Функция СобратьНазваниеДляПапки(Наименование, Код)
+
+ Шаблон = "#%1 %2";
+ СокращенноеНаименование = Лев(Наименование, 30);
+ Результат = СтрШаблон(Шаблон, Код, СокращенноеНаименование);
+
+ Возврат Результат;
+
+КонецФункции
\ No newline at end of file
diff --git a/src/cf/Catalogs/узЗадачи/Forms/ФормаСписка/Ext/Form.xml b/src/cf/Catalogs/узЗадачи/Forms/ФормаСписка/Ext/Form.xml
index 2149506cc..279202317 100644
--- a/src/cf/Catalogs/узЗадачи/Forms/ФормаСписка/Ext/Form.xml
+++ b/src/cf/Catalogs/узЗадачи/Forms/ФормаСписка/Ext/Form.xml
@@ -41,6 +41,12 @@
Form.Command.КомандаПоказатьСкрытьЗадачи
+
@@ -487,5 +493,20 @@
КомандаПоказатьСкрытьЗадачи
+
+
+
+ ru
+ Создать иерархию задач на диске
+
+
+
+
+ ru
+ Создать иерархию задач на диске
+
+
+ СоздатьИерархиюЗадачНаДиске
+
\ No newline at end of file
diff --git a/src/cf/Catalogs/узЗадачи/Forms/ФормаСписка/Ext/Form/Module.bsl b/src/cf/Catalogs/узЗадачи/Forms/ФормаСписка/Ext/Form/Module.bsl
index 920d559cd..5b5aa1a9b 100644
--- a/src/cf/Catalogs/узЗадачи/Forms/ФормаСписка/Ext/Form/Module.bsl
+++ b/src/cf/Catalogs/узЗадачи/Forms/ФормаСписка/Ext/Form/Module.bsl
@@ -67,3 +67,53 @@
ПараметрКомпоновки = Список_Параметры.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("СкрыватьЗадачиСОпределеннымСтатусом"));
Список_Параметры.УстановитьЗначениеПараметра("СкрыватьЗадачиСОпределеннымСтатусом",НЕ ПараметрКомпоновки.Значение);
КонецПроцедуры
+
+&НаСервере
+Функция ПолучитьПолныйПутьЗадачи(ЗадачаСсылка)
+
+ ПолныйПутьЗадачи = Справочники.узЗадачи.ПолучитьПолныйПутьЗадачи(ЗадачаСсылка);
+ Возврат ПолныйПутьЗадачи;
+
+КонецФункции
+
+&НаКлиенте
+Процедура СоздатьИерархиюЗадачНаДиске(Команда)
+
+ Каталог = ВыбратьКаталог(РежимДиалогаВыбораФайла.ВыборКаталога, "Выберите каталог");
+
+ Если Каталог = Неопределено тогда
+ Возврат;
+ КонецЕсли;
+
+ ПолныйПутьЗадачи = ПолучитьПолныйПутьЗадачи(Элементы.Список.ТекущиеДанные.Ссылка);
+
+ Если НЕ ЗначениеЗаполнено(ПолныйПутьЗадачи) Тогда
+ Сообщить("Не удалось получить путь для задачи");
+ Возврат;
+ КонецЕсли;
+
+ ОбъедененныйПуть = Каталог + ПолучитьРазделительПутиКлиента() + ПолныйПутьЗадачи;
+
+ ОписаниеОповещения = Новый ОписаниеОповещения("СоздатьИерархиюЗадачНаДиске_Продолжение", ЭтотОбъект);
+ НачатьСозданиеКаталога(ОписаниеОповещения, ОбъедененныйПуть);
+
+КонецПроцедуры
+
+Процедура СоздатьИерархиюЗадачНаДиске_Продолжение(ИмяКаталога, ДополнительныеПараметры) Экспорт
+
+ Сообщить("Создан каталог "+ИмяКаталога);
+
+КонецПроцедуры
+
+&НаКлиенте
+Функция ВыбратьКаталог(Режим, Заголовок)
+
+ Диалог = Новый ДиалогВыбораФайла(Режим);
+ Диалог.Заголовок = Заголовок;
+ Диалог.ПредварительныйПросмотр = Ложь;
+
+ Если Диалог.Выбрать() Тогда
+ Возврат Диалог.Каталог;
+ КонецЕсли;
+
+КонецФункции