Рекурсивная функция создания вложенных каталогов

08.12.07

Разработка - Универсальные функции

Рекурсивная функция создания вложенных каталогов
Навеяно http://www.infostart.ru/articles/256/ Символ № используется как конец обработанной части строки
Функция СущКат(Кат) экспорт
	
	Если СтрДлина(Кат)<4 Тогда Возврат 1 КонецЕсли;
	Атриб=\"\";
	ФС.АтрибутыФайла(Кат, ,Атриб);
	Если Сред(Атриб,4,1)=\"1\" Тогда Возврат 1 КонецЕсли;
	Возврат 0;
КонецФункции

Процедура создкат(Знач Кат) экспорт
	
    
	Если (Прав(Кат,1)<>\"\\") и (Прав(Кат,1)<>\"№\")  Тогда Кат=Кат+\"\\" КонецЕсли;
	Если Найти(Кат,\"№\")=0 Тогда
	
		КолБуквДиска=Найти(Кат,\":\")-1;
		Кат=Лев(Кат,КолБуквДиска+2)+\"№\"+Прав(Кат,СтрДлина(Кат)-(КолБуквДиска+2));
	
	КонецЕсли;
	
	
    ПозНом=Найти(Кат,\"№\");
	Если СущКат(Лев(Кат,ПозНом-2))=0 Тогда ФС.СоздатьКаталог(Лев(Кат,ПозНом-2)) КонецЕсли;
	
	Если Найти(Кат,\"№\")=СтрДлина(Кат) Тогда Возврат КонецЕсли;
	

	Кат=Лев(Кат,ПозНом-1)+Прав(Кат,СтрДлина(Кат)-ПозНом);
	ПозНом=Найти(Прав(Кат,СтрДлина(Кат)-(ПозНом-1)),\"\\")+ПозНом-1;
	Кат=Лев(Кат,ПозНом)+\"№\"+Прав(Кат,СтрДлина(Кат)-ПозНом);
	
	
	
	СоздКат(Кат);
	
	
КонецПроцедуры

См. также

Универсальные функции Программист Платформа 1С v7.7 Россия Абонемент ($m)

В библиотеку собраны различные функции по работе с документами, журналами, типами данных, строками, датой и временем, таблицами значений, Excel, файлами, XML, JSON, Http-сервисами, SMTP серверами и т.п.

1 стартмани

22.12.2023    1615    14    user706545_kseg1971    0    

5

Универсальные функции Программист Платформа 1С v7.7 1C77 Россия Бесплатно (free)

Получение реквизитов контрагентов из 1С:Контрагент для старых конфигураций под 1с 7.7.

25.04.2022    2490    zhenyat    7    

8

Универсальные функции Программист Платформа 1С v7.7 Россия Бесплатно (free)

Функция выводит таблицу значений в табличный документ. (v7.7) Особенно полезно при отладке. Не нужно вносить изменения в код, вызываем функцию как вычисляемое выражение при останове. Если таблица обрабатывается в несколько этапов, можно вывести её после каждого и визуально проследить эволюцию.

30.06.2021    5448    Zoltan_Black    11    

2

Универсальные функции Системный администратор Программист Платформа 1С v7.7 1C77 Абонемент ($m)

Установка принтера по умолчанию в 1С 7.7. Обработка может быть полезна в том случае, когда нужно установить принтер по умолчанию, а доступа к рабочему столу нет (например, терминальный режим без рабочего стола или remoteApp)

1 стартмани

13.02.2019    14098    4    alsen    3    

5

Универсальные функции Программист Платформа 1С v7.7 1C77 1С:Комплексная 7.7 Абонемент ($m)

Предлагается набор функций 1с 7.7 для формирования строки json стандартными средствами.

1 стартмани

10.12.2018    11048    malovandrey    7    

19

Универсальные функции Работа с интерфейсом Программист Платформа 1С v7.7 1C77 Россия Абонемент ($m)

В статье дано описание создания индикатора на форме в среде разработки 1С:Предприятие 7.7 исключительно типовыми средствами.

1 стартмани

27.09.2016    18954    2    HAMMER_59    6    

2
Оставьте свое сообщение