Как программно узнать каталог текущего пользователя?

1. ksemenov 26.05.11 11:59 Сейчас в теме
Нужно получить каталог текущего пользователя из конфигуратора, какая есть функция??
Alex_warrior; +1 Ответить
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
44. Xershi 1500 25.03.18 14:25 Сейчас в теме
(1) насколько помню для семерки чтобы создать пользователя нужно было указывать каталог.
Но с выходом 8 версии это упразднили.
Теперь есть функция
СоздатьКаталог

КаталогВременныхФайлов

Плюс в типовых конфигурациях для каждого пользователя можно переопределить каталог сохранения данных. В справочнике пользователя есть реквизит настроек каталог для сохранения файлов.
Думаю это то что вам нужно!
Или же на клиенте вы можете определить операционную систему и имя пользователя.
Затем скриптами можете сами вычислить путь по умолчанию или ими же получить каталог сохранения настроек пользователя, но это конечно для винды. Для линукса возможно что-то есть похожее!
Tworozhok; +1 Ответить
2. nikpan@e1.ru 23.08.12 07:46 Сейчас в теме
Странный вопрос "Нужно получить каталог текущего пользователя из конфигуратора" помню такое было было в 7.7 при настройке пользователя, но в 8-ке такого не встречал. Или вы имеете ввиду тот католог, где хранятся фото для номенклатуры и другие докукменты.. Намного проще админить этот католог с помощью средств Windows и системного администратора.
3. nikpan@e1.ru 23.08.12 07:47 Сейчас в теме
Опишите необходимость этой функции и тогда все станет понятно.
4. Rom_Kat 16 23.08.12 09:03 Сейчас в теме
Вы наверное имеете ввиду каталог пользователя системы. Для этого я бы использовал объект wscript.shell.
5. пользователь 24.08.12 22:34
Сообщение было скрыто модератором.
...
6. Igor87 02.09.12 23:31 Сейчас в теме
Можешь попробывать

WshShell = Новый COMОбъект("WScript.Shell");
ТекКаталогРаботыПользователя = WshShell.CurrentDirectory;

если я правильно понял твой вопрос
7. Поручик 4683 03.09.12 01:00 Сейчас в теме
Вот деб.илы, этой теме уже свыше года. Первый пост - 26.05.11
8. starik-2005 3052 21.03.18 11:57 Сейчас в теме
Кстати, актуальная тема. WSScript.Shell возвращает какую-то хрень, а не каталог пользователя, который открывается при указании пустого каталога в диалоге выбора файла. Вот как его узнать? Откуда 1С знает, какой каталог открывать?
9. kuzev 47 21.03.18 12:22 Сейчас в теме
(8) это текущий каталог ОС
10. starik-2005 3052 21.03.18 12:23 Сейчас в теме
(9) И... Что написать в 1С, чтобы его узнать? На клиенте...
11. starik-2005 3052 21.03.18 12:29 Сейчас в теме
(9) Кстати, вот я в хроме нажимаю Ctrl+S - открывается какой-то условный каталог, в который я когда-то записывал данные. Потом я в 1С что-то решил открыть (внешнюю обработку, например) и в диалоге открытия файла вижу уже совершенно другой каталог. Нажимаю Ctrl+R, пишу "cmd" и вижу там третий каталог.

Фактически меня интересует, куда сохраняет 1С каталог, из которого я что-то открывал или в который я что-то сохранял последний раз из 1С...
12. zarucheisky 21.03.18 12:29 Сейчас в теме
13. starik-2005 3052 21.03.18 12:32 Сейчас в теме
(12) ну у автора вообще там УТ 11, так что 7.7 - это не про это ))) Но все же интересно, есть ли такая возможность в современном продукте. В делфи было точно.
14. zarucheisky 21.03.18 12:35 Сейчас в теме
КаталогДокументов() .

