Разработка и Конфигурация · 11 мин
Как сохранить консоль запросов в 1С
Как сохранить консоль запросов в 1С: добавление обработки в дополнительные отчёты, сохранение запросов в файл, перенос настроек между базами и типичные ошибки.
Консоль запросов — это внешняя обработка (файл с расширением .epf), которая позволяет писать и отлаживать запросы на встроенном языке 1С без изменения конфигурации. Под «сохранением консоли запросов» обычно понимают три разные задачи: сохранить сам файл обработки, чтобы он был под рукой; добавить консоль в интерфейс базы через механизм дополнительных отчётов и обработок; сохранить написанные запросы и их параметры, чтобы не потерять работу. Ниже разобраны все три сценария.
Важно понимать: консоль запросов не входит в типовую поставку платформы 1С. Это внешний инструмент — либо разработка с портала Infostart, либо консоль из состава «Инструментов разработчика» (ИР), либо обработка с диска ИТС. Поэтому вопрос сохранения актуален: при обновлении конфигурации или переезде на другой компьютер внешний файл легко потерять вместе с накопленными запросами.
Что именно нужно сохранить: три разные задачи
Прежде чем действовать, определите, что требуется в вашей ситуации. Первая задача — сохранить файл обработки консоли на диске или в общем сетевом каталоге, чтобы запускать её через «Файл → Открыть» в любой базе. Вторая — встроить консоль в интерфейс конкретной информационной базы, чтобы она открывалась из меню как штатный инструмент. Третья — сохранить результаты работы: тексты запросов, параметры, варианты настройки.
Эти задачи решаются разными средствами. Файл обработки сохраняется стандартными командами работы с файлами. Встраивание в базу выполняется через подсистему «Дополнительные отчеты и обработки» библиотеки стандартных подсистем (БСП), которая есть в большинстве типовых конфигураций. Запросы сохраняются штатной кнопкой самой консоли — обычно в файл с расширением .sel или в собственном формате конкретной версии консоли.
Как выбрать действие
Сохранение файла обработки консоли на диск
Если консоль запросов уже открыта у вас в режиме 1С:Предприятие, сохранить её копию можно через меню «Файл → Сохранить копию» (в некоторых версиях платформы — «Сохранить как»). Укажите папку и имя файла — обработка будет сохранена с расширением .epf. Этот файл можно скопировать на другой компьютер, положить в сетевой каталог или добавить в систему контроля версий.
Если консоль была получена из внешнего источника (архив, поставка ИТС, репозиторий), просто сохраните исходный файл в надёжном месте. Рекомендуется хранить консоль вне каталога базы и вне временных папок: при обновлении конфигурации или очистке временных файлов обработка, лежащая в служебных каталогах, может быть удалена.
Добавление консоли в базу через дополнительные обработки
В типовых конфигурациях на базе БСП (Управление торговлей, ERP, Бухгалтерия предприятия, ЗУП и другие) есть штатный механизм регистрации внешних обработок. После регистрации консоль становится доступна из интерфейса базы без выбора файла на диске, а сам файл хранится внутри информационной базы.
Общий порядок действий: откройте раздел «Администрирование» (в некоторых конфигурациях — «НСИ и администрирование»), найдите пункт «Печатные формы, отчеты и обработки» и включите флажок «Дополнительные отчеты и обработки», если он ещё не включён. Затем перейдите по появившейся ссылке «Дополнительные отчеты и обработки», нажмите «Добавить из файла» и укажите файл консоли запросов. После записи обработка появится в списке и будет открываться из меню «Дополнительные обработки».
- 1Откройте «Администрирование → Печатные формы, отчеты и обработки»
- 2Включите опцию «Дополнительные отчеты и обработки»
- 3Перейдите в список дополнительных отчетов и обработок
- 4Нажмите «Добавить из файла» и выберите файл консоли .epf
- 5При необходимости укажите разделы командного интерфейса и права доступа
- 6Запишите и откройте обработку из списка для проверки
Ограничение способа: механизм дополнительных обработок работает только в конфигурациях, где встроена соответствующая подсистема БСП. В самописных или сильно доработанных конфигурациях её может не быть — тогда остаётся запуск через «Файл → Открыть».
Сохранение написанных запросов внутри консоли
Практически все распространённые консоли запросов имеют кнопку сохранения списка запросов — обычно это пиктограмма дискеты или пункт «Сохранить» на панели инструментов консоли. При сохранении создаётся файл, содержащий все запросы из дерева, их параметры и, в зависимости от версии консоли, дополнительные настройки (например, признак выгрузки в таблицу значений).
Сохраняйте файл запросов после каждого значимого изменения. Частая ситуация: пользователь час отлаживает сложный запрос с временными таблицами, закрывает консоль без сохранения — и теряет всю работу, потому что консоль не сохраняет состояние автоматически. Некоторые версии консолей предлагают сохранить изменения при закрытии, но полагаться на это не стоит.
Файл списка запросов привязан к формату конкретной консоли. Файл, созданный в консоли из «Инструментов разработчика», как правило, не откроется в другой консоли, и наоборот. Если вы передаёте файл коллеге, передавайте вместе с ним и версию обработки консоли.
Перенос консоли и запросов между базами и компьютерами
Перенос между базами одной конфигурации прост: файл .epf и файл списка запросов не зависят от конкретной базы. Запросы, написанные для одной базы, будут работать в другой, если структура метаданных совпадает — те же документы, регистры и поля. Если конфигурации различаются (например, запрос из УТ переносится в ERP), часть обращений к объектам может оказаться недействительной, и консоль выдаст ошибку при выполнении.
При переезде на новый компьютер перенесите три вещи: файл обработки консоли, файлы сохранённых списков запросов и, если используется регистрация через дополнительные обработки, убедитесь, что обработка зарегистрирована в новой базе. Если база переносится целиком (выгрузкой .dt), зарегистрированные дополнительные обработки переносятся вместе с ней — они хранятся внутри базы.
Как проверить результат
Обработка открывается из меню дополнительных обработок или через «Файл → Открыть» без ошибок
Сообщение об ошибке загрузки внешней обработки или требование отключить защиту от опасных действий
Файл открывается в консоли, дерево запросов и параметры отображаются полностью
Ошибка чтения формата или пустое дерево — файл создан в другой версии консоли
Запрос выполняется и возвращает данные
Ошибки вида «поле не обнаружено» — структура метаданных базы отличается
Типичные ошибки и ограничения
Наиболее частая проблема — механизм защиты от опасных действий. При открытии внешней обработки платформа может предупреждать о потенциальной опасности или блокировать запуск, если в профиле безопасности запрещено открытие внешних файлов. В файловых базах достаточно подтвердить открытие; в клиент-серверных с жёсткими профилями безопасности потребуется участие администратора.
Вторая ошибка — попытка сохранить консоль «внутрь конфигурации» через конфигуратор. Внешняя обработка не становится частью конфигурации автоматически; чтобы встроить её как объект конфигурации, нужно создать в дереве конфигурации новую обработку и перенести в неё код и формы — это отдельная задача, требующая навыков разработки и снимающая конфигурацию с полной поддержки.
Альтернативы: что использовать вместо классической консоли
Если задача — просто проверить выборку данных, необязательно держать отдельную консоль. В конфигураторе есть конструктор запросов, доступный при написании кода. В составе «Инструментов разработчика» есть расширенная консоль с подсветкой синтаксиса и отладкой временных таблиц. Для управляемых форм существуют консоли кода, позволяющие выполнять произвольные выражения.
Сравнение вариантов
Универсально, работает в любой базе без изменения конфигурации; нужно следить за сохранением файла и версией
Удобно для постоянной работы в одной базе, файл хранится внутри базы; требует подсистемы БСП и прав администратора
Больше возможностей отладки; требует установки всей подсистемы и знакомства с её интерфейсом
Подходит для разработки в коде; недоступен в режиме Предприятия и требует прав на конфигуратор
Что важно запомнить
Консоль запросов — это внешний файл .epf: храните его в надёжном месте или зарегистрируйте в базе через дополнительные отчеты и обработки. Написанные запросы сохраняйте отдельно кнопкой внутри консоли и передавайте вместе с версией самой консоли. Открывайте внешние обработки только из доверенных источников.
Частые вопросы
Где взять консоль запросов, если её нет?
Консоль запросов распространяется как внешняя обработка: её можно найти на диске информационно-технологического сопровождения (ИТС), в составе подсистемы «Инструменты разработчика» или на профильных ресурсах для разработчиков 1С. Загружайте файл только из источников, которым доверяете, поскольку обработка выполняет произвольный код.
Почему при открытии консоли появляется предупреждение о безопасности?
Платформа 1С по умолчанию предупреждает об открытии внешних файлов, потому что они могут содержать любой код. Если файл получен из надёжного источника, подтвердите открытие. Не отключайте защиту от опасных действий глобально в настройках — это снизит защиту всей базы.
Откроется ли файл запросов в другой консоли?
Как правило, нет. У каждой консоли собственный формат файла списка запросов. Файл, сохранённый в одной консоли, корректно откроется только в той же версии той же обработки. При передаче коллеге прикладывайте и файл консоли.
Можно ли сохранить консоль запросов в состав конфигурации?
Да, но это задача разработки: в конфигураторе создаётся новая обработка, в неё переносятся формы и модули из внешнего файла. Такая доработка может потребовать снятия конфигурации с полной поддержки, что усложнит последующие обновления. В большинстве случаев достаточно регистрации через дополнительные обработки.
Пропали запросы после закрытия консоли — можно ли восстановить?
Если список запросов не был сохранён в файл, восстановить его штатными средствами нельзя: консоль не ведёт автосохранение. Проверьте, не сохраняли ли вы файл ранее, и в дальнейшем сохраняйте список запросов после каждого значимого изменения.
Работает ли консоль запросов в веб-клиенте?
Большинство классических консолей рассчитаны на тонкий или толстый клиент. В веб-клиенте внешние обработки могут не открыться или работать с ограничениями, а сохранение файлов выполняется через механизмы браузера. Для регулярной работы с запросами удобнее тонкий клиент.