Консоль запросов и кода в 1С 8.3: где взять и чем запустить

· 9 мин

Содержание

Консоль запросов в 1С 8.3 открывается как внешняя обработка: запустите базу в режиме «1С:Предприятие», нажмите Ctrl+O (или Главное меню → Файл → Открыть) и выберите файл консоли с расширением .epf. Встроенной консоли в платформе нет, файл берут отдельно, а пользователю нужно право на открытие внешних обработок.

Если консоль нужна постоянно, удобнее запускать её сразу при входе в базу: параметром /Execute в командной строке или строкой в файле .v8i. Оба способа разобраны ниже вместе с пакетным запуском и типичными причинами, по которым консоль не открывается.

Какие консоли есть в 1С и какая нужна вам

Словом «консоль» в 1С называют несколько разных инструментов. Перед запуском стоит понять, о каком идёт речь.

ИнструментЧто делаетКак открыть
🔍 Консоль запросовПишет и выполняет запросы к базе, показывает результат таблицейВнешняя обработка .epf через Файл → Открыть
💻 Консоль кодаВыполняет произвольный код на встроенном языкеТоже внешняя обработка .epf
🖥 Консоль администрирования серверовУправляет кластером: базы, сеансы, рабочие процессыОснастка MMC, ставится с сервером 1С
⌨️ Командная строка WindowsЗапускает 1С с параметрами, в том числе с обработкойcmd, ярлык, bat-файл

Консоль запросов и консоль кода — инструменты разработчика и администратора базы. Ими проверяют остатки «в обход» отчётов, ищут битые ссылки, выгружают выборки, правят данные точечно.

Где взять файл консоли:

  • 📦 в комплекте «Универсальные отчёты и обработки» на диске ИТС — там есть версия для управляемых форм;
  • 🧩 в комплекте средств разработчика вашей конфигурации, если он есть у поставщика;
  • 🛠 у коллег-разработчиков: многие собирают собственные консоли с подсветкой и сохранением запросов.

Консоль кода выполняет любой код с правами вашего пользователя, включая запись и удаление. Внешнюю обработку из непроверенного источника в рабочей базе не открывайте.

Как открыть консоль запросов в режиме 1С:Предприятие

Это основной способ, он работает во всех типовых конфигурациях на платформе 8.3.

  1. Запустите базу в режиме «1С:Предприятие» под пользователем с правами администратора или с правом на открытие внешних обработок.
  2. Нажмите Ctrl+O. Либо откройте главное меню — кнопку с тремя полосками в левом верхнем углу — и выберите Файл → Открыть.
  3. Укажите файл консоли, например C:\Tools\QueryConsole.epf.
  4. Если платформа покажет предупреждение безопасности, прочитайте его и подтвердите открытие.
  5. В открывшейся форме напишите запрос или вставьте готовый и нажмите кнопку выполнения.

Последний открытый файл платформа запоминает. Он появится в списке недавних файлов, и при следующем запуске можно открыть его из главного меню без поиска по диску.

Права пользователя

Открыть внешнюю обработку может только пользователь, в ролях которого есть право интерактивного открытия внешних обработок. Без него платформа выдаёт сообщение Нарушение прав доступа!.

В конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) права выдают через группы доступа: Администрирование → Настройки пользователей и прав → Группы доступа. В профиль группы добавляют роль, отвечающую за открытие внешних отчётов и обработок. Найти её проще всего поиском по слову «внешних» в списке ролей профиля.

Защита от опасных действий

В актуальных версиях платформы 8.3 при открытии внешней обработки из файла появляется предупреждение о возможной угрозе. Его поведение задаёт флажок «Защита от опасных действий» в карточке пользователя: Конфигуратор → Администрирование → Пользователи → карточка пользователя.

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

Тонкий или толстый клиент: какая версия консоли откроется

Консоли бывают двух видов, и от этого зависит, в каком клиенте их можно открыть.

Версия консолиТонкий клиентТолстый клиент, управляемое приложениеТолстый клиент, обычное приложение
На управляемых формах✅✅✅ при разрешённых управляемых формах в обычном приложении
На обычных формах❌❌✅

Старая консоль запросов на обычных формах из времён 8.2 в тонком клиенте не откроется. Для современных конфигураций берите версию на управляемых формах.

Если нужна именно старая консоль, запустите толстый клиент в режиме обычного приложения:

"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" ENTERPRISE /F"D:\Bases\Buh" /RunModeOrdinaryApplication

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