Для режимов запуска "Тонкий клиент" и "Толстый клиент":
в MS Windows: <Personal>;
в Linux: выбирается из надстройки gnome. Если gnome не указан, то вернем домашний каталог <Home>.
Для режимов запуска "Веб клиент" (реализуются только в расширении для работы с файлами):
при использовании веб-браузера Microsoft Internet Explorer: <Personal>;
при использовании веб-браузера Mozilla Firefox (с помощью XPCOM интерфейса nsIDirectoryServiceProvider):
в MS Windows: <Personal>;
в Linux: <Home>;
в MacOS: <Docs> ;
в OSX: <UsrDocs>.
Для мобильной платформы:
iOS: Подкаталог \Documents относительно домашней директории приложения. Стандартный каталог, который доступен для обмена файлов в iTunes с помощью функции NSHomeDirectory().
Android:<Абсолютный путь>, может различаться на разных устройствах. Например:
/mnt/sdcard/Android/data/com.e1c.mobile/files/
/storage/emulated/0/Android/data/com.e1c.mobile/files/
Windows:
для смартфона: путь внутри домашней директории приложения (C:\Users\<User>\AppData\Local\Packages\<Application>\RoamingSt­ate). Каталог не доступен при подключении к ПК. Доступ с ПК можно обеспечить только с помощью утилиты ISETool из комплекта Windows Phone SDK.
для планшета: путь внутри домашней директории приложения C:\Data\Users\<User>\DefApps\APPDATA\Local\Packages\ <Application>\RoamingState)
16. starik-2005 3052 21.03.18 14:54 Сейчас в теме
(14)
КаталогДокументов()
Ну этот метод возвращает каталог документов (типа МоиДокументы) всегда, а не текущий каталог приложения, использованный последний раз.

Но тут проблема юзабилити: допустим, пользователь открыл некую форму из некого объекта и в ней нажал "сохранить", появился диалог выбора файлов, в котором он спустился по дереву в какое-то свое родное место, после чего нажал "Сохранить". В итоге описание оповещения вернуло полное имя файла, в этот файл я и записал нечто.

Дальше юзер через минуту еще раз открывает форму для другого объекта, и хочет записать этот объект в файл. В принципе я могу ему сгенерировать имя файла, но не могу получить тот самый путь, который будет при вызове диалога выбора файла. Возможно пользователь захочет зайти в подкаталог этого каталога для сохранения нового файла, а может быть сохранит и в этот. Если каждый раз открывать ему каталог документов, то он возненавидит этот функционал.

В идеале все должно работать так: юзер выбирает объект, нажимает "выгрузить", открывается форма с уже сгенерированным именем файла и путем. Он нажимает прямо в форме "Сохранить и закрыть", выбирает второй объект, нажимает "Выгрузить", "Сохранить и закрыть". В идеале даже "Сохранить и закрыть" - лишнее, но нужно дать юзеру выбрать файл в случае чего.

Пока реализовал так: жамкаем "Выгрузить", открывается диалог выбора файла, в наименование генерируется нужное наименование. Но фишка вся в том, что хотелось бы вообще от этого диалога по-возможности отказаться, когда все параметры есть. Но тут проблема с выбором каталога. Остается колхозить сохранение пути в каком-то месте для конкретного юзера, но может так оказаться, что он зайдет в систему с другого компа...

Кароче, без получения пути к текущему каталогу грустно!
18. Cooler 22 23.03.18 22:03 Сейчас в теме
(16)
В принципе я могу ему сгенерировать имя файла, но не могу получить тот самый путь, который будет при вызове диалога выбора файла.

Поскольку при вызове диалога сохранения файла открывается стандартный диалог проводника (если речь идет про Windows?), то полные имена последних открывавшихся и сохранявшихся файлов хранятся в реестре, в разделе:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\­Explorer\ComDlg32\OpenSaveMRU\*

Кроме того, там же есть и разделение по типам файлов, например, для XML:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\­Explorer\ComDlg32\OpenSaveMRU\XML

