Имя: Пароль:
1C
1С v8
аналог ТекКаталог()
0 zarik
 
20.06.14
05:49
Коллеги, подскажите, есть ли в 8.2 аналог из 7.7 ТекКаталог(), вроде всё перерыл, не могу найти. В 7.7. реализовано следующим образом, проверяется ТекКаталог() (который сейчас откроется для выбора файла) , и если он отличается от нужного, то подставляется нужный.
1 Cube
 
20.06.14
05:52
(0) А без проверки сразу присвоить нужный каталог религия запрещает?
2 zarik
 
20.06.14
06:00
да нет, но дело в том, что есть определенный каталог, в котором хранятся куча подкаталогов, и пользователю не обязательно каждый раз возврощаться в головной каталог, но если пользователь открывал какой нибудь другой файл совсем из другого каталога, его необходимо вернуть к нужному каталогу потом
3 zarik
 
20.06.14
06:01
)) както запутано описал
4 Wobland
 
20.06.14
06:01
каждый раз нужный присваивать не хотим, но когда-то потом хотим. я правильно понял?
5 zarik
 
20.06.14
06:02
сейчас выложу как это реализовано в 7.7
6 Cube
 
20.06.14
06:02
(2) Вообще-то, это стандартное поведение винды (и 1С соответственно тоже), если каталог вручную не пытаться устанавливать...
7 zarik
 
20.06.14
06:13
ну вот так сделано в 7.7.

Файл = СокрЛП(ВыбФайл);
Путь = "";
Пока Найти(Файл,"\")>0 Цикл
    Путь = Путь + Выделить(Файл,"\")+"\";    
КонецЦикла;
Если Путь="" Тогда
    ТекПуть = ФС.ТекКаталог();
    Путь = "\\КаталогСКучейДргуихКаталогов\";
    Если Найти(ВРег(ТекПуть),Врег(Путь))>0 Тогда
       Путь=ТекПуть;    
    КонецЕсли;
КонецЕсли;
8 Wobland
 
20.06.14
06:18
>Путь = Путь + Выделить(Файл,"\")+"\"
а что это такое?
9 Cube
 
20.06.14
06:22
(7) Это пробовал?

ДиалогВыбораФайла.Каталог (FileDialog.Directory)
ДиалогВыбораФайла (FileDialog)
Каталог (Directory)

Использование:
Чтение и запись.

Описание:
Тип: Строка.
Содержит значение текущего каталога. В режиме выбора каталога может использоваться для определения выбранного каталога.

Доступность:
Тонкий клиент, веб-клиент, толстый клиент.

Примечание:
В режиме запуска "Веб-клиент" позволяет только получить значение текущего каталога.
10 zarik
 
20.06.14
06:23
(8) рассматривал такой вариант, но Каталог() заполняется только если файл выбран, а в самом начале выбора его значение = ""
11 Wobland
 
20.06.14
06:26
Диалог=Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
    Диалог.МножественныйВыбор=Ложь;
    Диалог.Фильтр="Документы Word|*.doc|Все файлы|*.*";
    Диалог.Каталог="c:\temp";
    Если Диалог.Выбрать() Тогда
12 Cube
 
20.06.14
06:29
(10) Тогда тебе проще создать реквизит формы и хранить в нем последний использованный каталог...
13 zarik
 
20.06.14
06:37
Спосибо, но я отказался от этой идеи на сегодняшний день, погонял код 7.7. и понял, что нагородили там лишнего, чем и ввели в заблуждение, сделал проще, как предлагалось (1), по умолчанию указываю нужный каталог при выборе файла вот и всё, ещё раз всем спасибо