В процессе разработки и администрирования систем на платформе 1С:Предприятие специалисты часто сталкиваются со специфическим поведением платформы при запуске отладки. Типичный сценарий: на рабочем столе разработчика создано два ярлыка для запуска 1С. Первый ярлык — рабочий, содержащий список баз для пользователей, а второй — служебный (разработческий), настроенный на тестовые и девелоперские базы данных. При открытии тестовой базы в режиме Конфигуратора через второй ярлык и последующем нажатии клавиши F5 (Запуск отладки) платформа неожиданно открывает интерактивное окно запуска 1С (стартер) со списком баз из первого ярлыка, заставляя пользователя вручную искать и выбирать нужную базу, а также повторно вводить логин и пароль.
В этой статье мы подробно разберем, почему возникает эта проблема с точки зрения внутренних механизмов платформы 1С, и рассмотрим по шагам три надежных способа ее решения.
Для начала проанализируем ситуацию и поймем, как взаимодействуют между собой компоненты платформы 1С при запуске системы.
Когда мы запускаем «1С:Предприятие» обычным способом, за это отвечает программа запуска — файл 1cestart.exe (стартер). Для разделения списков баз разработчики часто прописывают в свойствах ярлыков специальные параметры командной строки. Например, для ярлыка разработчика может быть указан ключ /CommonInfoBases, указывающий на альтернативный файл конфигурации списков баз:
"C:\Program Files\1cv8\common\1cestart.exe" /CommonInfoBases "C:\1C_Bases\developer_bases.v8i"
При использовании такого ярлыка стартер считывает базы именно из файла developer_bases.v8i. Мы успешно открываем нужную тестовую базу в режиме Конфигуратора. Однако при нажатии клавиши F5 происходит следующее:
1cestart.exe..v8i теряется).1cestart.exe запускается в стандартном режиме и обращается к файлу настроек по умолчанию — ibases.v8i, который обычно располагается по пути: %APPDATA%\1C\1CEStart\ibases.v8i.Теперь, когда техническая причина ясна, рассмотрим подробнее способы устранения этой проблемы.
Это самый простой и быстрый способ решить проблему без погружения в конфигурационные файлы платформы. Наша задача — сделать так, чтобы отлаживаемая база физически присутствовала в списке баз, который открывается стартером по умолчанию.
Выполним следующие шаги:
После этого база появится в дефолтном файле ibases.v8i. Теперь при нажатии F5 Конфигуратор передаст идентификатор базы, стартер найдет его в стандартном списке и сразу запустит режим «1С:Предприятие» в режиме отладки без лишних диалоговых окон.
Если для вас принципиально важно держать списки баз в разных файлах (например, вы хотите, чтобы пользовательские и разработческие базы никогда визуально не смешивались в одном окне), мы можем «подсказать» стартеру, где искать ваши базы разработки по умолчанию.
Для этого настроим автоматическое подключение общего списка баз через конфигурационный файл платформы. Разберем этот процесс по шагам:
C:\Users\<Имя_Вашего_Пользователя>\AppData\Roaming\1C\1CEStart\ (обратите внимание, что папка AppData по умолчанию может быть скрыта в операционной системе).1CEStart.cfg. Если его там нет, создайте новый текстовый файл с таким именем и расширением.
CommonInfoBases=C:\1C_Bases\developer_bases.v8i
Если путей к файлам баз несколько, вы можете прописать несколько таких строк. Сохраните изменения в файле 1CEStart.cfg.
Что это дает? При запуске отладки через F5 стартер прочитает файл 1CEStart.cfg, автоматически подгрузит базы из указанного файла developer_bases.v8i во внутреннюю память, успешно найдет сопоставление по GUID базы и запустит отладку напрямую.
После того как мы решили проблему с открытием окна выбора баз, часто возникает сопутствующий вопрос: как сделать так, чтобы при запуске отладки система автоматически авторизовалась под нужным пользователем и не требовала ввода логина и пароля?
Для этого в Конфигураторе предусмотрен специальный механизм настройки отладочного запуска:
Альтернативным и более профессиональным решением является настройка доменной авторизации (аутентификации операционной системы):
При такой настройке платформа 1С определит вашу учетную запись Windows автоматически при старте по F5, и вам больше не придется вводить учетные данные вручную.
Используя предложенные методы, мы можем легко организовать комфортную, быструю и бесшовную работу в среде разработки 1С:Предприятие без лишних рутинных действий.