для XLSX:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\­Explorer\ComDlg32\OpenSaveMRU\xlsx

и так далее.

Примеры работы 1С с реестром есть, сначала читаем параметр MRUList, по его первому символу определяем нужный параметр из диапазона a - j, считываем из него полное имя последнего файла и выделяем каталог. Профит!
19. starik-2005 3052 23.03.18 22:24 Сейчас в теме
(18) странно, но не работает. Вы пробовали?
20. Cooler 22 23.03.18 22:33 Сейчас в теме
(19)
не работает.
Что именно "не работает"? Не удается определить нужный ключ? Или прочитать его из реестра? Или выделить имя файла?
Вы пробовали?
Ну уж нет, не настолько мне нужны "полсоверена", просто посмотрел в редакторе реестра.
21. starik-2005 3052 23.03.18 22:50 Сейчас в теме
(20) Во-первых, у меня нет в реестре ветки OpenSaveMRU, но есть HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\­Explorer\ComDlg32\OpenSavePidlMRU.

Во-вторых, при выборе файла в этой ветке реестра ничего не меняется. Вот как-то так...
Прикрепленные файлы:
22. Cooler 22 23.03.18 22:54 Сейчас в теме
(21)
Во-первых, у меня нет в реестре ветки OpenSaveMRU
Возможно, я сейчас за компом с XP.
Во-вторых, при выборе файла в этой ветке реестра ничего не меняется.
Естественно. Должно меняться (если это та самая ветка) в разделе:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\­­Explorer\ComDlg32\OpenSavePidlMRU\*
23. Cooler 22 23.03.18 23:11 Сейчас в теме
+(22) Заглянул в Win2008 R2 - да, ветка теперь называется OpenSavePidlMRU, но вот параметры в ней теперь бинарные, похоже, в UTF-8, да еще и скомпонованы как-то заковыристо.

Наверняка в Windows 7 и более поздних версиях то же самое, а раньше в XP была просто строка.
24. starik-2005 3052 24.03.18 10:46 Сейчас в теме
(23)
но вот параметры в ней теперь бинарные
Да, и они не меняются при выборе файла из управляемого интерфейса 1С.
25. Cooler 22 24.03.18 11:15 Сейчас в теме
(24)
и они не меняются при выборе файла из управляемого интерфейса 1С.
Боюсь, что вы не разобрались: они меняются, но не все сразу, а только один из них, самый "древний". И его номер становится первым в индексе, который описан в параметре MRUList или как он там теперь обзывается (последний в разделе).

То есть, если в этом параметре первые байты, к примеру, 00 08, то имя последнего открывавшегося файла сохранено в параметре:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\­­­Explorer\ComDlg32\OpenSavePidlMRU\*\08

При следующем сохранении этот параметр не изменится, а изменится (затрется) самый старый, например, 03. И тогда параметр MRUList уже будет начинаться с 00 03.

Дело за малым - вытащить имя файла из бинарных данных. :)

P.S. Хотя я сомневаюсь, что это вообще нужно: проверил работу недавно использовавшейся мной обработки по загрузке данных из Excel, там тоже используется диалог выбора файла.

Так вот, у меня сложилось впечатление, что если в параметрах ДиалогВыбораФайла() вообще не задавать Каталог, то автоматически открывается как раз последняя папка, из которой читались файлы. Похоже, что платформа 1С сама считывает это параметр средствами Windows, если ей не мешать принудительным указанием папки.
26. starik-2005 3052 24.03.18 12:31 Сейчас в теме
(25)
Так вот, у меня сложилось впечатление, что если в параметрах ДиалогВыбораФайла() вообще не задавать Каталог, то автоматически открывается как раз последняя папка, из которой читались файлы.
Или в которую писались - я об этом как раз выше и писал. Дело за малым - получить этот каталог. Индекс - да, меняется, а вот имени файла я не обнаружил.
28. Cooler 22 24.03.18 14:47 Сейчас в теме
(26)
Или в которую писались - я об этом как раз выше и писал. Дело за малым - получить этот каталог.
Так а зачем его получать? Если при следующем сохранении он же и будет предложен автоматически, безо всяких к тому усилий?
29. starik-2005 3052 24.03.18 20:58 Сейчас в теме
(28)
Так а зачем его получать?
Чтобы не заставлять пользователя еще раз открывать диалог выбора файла. Но для того, чтобы записать файл, нужно указать полный путь...
31. Cooler 22 24.03.18 22:07 Сейчас в теме
(29)
Чтобы не заставлять пользователя еще раз открывать диалог выбора файла.
Теперь понятно. Ну, под столь специфическую хотелку 1С функции не предусмотрела. Хотя бы из-за весьма сомнительной ее целесообразности.

