Конфигуратор 1С для программиста: как зайти, полезные функции и горячие клавиши
Конфигуратор — основная среда разработки на 1С:Предприятии 8.3: в нём правят модули, формы и метаданные, запускают отладку и обновляют базу. В статье показано, как зайти в конфигуратор 1С, что находится в дереве конфигурации, как пользоваться синтаксис-помощником, поиском, конструктором запросов и проверкой кода, как сохранять конфигурацию в файлы cf и dt и какие горячие клавиши действительно экономят время.
Задача: освоить рабочее место программиста 1С
Любая доработка в 1С — от новой кнопки до отчёта — начинается в конфигураторе. Если вы приступаете к первой задаче или хотите ускорить работу, полезно знать, как в него попасть, как устроен интерфейс и какие команды стоит выучить в первую очередь. Ниже — практический обзор без лишних подробностей.
Как зайти в конфигуратор 1С
- Запустите 1С:Предприятие 8.3 обычным ярлыком. Откроется окно запуска со списком информационных баз.
- Выберите базу и нажмите Конфигуратор. Кнопка «1С:Предприятие» запускает пользовательский режим, а «Конфигуратор» — режим разработки.
- Если в базе заданы пользователи, введите имя и пароль. Для входа нужны права администратора.
Если базы нет в списке, добавьте её кнопкой «Добавить» (файловая база — по каталогу, клиент-серверная — по имени сервера и базы). Режим запуска можно задать и из командной строки, это удобно для ярлыков и скриптов:
"C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe" DESIGNER /F "D:\Bases\Dev" /N "Админ" /P "пароль"
Для клиент-серверной базы вместо /F указывают /S "сервер\имя_базы". Обновление конфигурации базы данных требует монопольного доступа, поэтому перед ним закройте остальные сеансы.
Дерево конфигурации и модули
Окно «Конфигурация» показывает дерево объектов метаданных: общие объекты (общие модули, роли, подсистемы), константы, справочники, документы, регистры, отчёты, обработки. Если окно закрыто, откройте его командой «Конфигурация — Открыть конфигурацию» или сочетанием Ctrl+Shift+C.
Код программиста лежит в модулях, которых несколько видов:
- Модуль объекта — обработчики событий справочника, документа и других объектов:
ПередЗаписью,ОбработкаПроведения. - Модуль менеджера — функции, относящиеся ко всему виду объектов; вызываются как
Справочники.Номенклатура.ИмяФункции(). - Модуль формы — код формы с директивами
&НаКлиентеи&НаСервере. - Общий модуль — библиотека процедур и функций с флагами «Клиент», «Сервер», «Вызов сервера», «Привилегированный».
- Модуль управляемого приложения и модуль сеанса — события запуска и параметры сеанса.
Часть модулей открывается по двойному щелчку на объекте и выбору «Модуль объекта» в контекстном меню. Структуру открытого модуля удобно просматривать списком процедур и функций (Ctrl+Alt+P).
Синтаксис-помощник
Встроенная справка по языку и объектам вызывается из меню «Справка — Синтаксис-помощник» или клавишами Ctrl+Shift+F1. В нём описаны методы, свойства и конструкторы, указаны допустимые значения параметров и сказано, где метод доступен (клиент, сервер, внешнее соединение). Сочетание Ctrl+F1 переносит в поле поиска по индексу. Пользуйтесь им вместо догадок: именно тут указано, в какой версии платформы появился метод и есть ли он в тонком клиенте.
Поиск и замена в коде
В открытом модуле поиск вызывает Ctrl+F, следующее вхождение — F3, замену — Ctrl+H. Чтобы найти текст по всей конфигурации, используют глобальный поиск по текстам (Ctrl+Shift+F): результаты показываются в окне сообщений, по ним можно переходить клавишей F8. Так ищут все вызовы процедуры, использование регистра или вызовы устаревшей функции. Замена по всей конфигурации доступна в том же окне поиска, но выполняйте её на копии базы, а не вслепую.
В тексте модуля переход к определению процедуры или переменной выполняется клавишей F12. Контекстная подсказка — Ctrl+Пробел: после точки показывает свойства и методы объекта.
Конструктор запросов
Чтобы не писать длинный текст запроса вручную, вызовите конструктор. Поставьте курсор внутрь пустых кавычек строки (Запрос.Текст = "";), нажмите правую кнопку мыши и выберите «Конструктор запроса». В конструкторе:
- на закладке «Таблицы» выбирают источники и поля;
- «Связи» задают условия соединения таблиц;
- «Группировка», «Условия», «Порядок», «Итоги» отвечают за соответствующие части запроса;
- «Объединения/Псевдонимы» позволяют добавлять объединения и переименовывать поля;
- кнопка «Запрос» показывает полученный текст, который можно править вручную.
Когда нажимаете «ОК», текст подставляется в код. Если курсор стоит внутри уже написанного запроса, конструктор откроет его для редактирования. Что делать с самим запросом дальше — в статье про запросы в 1С.
Проверка кода: синтаксис и расширенная проверка
Самый быстрый способ — синтаксический контроль текущего модуля клавишами Ctrl+F7 (команда есть и в меню редактора модуля). Для всей конфигурации используют «Конфигурация — Проверка конфигурации». В диалоге доступны отдельные проверки, из которых стоит включать:
- логическую целостность конфигурации;
- поиск некорректных ссылок на удалённые объекты;
- синтаксический контроль модулей для нужных режимов — тонкий клиент, веб-клиент, сервер, толстый клиент;
- расширенную проверку модулей: обращения к несуществующим методам и свойствам, вызовы процедур с неверным числом параметров;
- поиск неиспользуемых процедур и функций, существование обработчиков.
Проверку можно запускать из командной строки, например на сервере сборки. Результаты пишутся в файл журнала:
1cv8.exe DESIGNER /F "D:\Bases\Dev" /N "Админ" /CheckConfig -ConfigLogIntegrity -IncorrectReferences -ThinClient -Server -ExtendedModulesCheck /Out "D:\check.log"
Хорошая практика — запускать расширенную проверку перед каждой передачей изменений, а в крупных проектах добавлять её в автоматическую сборку.
Сохранение и загрузка: файлы cf и dt
В конфигураторе есть два разных вида выгрузки, и путать их нельзя:
| Формат | Что содержит | Где находится команда | Когда использовать |
|---|---|---|---|
| cf | Только конфигурацию: метаданные, модули, формы | «Конфигурация — Сохранить конфигурацию в файл» и «Загрузить конфигурацию из файла» | Передача версии разработки, резервная копия кода |
| dt | Всю информационную базу с данными | «Администрирование — Выгрузить информационную базу» и «Загрузить информационную базу» | Перенос базы, копия для тестирования |
| cfe | Расширение конфигурации | Окно «Расширения конфигурации» | Подробно — в статье про расширения конфигурации |
Те же операции доступны из командной строки: /DumpCfg и /LoadCfg для cf, /DumpIB и /RestoreIB для dt. Загрузка dt полностью заменяет данные базы, поэтому перед ней делают копию. Если база не открывается из-за повреждения, для ситуации подойдёт статья про повреждённый файл 1Cv8.1CD.
Основная конфигурация и конфигурация базы данных
В конфигураторе одновременно существуют две конфигурации: основная, которую вы редактируете в окне «Конфигурация», и конфигурация базы данных, по которой реально работает база. Изменения становятся видны пользователям только после обновления конфигурации базы данных — клавиша F7 или «Конфигурация — Конфигурация базы данных — Обновить конфигурацию базы данных». Для запуска отладки без явного обновления нажмите F5: конфигуратор предложит обновить базу сам.
Сравнение и объединение конфигураций
При ручных обновлениях и переносе доработок используют команды сравнения и объединения в меню «Конфигурация»: можно сравнить текущую конфигурацию с файлом, с конфигурацией поставщика или базы данных. Окно сравнения показывает дерево отличий, а для каждого объекта задаётся направление: взять из основной или из сравниваемой конфигурации. Объединение вносит выбранные изменения. Для типовых конфигураций на поддержке перед любым объединением включите возможность изменения: «Конфигурация — Поддержка — Настройка поддержки».
Горячие клавиши, которые стоит выучить
| Сочетание | Действие |
|---|---|
| Ctrl+F7 | Синтаксический контроль модуля |
| F12 | Перейти к объявлению процедуры или переменной |
| Ctrl+Пробел | Контекстная подсказка |
| Ctrl+Shift+F | Глобальный поиск по текстам конфигурации |
| Ctrl+Alt+P | Список процедур и функций модуля |
| Ctrl+G | Перейти к строке модуля |
| F5 / Ctrl+F5 | Запуск с отладкой / без отладки |
| F9 | Установить или снять точку останова |
| F7 | Обновить конфигурацию базы данных |
| Ctrl+Shift+F1 | Синтаксис-помощник |
Типичные ошибки
- Правка типовой конфигурации без настройки поддержки: конфигуратор не даёт изменить объект или ломает последующее обновление; для доработок удобнее расширение.
- Забытое обновление конфигурации базы данных: код правили, но пользователи видят старое поведение.
- Загрузка dt в рабочую базу без копии: данные заменяются целиком.
- Проверка только текущего модуля без запуска проверки конфигурации: ошибки вызовов между модулями остаются незамеченными.
- Глобальная замена по всей конфигурации без предварительного поиска и просмотра результатов.
Актуальность для новых версий
Описанные возможности конфигуратора есть во всех версиях платформы 8.3, включая 8.3.2x. Внешний вид окон и точные названия пунктов меню могут немного отличаться между релизами. Параметры командной строки проверки конфигурации (/CheckConfig) расширялись от версии к версии: если ключ не распознаётся, сверьтесь со справкой «Запуск 1С:Предприятия» вашей платформы. Для работы в режиме конфигуратора у пользователя должны быть права администратора.
Частые вопросы
Как зайти в конфигуратор 1С?
Запустите 1С, выберите базу в списке и нажмите кнопку «Конфигуратор» вместо «1С:Предприятие». Если кнопка не нажимается или конфигуратор не пускает, у пользователя нет прав администратора. Из командной строки запуск выполняется командой 1cv8.exe DESIGNER с указанием базы.
Чем cf отличается от dt?
Файл cf хранит только конфигурацию — метаданные и модули, без данных. Файл dt — выгрузка всей информационной базы вместе с данными, его используют для переноса и резервных копий.
Как проверить код 1С на ошибки?
Сочетание Ctrl+F7 запускает синтаксический контроль текущего модуля, а команда «Конфигурация — Проверка конфигурации» проверяет все модули и ссылки сразу. Флажки расширенной проверки находят вызовы несуществующих методов и неиспользуемые процедуры.
Как открыть конструктор запроса в 1С?
В модуле поставьте курсор внутрь пустых кавычек текстовой строки, вызовите контекстное меню и выберите «Конструктор запроса». Построенный текст подставляется в код, а существующий запрос можно открыть в конструкторе тем же способом.