Тонкий клиент — файл 1cv8c.exe, толстый — 1cv8.exe. Оба лежат в папке bin нужной версии платформы, например C:\Program Files\1cv8\8.3.24.1548\bin\.

Запуск консоли 1С из командной строки Windows

Параметр /Execute открывает указанную внешнюю обработку сразу после входа в базу. Так консоль запускается одной командой, без поиска файла через меню.

Файловая база:

"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8c.exe" ENTERPRISE /F"D:\Bases\Buh" /N"Admin" /P"pass" /Execute"C:\Tools\QueryConsole.epf"

Клиент-серверная база :

"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8c.exe" ENTERPRISE /S"srv1c\buh" /N"Admin" /P"pass" /Execute"C:\Tools\QueryConsole.epf"

Параметры, которые чаще всего нужны:

ПараметрНазначение
/F"путь"Путь к каталогу файловой базы
/S"сервер\база"Адрес клиент-серверной базы
/N"имя", /P"пароль"Пользователь 1С и его пароль
/WA+Вход через аутентификацию Windows, пароль в строке не нужен
/Execute"файл.epf"Открыть внешнюю обработку после запуска
/C"строка"Передать строку в обработку, она доступна через ПараметрЗапуска
/RunModeOrdinaryApplicationТолстый клиент в режиме обычного приложения
/RunModeManagedApplicationТолстый клиент в режиме управляемого приложения
/DisableStartupMessagesНе показывать стартовые сообщения

Пароль в открытом виде в ярлыке или bat-файле виден любому, кто откроет файл. Если база поддерживает аутентификацию Windows, используйте /WA+ вместо /N и /P.

Пути с пробелами всегда берите в кавычки. Кавычки ставят сразу после параметра, без пробела: /F"D:\My Bases\Buh".

Файл .v8i: консоль в списке баз

Файл .v8i — это описание базы для окна запуска 1С. Общий список баз пользователя хранится в %APPDATA%\1C\1CEStart\ibases.v8i. Отдельный .v8i можно положить на рабочий стол: двойной щелчок добавит базу в список и запустит её.

Пример файла, который открывает файловую базу в тонком клиенте сразу с консолью:

[Бухгалтерия — консоль]
Connect=File="D:\Bases\Buh";
ID=3f6c2a1e-8d4b-4c7a-9e21-5b0f7d8a6c13
OrderInList=0
Folder=/
OrderInTree=0
External=0
ClientConnectionSpeed=Normal
App=ThinClient
WA=1
Version=8.3
AdditionalParameters=/Execute"C:\Tools\QueryConsole.epf"

Что означают строки:

  • 🔗 Connect — строка соединения. Для сервера: Connect=Srvr="srv1c";Ref="buh";.
  • 🆔 ID — уникальный идентификатор записи. Новый GUID даёт PowerShell командой [guid]::NewGuid().
  • 🖥 App — клиент: Auto, ThinClient, ThickClient или WebClient.
  • 🔐 WA=1 — разрешена аутентификация Windows.
  • ⚙️ AdditionalParameters — дополнительные параметры запуска, сюда и ставится /Execute.

Сохраняйте файл в кодировке UTF-8, иначе русское название базы в списке превратится в набор символов. Тот же результат без ручной правки: в окне запуска нажмите «Изменить», пройдите мастер до последней страницы и впишите /Execute"..." в поле дополнительных параметров запуска.

Удобный приём — две записи на одну базу: обычная для работы и «консольная» с /Execute. Тогда консоль не мешает повседневному входу.

Автоматизация: пакетный запуск обработки по нескольким базам

Через /Execute и /C можно запускать не только консоль, но и свою обработку, которая сама выполнит работу и закроет программу. Так делают регулярные выгрузки, проверки и сервисные операции по ночам.

Обработка читает строку из /C и решает, что делать. Пример модуля формы обработки на управляемых формах:

&НаКлиенте
Процедура ПриОткрытии(Отказ)
    Если ПараметрЗапуска = "Пакет" Тогда
        ВыполнитьВыгрузкуНаСервере();
        ЗавершитьРаботуСистемы(Ложь);
    КонецЕсли;
КонецПроцедуры