И даже вариант вытаскивания последнего записанного файла из реестра я бы не рекомендовал, отзываю свое предложение.

Так что если такое надо, то делайте сами, программно, в толстом клиенте - через СохранитьЗначение(), в тонком - через аналоги, работающие с хранилищами настроек.
15. caponid 21.03.18 12:48 Сейчас в теме
WshShell.SpecialFolders.Item("Desktop") - рабочий стол пользователя..
а всего доступно AllUsersDesktop, AllUsersStartMenu, AllUsersPrograms, AllUsersStartup, Desktop, Favorites, Fonts, MyDocuments, NetHood, PrintHood, Programs, Recent, SendTo, StartMenu, Startup, Templates.
или
wshShell.ExpandEnvironmentStrings("%HOMEPATH%") - полный путь к основному каталогу пользователя из оснастки Локальные пользователи и группы
17. Sei Souma 23.03.18 19:33 Сейчас в теме
У команды
net user [<UserName> {<Password> | *} [<Options>]] [/domain]
net user [<UserName> {<Password> | *} /add [<Options>] [/domain]]
net user [<UserName> [/delete] [/domain]]

Есть параметр каталог по умолчанию.
/homedir:<Path>

Попробуйте посмотреть как ваш пользователь в AD заведен, и посмотрите его параметры.
27. ksnik 586 24.03.18 13:36 Сейчас в теме
скриптом
|If FSO.FolderExists(colEnvVars(""userprofile"") & FolderName1) Then
| GoSubFolders colEnvVars(""userprofile"") & FolderName1
|End If
как в https://infostart.ru/public/121383/
30. starik-2005 3052 24.03.18 21:09 Сейчас в теме
(27) переменная окружения "userprofile" всегда одинаковая, а пользователь папку любую выбрать может. Вот открыл он в одном месте одну папку (например, "рабочий стол, папка1, папка2, папка3"), записал туда объект. Потом открывает второй объект, нажимает "Записать", в у него открывается форма с некоторыми галочками, например. от которых что-то зависит. Имя файла в этой форме есть, а вот полного имени - нет, т.к. последний открытый каталог я получить не могу. Если не указывать каталог совсем, то файл будет писаться вообще в каталог, откуда 1С запущена - что полный бред вообще с точки зрения реализации в платформе. Т.е. пользователю все-равно придется открывать диалог сохранения файла.

Да, можно запоминать путь при выборе файла, но это костыль, т.к. он может просто в 1С через "Открыть" выбрать какой-нибудь файл из жутко далекого места и ему придется еще раз открыть форму выбора файла из моей формы только потому, что я не могу получить имя текущего каталога, который откроется при указании пустого каталога в диалоге выбора файла.
Прикрепленные файлы:
32. spacecraft 24.03.18 22:29 Сейчас в теме
(30) т.е. пользователь предыдущий раз сохранил отчетность на флешку, флешку уже извлек. На другой день в "нужной" обработке без спроса пользователя о месте хранения пытаться записать файл в по несуществующему пути?
33. Cooler 22 24.03.18 22:44 Сейчас в теме
(32)
На другой день в "нужной" обработке без спроса пользователя о месте хранения пытаться записать файл в по несуществующему пути?
Вот-вот, именно это я и имел в виду в своем последнем сообщении.

