Конфигуратор 1С 8.3: что в нём делают разработчик и администратор базы
Содержание
Конфигуратор в 1С 8.3 нужен для двух вещей: менять саму программу и обслуживать информационную базу. В нём правят объекты и код конфигурации, отлаживают модули, обновляют типовую конфигурацию
, выгружают и загружают базу в файл .dt, запускают тестирование и исправление. Учёт в нём не ведут: документы, справочники и отчёты бухгалтер видит только в режиме «1С:Предприятие».
Запускается конфигуратор из того же окна запуска, что и обычная работа: выберите базу в списке и нажмите кнопку Конфигуратор. Войти получится только пользователю, у которого в роли есть право «Конфигуратор». В типовых конфигурациях оно входит в роль «Полные права».
Зачем нужен конфигуратор и как его запустить
Платформа 1С:Предприятие 8.3 одна, а режимов работы у неё два. Это просто разные способы открыть одну и ту же базу.
| Режим | Для кого | Что в нём делают |
|---|---|---|
| 1С:Предприятие | бухгалтер, кадровик, менеджер | вводят документы, смотрят отчёты, настраивают учёт |
| Конфигуратор | программист, администратор базы | меняют структуру и код, обновляют конфигурацию, выгружают базу, проверяют её целостность |
Задачи, ради которых открывают конфигуратор:
- 🛠 доработка: новые реквизиты, формы, отчёты, печатные формы, правка кода модулей;
- 🐞 отладка: точки останова, пошаговое выполнение, замер производительности;
- 🔄 обновление типовой конфигурации файлами
.cfuи.cf; - 💾 выгрузка и загрузка всей базы в файл
.dt; - 🩺 тестирование и исправление информационной базы;
- 👥 список пользователей базы, журнал регистрации, параметры базы;
- 🧩 расширения, внешние обработки и отчёты, хранилище для командной разработки.
Два способа открыть конфигуратор
- Через окно запуска: выделить базу и нажать
Конфигуратор. - Из командной строки или ярлыка с ключом
DESIGNER:
"C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe" DESIGNER /F"D:\Bases\Buh" /N"Администратор" /P"пароль"
Для клиент-серверной базы вместо /F пишут /S"имя_сервера\имя_базы".
Из открытого режима «1С:Предприятие» в конфигуратор не переключиться: это отдельный сеанс. Запустите его вторым окном через окно запуска, рабочую программу закрывать не обязательно.
Окно конфигуратора: дерево метаданных и две конфигурации
После входа окно пустое. Работа начинается с команды Конфигурация → Открыть конфигурацию. Слева появится дерево объектов — всё, из чего собрана программа.
Основные ветки дерева:
- 📁 Общие — подсистемы, общие модули, роли, планы обмена, регламентные задания, функциональные опции, общие формы и макеты;
- 📒 Константы и Справочники — постоянные значения и списки (контрагенты, номенклатура, сотрудники);
- 📄 Документы и Журналы документов — то, что вводят пользователи;
- 📊 Отчеты и Обработки;
- 🧮 Планы счетов, Планы видов характеристик, Планы видов расчета;
- 📚 Регистры сведений, накопления, бухгалтерии и расчета — здесь хранятся итоги и движения.
Двойной щелчок по объекту открывает окно его свойств: реквизиты, табличные части, формы, команды, макеты, модули. Найти объект по имени быстрее через строку поиска над деревом, чем листать ветки вручную.
Почему конфигураций две
Здесь кроется главный приём, который нужно понять один раз. В конфигураторе одновременно живут:
- основная конфигурация — то, что вы редактируете. Её открывает
Конфигурация → Открыть конфигурацию; - конфигурация базы данных — то, с чем сейчас работают пользователи. Её открывает
Конфигурация → Конфигурация базы данных → Открыть конфигурацию БД, она доступна только для чтения.
Сохранение (Ctrl+S) записывает изменения только в основную конфигурацию. Пользователи увидят их после команды Конфигурация → Обновить конфигурацию базы данных (клавиша F7). Пока обновление не выполнено, программист может сколько угодно править и откатывать, а бухгалтерия работает по-старому.
Типовая конфигурация на поддержке
Свежая типовая база (Бухгалтерия, ЗУП, УТ) стоит на поддержке поставщика, и её объекты закрыты для правки. Открыть их для изменений можно в Конфигурация → Поддержка → Настройка поддержки, включив возможность изменения.
После снятия с поддержки каждое обновление превращается в ручное сравнение и объединение. Если доработка небольшая, сначала прикиньте, нельзя ли сделать её расширением (об этом ниже).
Отладка кода в конфигураторе
Отладчик — вторая причина, по которой конфигуратор нужен программисту. Код 1С пошагово выполняют прямо на живой базе, поэтому отлаживать лучше на копии.
Как запустить отладку:
- Откройте нужный модуль: модуль формы, объекта, менеджера или общий модуль.
- Поставьте точку останова на строке клавишей
F9. Слева появится красный кружок. - Запустите
Отладка → Начать отладку(F5) и выберите клиент: тонкий, толстый или веб. - В открывшемся «1С:Предприятие» выполните действие, которое вызывает этот код. Выполнение остановится на точке.
Что умеет отладчик, пока выполнение стоит:
| Действие | Клавиша | Зачем |
|---|---|---|
| Шагнуть в | F11 | зайти внутрь вызываемой процедуры |
| Шагнуть через | F10 | выполнить строку целиком, не заходя в вызовы |
| Шагнуть из | Shift+F11 | досрочно выйти из текущей процедуры |
| Вычислить выражение | Shift+F9 | посмотреть значение переменной или результат запроса |
| Продолжить | F5 | выполнить код до следующей точки |
Помимо точек останова в меню Отладка есть замер производительности. Включите его, выполните медленную операцию и остановите замер. Конфигуратор покажет строки, на которые ушло больше всего времени, — обычно это запрос в цикле или лишнее обращение к базе.
Отладка на сервере
Для файловой базы отладка серверного кода работает сразу. В клиент-серверном варианте серверная отладка включается ключом -debug у службы агента сервера 1С. Подключиться к
уже запущенным сеансам можно через Отладка → Подключение.
Чтобы добавить ключ -debug, службу агента нужно перезапустить. Все сеансы пользователей при этом оборвутся, поэтому делайте это вне рабочего времени и на тестовом сервере, а не на боевом.
Администрирование и обновление конфигурации
Для администратора базы конфигуратор — набор сервисных команд. Почти все они собраны в меню Администрирование и Конфигурация → Поддержка.
Резервная копия в файл .dt
Администрирование → Выгрузить информационную базу сохраняет всю базу — данные, конфигурацию, пользователей — в один файл .dt. Обратная операция — Администрирование → Загрузить информационную базу.
Загрузка .dt полностью заменяет содержимое текущей базы. Загружайте копию в новую пустую базу, если не уверены, что старая больше не нужна. Загрузка требует монопольного доступа: в базе не должно быть других пользователей.
Обновление типовой конфигурации
Порядок для конфигурации на поддержке:
- Сделайте выгрузку
.dt. - Откройте
Конфигурация → Поддержка → Обновить конфигурациюи укажите файл обновления.cfu(или полный дистрибутив.cf). - Если в конфигурации есть свои доработки, конфигуратор покажет окно сравнения и объединения. Проверьте каждое расхождение.
- Выполните
Конфигурация → Обновить конфигурацию базы данныхи примите изменения структуры. - Запустите «1С:Предприятие» и дождитесь обработчиков обновления. Они переносят данные под новый релиз.
Релизы ставят по цепочке: в описании каждого обновления указано, с каких номеров на него можно перейти. Перепрыгнуть через несколько релизов одним файлом обычно нельзя.
Пользователи, журнал, проверка базы
- 👥
Администрирование → Пользователи— список пользователей базы. В конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) новых сотрудников заводят в режиме «1С:Предприятие» в разделеАдминистрирование → Настройки пользователей и прав. Пользователь, созданный только в конфигураторе, не попадает в справочник «Пользователи», и у него могут не сработать права и настройки. - 📜
Администрирование → Журнал регистрации— кто и когда менял данные, ошибки сеансов. - 🟢
Администрирование → Активные пользователи— кто сейчас в базе. - 🩺
Администрирование → Тестирование и исправление— проверка логической и ссылочной целостности, пересчёт итогов, реиндексация таблиц, сжатие таблиц. Нужен монопольный доступ.
Проверка конфигурации и синтаксический контроль
Код 1С не собирается в отдельный исполняемый файл, как в классических языках. Модули компилируются платформой во время работы. Поэтому ошибка в коде может «дремать», пока пользователь не нажмёт нужную кнопку. Конфигуратор позволяет поймать её заранее.
Два уровня проверки:
- Синтаксический контроль текущего модуля —
Ctrl+F7в открытом модуле. Находит опечатки, незакрытыеКонецЕсли, неизвестные переменные. - Полная проверка —
Конфигурация → Проверка конфигурации. Здесь отмечают нужные флажки.
Что включать в полной проверке:
| Флажок | Что ловит |
|---|---|
| Логическая целостность конфигурации | ссылки на удалённые объекты, ошибки в свойствах |
| Поиск неправильных ссылок | реквизиты, указывающие на несуществующие типы |
| Синтаксический контроль модулей | ошибки кода во всех модулях |
| Режимы клиента и сервера | вызов недоступного метода в тонком клиенте, веб-клиенте, на сервере, во внешнем соединении |
| Поиск неиспользуемых процедур и функций | мёртвый код, который можно удалить |
Режимы контекста — самый полезный пункт. Метод может прекрасно работать в толстом клиенте и падать в тонком или веб-клиенте. Проверка с отмеченными режимами покажет такие места до того, как с ними столкнётся пользователь.
Запускайте полную проверку перед F7 после любой серьёзной доработки и после объединения при обновлении. Список ошибок открывается в окне служебных сообщений, двойной щелчок ведёт прямо к строке кода.
Расширения, внешние обработки и хранилище
Не каждую доработку нужно вносить в основную конфигурацию. У конфигуратора есть три инструмента, которые обходят снятие с поддержки.
Расширения конфигурации
Расширение — отдельный слой поверх типовой конфигурации, появилось в платформе 8.3.6. Его создают в Конфигурация → Расширения конфигурации. В расширение заимствуют нужный объект и добавляют свои реквизиты, формы, команды, перехватывают процедуры.
Плюсы:
- ✅ типовая конфигурация остаётся на поддержке и обновляется без объединения;
- ✅ расширение можно выгрузить в файл
.cfeи подключить к другой базе; - ✅ в конфигурациях на БСП расширение подключают и в режиме «1С:Предприятие», без конфигуратора.
После обновления типовой конфигурации расширение проверяют: если поставщик изменил заимствованный объект, платформа сообщит о несовместимости.
Внешние обработки и отчёты
Внешняя обработка (.epf) или внешний отчёт (.erf) — файл, который живёт вне базы. Создают его в конфигураторе через Файл → Новый, выбрав тип «Внешняя обработка» или «Внешний отчёт». Конфигурацию базы открывать для этого не нужно.
Так делают разовые обработки, загрузку данных из Excel, дополнительные печатные формы. В типовых конфигурациях файл регистрируют в разделе дополнительных отчётов и обработок, и он работает без правки конфигурации.
Хранилище конфигурации
Когда над конфигурацией работают несколько программистов, её подключают к хранилищу: Конфигурация → Хранилище конфигурации → Подключиться к хранилищу. Объект захватывают, правят и помещают обратно. Хранилище хранит историю версий и не даёт двоим править один объект одновременно.
Где вносить доработку
Пакетный запуск конфигуратора из командной строки
Многие команды конфигуратора можно выполнить без открытия окна. Это удобно для ночных копий и обновления десятков баз скриптом.
Ночная выгрузка файловой базы в .dt с журналом:
"C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe" DESIGNER /F"D:\Bases\Buh" /N"Администратор" /P"пароль" /DumpIB"E:\Backup\buh.dt" /Out"E:\Backup\dump.log" /DisableStartupMessages
Полезные ключи пакетного режима:
- 💾
/DumpIBи/RestoreIB— выгрузка и загрузка.dt; - 📦
/DumpCfgи/LoadCfg— сохранение и загрузка конфигурации.cf; - 🔄
/UpdateCfg— обновление конфигурации на поддержке файлом.cfu; - 🧱
/UpdateDBCfg— обновление конфигурации базы данных, аналогF7; - 📝
/Out— файл журнала, по нему видно, успешно ли прошла операция.
Пароль в bat-файле лежит открытым текстом. Создайте для скрипта отдельного пользователя только с нужными правами и закройте папку со скриптом от посторонних. Если в базе работают люди, выгрузка и обновление структуры могут не пройти или прервать их работу — ставьте задание на ночь.
Частые ошибки при работе в конфигураторе
- ❌ Сохранили, но изменений нет.
Ctrl+Sпишет в основную конфигурацию. Пока не выполненоF7, пользователи работают по старой версии. - ❌ Правка в рабочей базе в рабочее время. Обновление структуры базы может потребовать, чтобы все вышли. Дорабатывайте на копии, а переносите вечером через
.cfили хранилище. - ❌ Сняли с поддержки ради одного реквизита. Через полгода обновление занимает день вместо получаса. Для мелочей хватает расширения.
- ❌ Загрузили .dt поверх нужной базы. Данные, введённые после выгрузки, пропали. Загружайте в отдельную базу и сверяйте.
- ❌ Завели пользователя только в конфигураторе. В типовых на БСП он появится без связи со справочником «Пользователи». Создавайте сотрудников в режиме «1С:Предприятие».
- ❌ Отладчик на боевом сервере. Остановка на точке держит сеанс и блокировки, коллеги ловят зависания. Отлаживайте на копии.