&НаСервере
Процедура ВыполнитьВыгрузкуНаСервере()
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    Контрагенты.Наименование КАК Наименование,
    |    Контрагенты.ИНН КАК ИНН
    |ИЗ
    |    Справочник.Контрагенты КАК Контрагенты
    |ГДЕ
    |    НЕ Контрагенты.ПометкаУдаления";
    Выборка = Запрос.Выполнить().Выбрать();
    Запись = Новый ЗаписьТекста("C:\Exchange\kontragenty.csv", КодировкаТекста.UTF8);
    Пока Выборка.Следующий() Цикл
        Запись.ЗаписатьСтроку(Выборка.Наименование + ";" + Выборка.ИНН);
    КонецЦикла;
    Запись.Закрыть();
КонецПроцедуры

Код в процедуре &НаСервере выполняется на стороне сервера 1С. В клиент-серверной базе файл C:\Exchange\kontragenty.csv появится на сервере, а не на компьютере, где запущен bat-файл.

Bat-файл, который проходит по трём файловым базам по очереди:

@echo off
set V8="C:\Program Files\1cv8\8.3.24.1548\bin\1cv8c.exe"
set EPF=C:\Tools\Vygruzka.epf

for %%B in (Buh Zup Ut) do (
    start "" /wait %V8% ENTERPRISE /F"D:\Bases\%%B" /WA+ /Execute"%EPF%" /C"Пакет" /DisableStartupMessages
)

start "" /wait заставляет скрипт дождаться закрытия 1С по текущей базе и только потом перейти к следующей. Без ожидания все базы стартуют одновременно.

Что учесть при автоматизации:

  • 🔤 русские буквы в bat-файле требуют правильной кодировки: сохраняйте файл в кодировке консоли или используйте латинские значения /C;
  • 👤 запускайте задание в Планировщике Windows от учётной записи, сопоставленной с пользователем 1С, тогда /WA+ войдёт без пароля;
  • 🛑 если в обработке произойдёт ошибка, 1С останется открытой с сообщением — задание повиснет. Оборачивайте основной код в Попытка … Исключение и записывайте ошибку в файл журнала;
  • 🔒 в файловой базе работающие пользователи не мешают чтению, но запись данных при массовой обработке лучше планировать на нерабочее время.

Консоль администрирования серверов 1С

Если под «консолью» имеется в виду управление сервером 1С, это другой инструмент — оснастка MMC «Администрирование серверов 1С:Предприятия». Она ставится вместе с сервером 1С или отдельным компонентом установщика платформы.

Как открыть:

  1. Найдите в меню «Пуск» пункт «Администрирование серверов 1С Предприятия» в папке нужной версии платформы.
  2. Если пункта нет или оснастка пишет, что не может создать объект, зарегистрируйте библиотеку radmin.dll от имени администратора:
regsvr32 "C:\Program Files\1cv8\8.3.24.1548\bin\radmin.dll"
  1. В оснастке щёлкните правой кнопкой по «Central 1C:Enterprise 8.3 servers», выберите создание центрального сервера и укажите имя компьютера. Порт агента по умолчанию — 1540.

Разрядность важна: 64-битная консоль MMC работает с 64-битной radmin.dll. После обновления платформы библиотеку регистрируют заново — уже из папки новой версии, иначе консоль подключится к серверу со старой библиотекой и выдаст ошибку несовпадения версий.

Если оснастку поставить нельзя, тот же кластер управляется утилитой командной строки rac через сервер администрирования ras. Список доступных команд показывает rac help.

Почему консоль не открывается

Ошибки запуска обычно сводятся к правам, версии формы или пути к файлу.

Диагностика: выберите симптом

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

Частые вопросы

Есть ли консоль запросов в Конфигураторе?
Отдельной консоли нет. В Конфигураторе есть конструктор запроса, а при отладке выражение можно вычислить через окно «Вычислить выражение» (Shift+F9) в точке останова.
Можно ли открыть консоль в веб-клиенте?
Да, если консоль сделана на управляемых формах и у пользователя есть права. Файл выбирается через диалог браузера, может понадобиться расширение для работы с файлами.
Можно ли запускать консоль в рабочей базе?
Запросы на чтение безопасны, но тяжёлый запрос без отборов нагрузит сервер. Код, который изменяет данные, сначала проверяйте на копии базы.
Как подключить консоль, чтобы она открывалась из меню программы?
В конфигурациях на БСП обработку можно зарегистрировать как дополнительную: Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки. Консоль из комплекта ИТС для такой регистрации обычно не подготовлена, нужна адаптированная версия.
Чем 1cestart.exe отличается от 1cv8.exe при запуске из командной строки?
1cestart.exe — стартер: он сам выбирает подходящую версию платформы для базы. 1cv8.exe и 1cv8c.exe запускают строго ту версию, из папки которой вызваны.