Но тут можно хотя бы перед записью программно проверять существование папки назначения. Хотя от замены флешки (на другую под той же буквой) и это не спасет.

Кроме того, мерещатся мне проблемы и похуже: пользователь может сначала что-то выгрузить в XML, потом открыть какой-нибудь внеший ERF и сохранить отчетик в XLS, - и все в разных папках. Что ему предложит такая функция, если он снова решит что-то выгрузить в XML? Получается, функция должна учитывать тип файла, иначе велик риск без спросу выгрузить "не туда".

Чтобы этот риск уменьшить, пусть программист сам озаботится сохранением нужных имен папок.
35. starik-2005 3052 24.03.18 23:11 Сейчас в теме
(33) пользователь должен получить возможность записать файл, не открывая диалога выбора файла лишний раз. Это как минимум уменьшает количество кликов, что сказывается на производительности труда. Но некоторым, конечно, этот термин ничего не говорит - и правильно, загнивающий запад путь об этом думает.
36. Cooler 22 24.03.18 23:36 Сейчас в теме
(35)
Это как минимум уменьшает количество кликов, что сказывается на производительности труда.
Зато увеличивает вероятность ошибок, что тоже небезразлично для той же производительности.
38. spacecraft 24.03.18 23:57 Сейчас в теме
(35) если бы мне word записывал файл без спроса выбора каталога и имени файла, а записывал новый файл в последний открытый каталог... я бы его быстро снес нафиг.
Так что не надо думать о пользователях как о баранах.
39. starik-2005 3052 25.03.18 11:01 Сейчас в теме
(38) открываете файл в ворде с флешки, вынимаете флешку - и что? Нажимаете Ctrl+S - и куда пишется файл? Вы вообще не понимаете, о чем пишите. И доказательства тут ни при чем.
40. spacecraft 25.03.18 11:15 Сейчас в теме
(39)
открываете файл в ворде с флешки, вынимаете флешку - и что? Нажимаете Ctrl+S - и куда пишется файл?

Путаете теплое с мягким.
В данном случае он не пишет по последнему пути открытым пользователем. Он пишет в конкретный файл, который открыт/сохранен пользователем с выбором пути. О чем вам уже несколько раз предлагали: запоминайте сами расположение для сохранения нужных файлов, а не использовать "последний текущий каталог".
Ваше же желание выглядело бы так: Открыли "Файл1" из "Мои документы". Открыли "Файл2" с флешки. На файле "Файл1" нажимаем Ctrl+S и он записывается по последнему текущему пути на флешке.
41. starik-2005 3052 25.03.18 11:54 Сейчас в теме
(40)
О чем вам уже несколько раз предлагали: запоминайте сами расположение для сохранения нужных файлов, а не использовать "последний текущий каталог".
Так и приходится делать. Но все-равно первый раз пользователь должен открыть этот долбаный каталог, чтобы было что запомнить.

Мое желание только в воспаленном мозгу так выглядело. В реальности оно куда утилитарнее: есть форма сохранения чего-то куда-то. Пользователь нажимает на этом чем-то кнопку, которая открывает форму с некоторым списком элементов. Нужно выбрать из него нечто, поставить галочки (каждый раз это могут быть различные галочки и прочее). От этих галочек и прочего зависит имя файла, при том я могу автоматически понять в ряде случаев какие галочки и прочее нужно выбрать. Т.е. вот у меня есть имя файла, которое я автоматически определил. Иногда не могу - это другой вопрос, к делу не относящийся. Т.е. вот у меня есть имя файла. Без каталога. И для того, чтобы определить этот долбанный каталог, мне нужно заставить пользователя нажать "Сохранить", показать ему этот долбаный диалог, заставить его нажать в нем единственную кнопку "Сохранить", и только после этого записать файл. Если бы я мог получить каталог сразу, то я могу бы сохранить файл по кнопке "Сохранить" из формы без вызова диалога. И если пользователю нужно было бы изменить имя файла, он бы нажал "..." после его долбаного имени. И т.к. у меня нет возможности получить этот долбаный каталог, мне придется его сохранять где-то в параметрах долбаного пользователя, при этом я сохраню имя только того долбаного каталога, который пользователь удосужится выбрать из моей долбаной формы, а если он вдруг минут пять назад уже открывал какой-нибудь файл из какой-нибудь другой формы, который лежит в стапиццот вложенных каталогов на хрензнаеткаком диске, то мне его придется заново заставить пройти этот путь, если, конечно, он не сохранит оное хозяйство в своем "избранном".

