Разработка и Конфигурация · 8 мин
Как открыть папку из 1С: способы для пользователя и разработчика
Как открыть папку из 1С: через команду ЗапуститьПриложение, открытие каталога базы, папки с файлом и общего сетевого ресурса. Примеры кода и решение ошибок.
Задача «открыть папку» в 1С встречается в двух разных ситуациях. Первая — пользовательская: нужно быстро перейти к каталогу, где лежит прикреплённый к документу файл, выгрузка обмена или сохранённая печатная форма. Вторая — прикладная: в конфигурации требуется программно открыть проводник Windows в заданной папке, например после формирования отчёта или выгрузки файлов для контрагента.
Оба сценария решаются штатными средствами платформы 1С:Предприятие 8.3 без внешних компонент. Ниже разобраны способы для тонкого и веб-клиента, примеры кода на встроенном языке, работа с сетевыми путями и типичные ошибки, из-за которых папка не открывается.
Как пользователю открыть папку с прикреплённым файлом
В типовых конфигурациях на БСП (1С:Бухгалтерия, Управление торговлей, ERP) файлы хранятся либо в информационной базе, либо в томах на диске. Если файл хранится в томе, открыть его расположение можно прямо из карточки файла.
Откройте список присоединённых файлов объекта (кнопка со скрепкой), выделите нужный файл и в меню «Ещё» найдите команду «Открыть каталог файла» или «Показать в проводнике». Система запустит проводник Windows и выделит файл в папке тома. Если команда недоступна, значит файл хранится внутри базы, а не на диске — в этом случае его можно только сохранить на диск через «Сохранить как», а затем открыть папку назначения.
Открытие папки через диалог выбора каталога
Когда нужно указать программе папку — например, каталог выгрузки для обмена с банком или папку для сохранения отчётов, — используется стандартный диалог выбора. В поле пути нажмите кнопку выбора (троеточие), в открывшемся окне перейдите к нужному каталогу и подтвердите выбор. Путь подставится в поле автоматически.
Тот же диалог позволяет создать новую папку кнопкой «Создать папку». Учтите, что при работе через веб-клиент обзор локальных дисков может быть ограничен настройками браузера, и выбор каталога будет работать иначе — часто только через сохранение файла с последующим выбором места.
Программное открытие папки: ЗапуститьПриложение
Для разработчика основной инструмент — глобальный метод ЗапуститьПриложение() (в толстом клиенте) или его асинхронный аналог НачатьЗапускПриложения() для тонкого и веб-клиента. Если передать методу путь к папке, Windows откроет её в проводнике.
&НаКлиенте
Процедура ОткрытьПапку(Команда)
ПутьКПапке = "C:\Выгрузки\";
НачатьЗапускПриложения(, ПутьКПапке);
КонецПроцедурыМетод НачатьЗапускПриложения принимает описание оповещения о завершении, строку команды и необязательный текущий каталог. Если путь содержит пробелы, заключать его в кавычки при передаче папки обычно не требуется — система сама распознает каталог. Для гарантированного открытия именно в проводнике можно вызвать explorer напрямую.
&НаКлиенте
Процедура ОткрытьВПроводнике(Команда)
СтрокаКоманды = "explorer.exe """ + ПутьКПапке + """";
НачатьЗапускПриложения(, СтрокаКоманды);
КонецПроцедурыОткрытие папки с выделением конкретного файла
Проводник Windows поддерживает параметр /select,, который открывает папку и выделяет в ней указанный файл. Это удобно, когда после выгрузки нужно показать пользователю готовый файл.
СтрокаКоманды = "explorer.exe /select,""" + ПолноеИмяФайла + """";
НачатьЗапускПриложения(, СтрокаКоманды);Открытие папки информационной базы
Иногда нужно открыть каталог самой файловой базы — например, чтобы сделать копию файла 1Cv8.1CD или проверить свободное место. В стартовом окне запуска 1С выделите базу в списке и нажмите кнопку настройки (карандаш) — в параметрах указан каталог информационной базы. Скопируйте путь и вставьте его в адресную строку проводника.
Для серверной базы физической папки, доступной пользователю, нет: данные лежат в СУБД на сервере. Открыть можно только служебные каталоги — например, папку временных файлов пользователя или каталог журнала регистрации, если он выведен отдельно.
Работа с сетевыми папками
Для сетевых ресурсов используйте UNC-путь вида \\Сервер\ОбщаяПапка\. Подключённый сетевой диск (например, Z:) тоже работает, но только если буква подключена в той же сессии пользователя, под которым запущен клиент 1С. При работе на сервере 1С:Предприятия код выполняется от имени служебной учётной записи агента, и сетевые диски пользователя ему недоступны — используйте UNC-пути и выдайте учётной записи агента права на ресурс.
Как выбрать действие
Проверка существования папки и обработка ошибок
Перед открытием полезно убедиться, что каталог существует, иначе пользователь получит либо пустое окно, либо ошибку проводника. Проверку делают через объект Файл или функцию НайтиФайлы.
Файл = Новый Файл(ПутьКПапке);
Если Не Файл.Существует() Тогда
СоздатьКаталог(ПутьКПапке);
КонецЕсли;
НачатьЗапускПриложения(, ПутьКПапке);Как проверить результат
Открылась нужная папка, файлы видны
Открылся «Мой компьютер» или ошибка — путь неверный
Существует, слэши корректны, нет лишних кавычек
Опечатка, смешаны \ и /, путь обрезан
UNC-путь открывается и в проводнике Windows вручную
Вручную тоже не открывается — проблема прав или сети
Типичные ошибки и их устранение
Отдельная группа проблем — антивирусы и политики безопасности, блокирующие запуск внешних приложений из 1С. Если код корректен, но проводник не появляется, проверьте журнал антивируса и групповые политики на предмет запрета запуска explorer.exe из дочерних процессов.
Что важно запомнить
Пользователь открывает папку файла командой «Открыть каталог файла», разработчик — методом НачатьЗапускПриложения с путём к каталогу. Для сетевых ресурсов используйте UNC-пути, перед открытием проверяйте существование папки, а на сервере помните про права служебной учётной записи.
Частые вопросы
Как открыть папку из 1С в веб-клиенте?
Напрямую запустить проводник на компьютере пользователя из веб-клиента нельзя — браузер ограничивает запуск локальных приложений. Рабочий вариант: передать файл или создать его на клиенте через расширение работы с файлами, сохранить на диск и дать пользователю открыть папку стандартным диалогом сохранения.
Почему НачатьЗапускПриложения не открывает папку и не выдаёт ошибку?
Чаще всего путь не существует или содержит опечатку — Windows в этом случае молча открывает корневое окно проводника. Добавьте проверку через объект Файл или НайтиФайлы и выведите пользователю понятное сообщение. Также проверьте, не блокирует ли запуск антивирус.
Как открыть папку на сервере 1С с клиентского компьютера?
Только если каталог сервера опубликован как общий сетевой ресурс. Тогда с клиента вызывается НачатьЗапускПриложения с UNC-путём вида \\Сервер\Папка, а учётной записи пользователя должны быть выданы права на чтение этого ресурса.
Можно ли открыть папку и сразу выделить в ней файл?
Да, через параметры проводника: сформируйте строку «explorer.exe /select,» плюс полное имя файла в кавычках и передайте её в НачатьЗапускПриложения. Проводник откроет каталог и подсветит указанный файл.
Чем отличается ЗапуститьПриложение от НачатьЗапускПриложения?
Первый метод синхронный и работает только в толстом клиенте; второй — асинхронный, поддерживается тонким клиентом и соответствует современным требованиям платформы к модальности. В новых разработках используйте только НачатьЗапускПриложения.
Как узнать путь к папке, куда 1С сохранила файл?
Если сохранение выполнял ваш код, путь известен из переменной. Если файл сохранялся типовой обработкой, путь обычно показывается в поле настройки каталога обмена или в сообщении после выгрузки. Для присоединённых файлов путь к тому хранения виден в настройках томов в разделе администрирования.