В общем крайне неэргономично...
42. spacecraft 25.03.18 12:07 Сейчас в теме
(41) вот, это уже ближе к делу.
Как вариант, можно хранить каталог по-умолчанию, который при первом запуске обработки предложить пользователю указать в явном виде. И сохранять его для данного пользователя.
Дать возможность менять этот путь в настройках.
Дать возможность пользователю сохранять с показом диалога выбора каталога. И сохранять этот путь.
Все зависит от конкретной логики в обработке.
Но тупо пытаться писать в последний "текущий" каталог, который может быть выбран совсем не из обработки, совсем не к месту.
43. starik-2005 3052 25.03.18 12:45 Сейчас в теме
(42)
пытаться писать в последний "текущий" каталог, который может быть выбран совсем не из обработки, совсем не к месту
Не совсем. Даже наоборот. Только человек с безграничным ЧСВ будет думать, что его форма сохранения какого-то результата - это пуп Земли. Пользователи работают с различными данными в 1С. Вот бухгалтер открыла отчет (ОСВ), сохранила его в папку с отчетами, которая находится на каком-нить корпоративном файлопомоечном диске, до которого еще добраться надо. Вот нажала она "Сохранить нечто" - открывается обработка, которую написал я. И ей к той эксельной ОСВ нужно добавить это мое нечто (а может это будет не ОСВ, а может и вообще не отчет, а другая обработка, сохраняющая какое-то нечто). Некто из небожителей уже, например, определил, как должно это мое нечто называться с точностью до регистра символов, поэтому заставлять это все писать в имени файла пользователя - редкая садюга может. Но и тут есть нюансы - галочки и списочки. Собрал я имя файла. Запомнил, я, допустим, этот долбаный каталог (который - опять же, по Вашей логике - может находиться на флешке, которую уже небожителям отдали, а сейчас там вторая флешка, на которой нет того каталога, да и дата, например, изменилась - каталог нужен с другой датой, а его уже создали, когда сохраняли эту ОСВ, например) и бухгалтерша лоснящейся от жары и возбуждения рукой жмет "Сохранить", в итоге я вижу, что такого каталога нет ни разу и вынужден снова открыть ей этот долбанный диалог выбора файла. Она его три минуты назад уже видела или даже создала, а я ей "снова здорова"... Это не хорошо...
45. Cooler 22 25.03.18 15:26 Сейчас в теме
(43)
бухгалтерша лоснящейся от жары и возбуждения рукой
Аж мурашки по коже... "Тебе бы не картины, начальник, тебе книжки писать!" (с)

Если прямо-таки жизни нет без такого функционала, так все уже сказано: "венда" хранит список последних открывавшихся файлов в разделе реестра HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComD­lg32\OpenSavePidlMRU\, есть примеры кода на С для извлечения этой информации, а если вы не можете их найти или перевести на 1С, то это уже ваша проблема, "Убунту поставь и не мучайся". :-P
46. spacecraft 25.03.18 15:47 Сейчас в теме
(43) очень животрепещущая история. Только один маленький нюанс.
В промежутке между сохраненным отчетом и нажатие "Сохранить нечто" звонит начальник и матом кроет, где тот крендельный ежедневный отчет ему на почту. Админ бездельник почту не настроил на отправку из программы, и ей приходится создавать крендельный отчет, сохранять его в файл (соответственно в определенный каталог). Тут она вспоминает, что горе программист помимо отчета заставляет ее зачем-то нажимать эту гребаную кнопку "Сохранить нечто". Переключается на эту обработку и нажимают нужную кнопку. Фу. Вроде успела. Пора домой. После выходных ее вызывают на ковер и начинают орать: почему она ...(тут не цензурно) отчет не сдала?
Она вся в слезах: Как не сдала? Все сделала. Отчет сохранила. Крендельную кнопочку нажала.
Кто виноват? И что делать? извечные вопросы...
Если этот отчет нужно вместе с еще какой-то хренью сдавать, то может предусмотреть возможность сохранять это все в одном месте одной программой и одной кнопкой?
В любом случае, лишний раз напрячь (если нет желания автоматизировать) может быть выгоднее, чем подставить.
47. starik-2005 3052 25.03.18 18:04 Сейчас в теме
(46)
В любом случае, лишний раз напрячь
Узнаю почерк мастера )))

После того, как она эту хрень сохранила, ее нужно будет отправить контроллеру, который должен двумя подписями это подписать и отправить небожителям, которые этого начальника с его матами сами пошлют куда угодно )))
48. Cooler 22 25.03.18 18:22 Сейчас в теме
(47)
нужно будет отправить контроллеру
Если тут подразумевается человек, а не электронное устройство (хотя с учетом данного постановщика задачи исключать нельзя ничего!), то его должность пишется по-другому: "контролёр".
49. starik-2005 3052 25.03.18 18:34 Сейчас в теме
(48)
то его должность пишется по-другому
Выдохся? )))
50. Cooler 22 25.03.18 18:42 Сейчас в теме
(49)
Выдохся? )))
Можно и так сказать. А можно и по-другому: "Надоел(о)!"

Ведь все уже разжевано: и как можно решить эту задачу, и почему ее не надо решать. Дальше - своими ножками, флаг в руки, барабан на задницу!
51. starik-2005 3052 25.03.18 18:52 Сейчас в теме
(50) ну так и скажите, что "по вопросу ответить нечего, ибо не имею опыта и знаний".
52. Cooler 22 25.03.18 18:59 Сейчас в теме
(51) Как угодно, как угодно... Хотя насчет "знаний" - кто еще вам хоть что-то предложил?

Ну, а от "опыта" в реализации дурных хотелок - береги боже, чем его меньше, тем лучше.
53. starik-2005 3052 27.03.18 16:08 Сейчас в теме
(52)
Ну, а от "опыта" в реализации дурных хотелок - береги боже, чем его меньше, тем лучше.
Именно через это и прокачиваются извилины. От недурацких хотелок скукотищей веет и деградацией.
34. starik-2005 3052 24.03.18 23:09 Сейчас в теме
(32) ну так проверить путь можно - тут как раз проблем нет. а вот получить его, получается, нельзя.

Хотя, да, горе 1с-ники вечно ничего не проверяют - пишут сразу без полного имени файла, а там каталог запуска 1С, в который на нормальном компьютере запись запрещена...
37. spacecraft 24.03.18 23:53 Сейчас в теме
(34) если так трудно понять, что пример был не с точки зрения проверки существования пути, а вообще возможности неверного пути с точки "необходимого" для пользователя, то никакие доказательства тут не помогут. Вас уже ни в чем убедить невозможно. Будут просто отговорки. В прочем это ваш выбор.
54. KillHunter 7 17.07.18 15:02 Сейчас в теме
Средствами 1С -- никак, так как для неё не существует понятия "текущий каталог работы пользователя".



Есть каталог исполняемых файлов -- где лежит экзешник 1С.

Есть каталог временных файлов -- который используется платформой для хранения временных файлов.

Есть, скажем, строка соединения информационной базы, из которой можно вытащить каталог базы в том случае, если она файловая.



Но как таковой "текущий каталог работы пользователя" платформе не нужен.



И хотя получить его, конечно, можно... используя, например, Wscript.shell:


WshShell = Новый COMОбъект("WScript.Shell");
ТекКаталогРаботыПользователя = WshShell.CurrentDirectory;



, но это уже не будет являться _штатным_ средством языка.
55. starik-2005 3052 17.07.18 16:25 Сейчас в теме
(54) ну раз 1С открывает последний каталог при вызове диалога выбора файла с пустым именем каталога, то это говорит как минимум о том, что она это где-то хранит.

А указанный Вами вариант возвращает другой каталог, отличный от того, который последний раз был открыт в 1С.
56. Алексей777 99 24.11.21 22:55 Сейчас в теме
Здравствуйте, Коллеги!
Уже на "носу" 8.3.20 платформа, а работа с файлами: получить каталог загрузки, сохранить в каталог и в сообщении внизу предоставить переход к каталогу в котором файл был сохранен - не реализовано.
Или, подскажите, пожалуйста, у меня устаревшая версия БСП РаботаСФайлами?
57. frkbvfnjh 799 19.09.23 13:07 Сейчас в теме
Начиная с 8.3.1:
КаталогДокументов = Новый Файл(КаталогДокументов());
КаталогПользователя = КаталогДокументов.Путь;
58. user646807_kazako.a911 13 08.04.24 17:26 Сейчас в теме
(57)
И че Начиная с 8.3.1 этот код вернет?!11

КаталогДокументов() "Описание:
Предоставляет доступ к стандартному каталогу документов."

Сохранил файл в папку "1" на раб столе, полный путь "C:\Users\1c_support\Desktop\1"

Вот это
КаталогДокументов = Новый Файл(КаталогДокументов());
КаталогПользователя = КаталогДокументов.Путь;

возвращает "C:\Users\1c_support\Documents"
а надо
"C:\Users\1c_support\Desktop\1"

Вообще мысли, что на профильных сайтах больше специалистов по троллингу сидит чем специалистов, вопросы за последнюю неделю: 1. Как програмно получить имя каталога, в который пользователь сохранял последний раз файл; 2. Как отловить Пометку удаления "НаКлиенте", чтобы оповещение послать в другие формы, что надо данные обновить; 3. Как отследить нажатие клавиши клавиатуры на таб доке и т.п. главное все вопросы до меня уже кто-то задавал, и все это решается, и на мой взгляд все это НУЖНО для удобства работы пользователей, но вместо ответов в каждой теме "а зачем да почему", то-ли гуманитарии одни вместо программистов сидят чтобы пофлудить на форумах то-ли еще чего, я хз. Сорян, накипело.

Решил проблему в лоб, сохраняю при записи файла путь к каталогу в регистр
59. user1880116 08.04.24 18:56 Сейчас в теме
(58)
все вопросы до меня уже кто-то задавал, и все это решается
Подожди, ты хочешь сказать, что ответы на эти вопросы уже есть в интернете? И их можно просто найти и прочитать? Да ну, бред какой-то.
60. user646807_kazako.a911 13 08.04.24 19:21 Сейчас в теме
(59)
Ты еще один любитель пустых бесполезных сообщений?
61. user1880116 09.04.24 07:51 Сейчас в теме
(60)
пустых бесполезных
Да все же ты понимаешь.

И тут же врубаешь спасительную дурку, которая не даёт перенапрячься твоему мозгу, потому что иначе картина мироздания станет нестерпимо неприятной для тебя.
62. пользователь 09.04.24 16:51
Сообщение было скрыто модератором.
...
63. пользователь 09.04.24 21:10
Сообщение было скрыто модератором.
...
64. пользователь 09.04.24 21:52
Сообщение было скрыто модератором.
...
65. пользователь 09.04.24 22:57
Сообщение было скрыто модератором.
...
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот