Проект конфигурации

Проект конфигурации содержит одну конфигурацию.

Автоматическое обновление информационных баз

Чтобы запустить конфигурацию, 1C:EDT должна передать ее в базу. После этого 1C:EDT запускает то или иное клиентское приложение в режиме исполнения или в режиме отладки.

Разрабатываемые в 1C:EDT конфигурации могут быть довольно большими, передача всей конфигурации в базу может занимать длительное время. Поэтому для сокращения времени запуска и отладки в 1C:EDT реализован механизм связи проектов с базами.

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

В результате, когда вы запускаете проект на одной из связанных с ним баз, это занимает столько же времени, как если бы вы работали с этой базой непосредственно в конфигураторе «1С:Предприятия».

Если вы ведете разработку с помощью системы контроля версий Git, то 1C:EDT предоставляет дополнительный сервис, позволяющий автоматически использовать разные базы для разных веток Git (подробнее).

Способы автоматического обновления информационных баз

Рекомендуемым сценарием разработки является связь одной или нескольких баз с проектом. Благодаря такой связи 1C:EDT может передавать в них изменения конфигурации прямо в процессе редактирования. В результате время запуска конфигурации для отладки или для исполнения в этих базах практически сопоставимо с тем, которое требуется при работе в конфигураторе «1С:Предприятия».

При импорте конфигурации из базы или при создании нового проекта конфигурации вы сразу же можете связать проект с базой. При этом 1C:EDT использует стандартные настройки этой связи.

В дальнейшем можно изменить эти настройки в панели Приложения.

Существует два способа, которыми 1C:EDT обновляет конфигурацию в связанных базах.

Обновление перед запуском

Это рекомендуемый способ обновления.

В этом режиме в процессе редактирования ничего в информационную базу не передается. Эта особенность и является главным поводом выбрать данный режим.
В остальном он, как и обновление в процессе редактирования, для передачи изменений использует инкрементальную загрузку конфигурации из файлов XML в базу. Только делает это один раз, непосредственно перед запуском. Или тогда, когда вы вручную нажмете Обновить конфигурацию базы данных информационной базы в командной панели основного окна.
За счет того, что передаются только изменения конфигурации, это не занимает большого количества времени. Но все же это может быть заметно, так как передаются изменения за более длительный срок, как правило, с момента предыдущего запуска конфигурации.

Обновление в процессе редактирования
В этом режиме изменения конфигурации передаются в информационную базу постоянно и автоматически прямо в процессе редактирования. Каждый раз, как вы нажимаете Сохранить в редакторе встроенного языка, например. Или сразу после добавления нового реквизита к объекту конфигурации.
При помещении этих изменений в базу используется механизм инкрементальной загрузки конфигурации из файлов XML. Таким образом, в базу загружаются только изменения, произошедшие с конфигурацией с момента предыдущей ее выгрузки из 1C:EDT. Более подробно этот процесс выглядит следующим образом:
  • Вы изменяете конфигурацию в 1C:EDT. Измененные объекты помечаются внутри 1C:EDT как необходимые к загрузке.
  • 1C:EDT выгружает измененные объекты из модели 1C:EDT во временный каталог в виде .xml-файлов конфигурации.
  • 1C:EDT вызывает пакетный режим конфигуратора и выполняет инкрементальную загрузку конфигурации из них.
  • 1C:EDT удаляет временный каталог.
  • При успешной загрузке в базу 1C:EDT удаляет объекты из списка необходимых к загрузке. При неуспешной — не удаляет.
В результате к тому моменту, как вы захотите запустить конфигурацию на исполнение, состояние базы будет таким же, как если бы вы работали прямо в конфигураторе «1С:Предприятия». В базе будет измененная основная конфигурация, полностью соответствующая той конфигурации, которая находится в 1C:EDT. Для запуска платформе останется только обновить конфигурацию базы данных, выполнить при необходимости реструктуризацию и запустить клиентское приложение.
Можно сказать, что обновление в процессе редактирования — это режим максимальной готовности базы к запуску.

Создать новый проект для разработки конфигурации

Создать новый проект можно несколькими способами:
  • В панели Навигатор нажмите Новый > Проект конфигурации в контекстном меню пустой области;
  • Нажмите Файл > Новый > Проект конфигурации в главном меню.

1C:EDT автоматически заполнит все необходимые поля мастера, так что можно просто нажать Готово.

Назначение полей:
  • Новая конфигурация:
    • Имя — строка, позволяющая идентифицировать разрабатываемое приложение среди других приложений «1С:Предприятия»;
    • Синоним — название приложения, которое будет показано пользователю в интерфейсе вместо имени;
    • Комментарий — краткое описание приложения для разработчика;
    • Имя проекта — строка, идентифицирующая проект внутри 1C:EDT. Имя проекта может отличаться от имени конфигурации если, например, имя конфигурации длинное, а в панели Навигатор вам хочется использовать короткие имена.
      Важно: Будьте внимательны. После создания проекта его имя изменить нельзя.
    • Расположение по умолчанию — стандартно этот флажок установлен и проект размещается по пути, который 1C:EDT выбирает автоматически в поле Расположение;
    • Расположение — каталог, в котором будет располагаться проект. Если вы хотите изменить его, снимите флажок Расположение по умолчанию;
    • Версия — маска версии платформы «1С:Предприятия», которая будет использоваться для этого проекта;

      Платформа, соответствующая этой маске, будет использоваться для автоматической проверки конфигурации, для взаимодействия с автоматически обновляемыми информационными базами и для запуска приложения (в качестве стандартного значения).
      По умолчанию 1C:EDT выберет самую старшую из установленных на компьютере версий платформы, соответствующую этой маске. Если вы не хотите, чтобы использовалась самая старшая версия, соответствующая маске, можно указать конкретную версию платформы, которая будет использоваться при выборе этой маски. Подробнее смотрите в разделе Назначение конкретной версии маске.

      Важно: Будьте внимательны. После создания проекта маску версии платформы изменить нельзя.
  • 1C:Стандарты разработки V8 - Параметры проекта.
    На этой странице можно настроить параметры плагина 1C:Code style V8. Он помогает разрабатывать конфигурации в соответствии со стандартами и методиками фирмы «1С» для платформы «1С:Предприятие». Назначение настроек описано в интерфейсе.
  • Создать новое приложение. При создании проекта можно сразу же создать приложение, на котором этот проект будет отлаживаться и запускаться:
    • Приложение на файловой, клиент-серверной или удаленной информационной базе — для отладки и запуска будет использоваться информационная база, подключенная напрямую к 1C:EDT. На следующих шагах вы сможете выбрать одну из существующих баз или создать новую;
    • Приложение на локальном автономном сервере «1С:Предприятия» — для отладки и запуска будет использоваться локальная файловая информационная база, подключенная к 1C:EDT через автономный сервер. Для больших конфигураций такой вариант является предпочтительным. На следующих шагах вы сможете выбрать одну из существующих баз или создать новую.

Перевести проект на новую версию платформы

Новая версия 1C:EDT может поддерживать новую версию платформы «1С:Предприятие». В связи с этим может возникнуть задача перевода разрабатываемого проекта на новую версию платформы.

При групповой разработке можно использовать для этого две разные стратегии:

Централизованное обновление в основной ветке:
  1. Залить все локальные ветки разработчиков в основную ветку на сервере;
  2. Основную ветку на сервере перевести на новую версию платформы;
  3. Новые ветки для разработки задач создавать от свежего состояния основной ветки.
Распределенное обновление:
  1. Каждый разработчик сливает, при необходимости, основную ветку с сервера в свои локальные ветки;
  2. Руководитель проекта переводит основную ветку на сервере на новую версию платформы;
  3. Каждый разработчик переводит свои локальные ветки на новую версию платформы;
  4. После того, как основная ветка на сервере переведена на новую версию, разработчики могут заливать в нее свои локальные ветки, также переведенные на новую версию платформы.
Перевести на новую версию
Чтобы перевести проект, расположенный в репозитории Git, на новую версию платформы, выполните следующие действия.
  1. Запустите старую версию 1C:EDT;
  2. Зафиксируйте все изменения проекта (если такие есть) в репозитории Git (подробнее);
  3. Загрузите последнее состояние проекта в связанную с ним базу (Обновить конфигурацию...), установив в диалоге флажок Загрузить конфигурацию полностью ...;
  4. Если в каталоге проекта вы храните свои собственные файлы, которые не генерируются 1C:EDT, скопируйте их во временный каталог;
  5. Запомните имя проекта и удалите проект (Удалить), установив в диалоге флажок Удалить содержимое проекта на диске;
  6. Завершите работу старой версии 1C:EDT;
  7. Сделайте копию базы на случай неудачи;
  8. Переведите базу на новую версию платформы, следуя рекомендациям (пример);
  9. Запустите новую версию 1C:EDT на старой рабочей области;
  10. Импортируйте базу в новый проект с тем же именем, которое было у старого проекта;
  11. Добавьте проект в тот же репозиторий Git;
  12. Скопируйте обратно в каталог проекта собственные файлы из временного каталога (п. 4);
  13. Зафиксируйте изменения проекта в репозитории;
  14. В конфигурациях запуска этого проекта укажите новую версию платформы.

Обновить проект по состоянию информационной базы

Конфигурация базы может быть изменена извне 1C:EDT, например с помощью конфигуратора «1С:Предприятия». В этом случае 1C:EDT позволяет вам импортировать эти изменения в существующий проект. При выполнении такого импорта 1C:EDT использует сравнение и объединение проекта с конфигурацией базы. Если обнаруживаются конфликтующие изменения, вам необходимо вручную разрешить конфликты в редакторе сравнения и объединения конфигураций.

Обновить проект по состоянию базы можно в нескольких случаях.

Во-первых, можно сделать это при импорте конфигурации из базы. Если в рабочей области уже есть проект, автоматически обновляющий эту базу, то 1C:EDT предложит на выбор либо обновить существующий проект, либо импортировать конфигурацию в новый проект.

Во-вторых, при запуске проекта или при обновлении конфигурации базы данных 1C:EDT также предложит импортировать изменения конфигурации из базы.

Обновить проект по состоянию базы
Обновить проект можно несколькими способами:
  • Перетащите базу, связанную с проектом, из панели Информационные базы в панель Навигатор;
  • В панели Информационные базы нажмите (Импортировать конфигурацию...) в командной панели или в контекстном меню базы;
  • В панели Приложения нажмите Импортировать конфигурацию в контекстном меню приложения;
  • В панели Разработка нажмите Импортировать конфигурацию в контекстном меню базы (если проект находится под версионным контролем Git).

1C:EDT попытается автоматически определить, какие изменения содержатся в конфигурации базы.

Если это удастся, то список изменений будет показан в мастере. На следующем шаге в проект будут импортированы только эти изменения, что не должно занимать много времени.

Если 1C:EDT не сможет автоматически определить состав изменений в базе, то она будет вынуждена на следующем шаге импортировать всю конфигурацию, что может занять продолжительное время.

В этот момент можно поступить двумя способами:

После того, как 1C:EDT получит изменения из базы, она откроет редактор сравнения и объединения конфигураций (подробнее), чтобы вы могли выполнить объединение конфигурации проекта с конфигурацией базы.

Изменить свойства проекта

В процессе разработки у вас может возникнуть необходимость просмотреть или изменить некоторые свойства проекта. Например, узнать версию платформы или оптимизировать данные проекта.

Открыть свойства проекта

В панели Навигатор нажмите Открыть редактор проекта в контекстном меню проекта.

Назначение полей
  • Версия платформы — маска версии платформы «1С:Предприятия».
    Платформа, соответствующая этой маске, будет использоваться для автоматической проверки конфигурации, для взаимодействия с автоматически обновляемыми информационными базами и для запуска приложения (в качестве стандартного значения).
    По умолчанию 1C:EDT выберет самую старшую из установленных на компьютере версий платформы, соответствующую этой маске. Если вы не хотите, чтобы использовалась самая старшая версия, соответствующая маске, можно указать конкретную версию платформы, которая будет использоваться при выборе этой маски. Подробнее смотрите в разделе Назначение конкретной версии маске.
    Важно: После создания проекта маску версии платформы изменить нельзя.
  • Оптимизировать формат хранения данных проектаоптимизирует внутренний формат .xml-файлов проекта.

Закрыть проект

Закрытые проекты отмечаются значком .

Когда проект закрыт, вы не можете изменять его в основном окне, его ресурсы не показываются в панели Навигатор, но он продолжает существовать в файловой системе. Закрытые проекты требуют меньшего объема оперативной памяти. Поэтому закрытие проектов, которые не нужны в ближайшее время, но вообще могут понадобиться, позволяет уменьшить (иногда значительно) время запуска 1C:EDT и время построения моделей открытых проектов.

Закрыть проект

В панели Навигатор нажмите Закрыть проект в контекстном меню проекта.

Эта операция выполняется быстро.

Открыть проект

В панели Навигатор нажмите Открыть проект в контекстном меню проекта.

Эта операция может занять некоторое время, так как будет выполнена вся последовательность построения модели проекта, которая выполняется, например, при импорте конфигурации в 1C:EDT.

Импортировать конфигурацию из информационной базы в новый проект

Импортировать конфигурацию из базы в новый проект можно несколькими способами:

1C:EDT откроет мастер импорта конфигурации, в котором можно указать название проекта и выбрать версию платформы «1С:Предприятия», которая будет использоваться для приложения в этом проекте.

Настройки доступа к базе

Если импортируемая база используется в первый раз, то поверх мастера импорта 1C:EDT откроет диалог настроек доступа к базе.

В этом диалоге нужно выбрать пользователя базы, обладающего полными правами. От имени этого пользователя 1C:EDT будет взаимодействовать с базой.

Версия платформы

Стандартно для создания и изменения проекта 1C:EDT будет использовать самую старшую из установленных версий платформы.

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

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

Если на вашем компьютере не установлена конкретная платформы, необходимая вам, например, для работы с автономным сервером, выполните следующие действия:
  1. Не закрывая 1C:EDT и этого диалога установите платформу «1С:Предприятия»;
  2. Вернитесь в этот диалог и нажмите (Обновить список версий платформ) чтобы 1C:EDT «увидела» новую версию платформы;
  3. Выберите шаблон новой версии в поле Версия проекта.
Расширения

Импортируемая база может содержать расширения конфигурации. Мастер импорта автоматически обнаружит их и предложит импортировать вместе с основной конфигурацией.

Можно отказаться от этого или выбрать только некоторые расширения для импорта.

Расширения будут импортированы в отдельные проекты, связанные с главным. Для всех проектов расширений проект конфигурации будет установлен в качестве базового. Имя базового проекта будет использоваться в именах проектов расширений в качестве префикса. Таким образом, все импортированные проекты будут находиться рядом друг с другом.

Возможная проблема: Если база открыта в конфигураторе «1С:Предприятия», импорт будет невозможен.

Если база уже связана с одним из проектов, то эта команда обновит конфигурацию, содержащуюся в проекте, той конфигурацией, которая содержится в базе.

В процессе импорта 1C:EDT выполнит следующие действия:

  1. Выгрузит конфигурацию из базы во временный каталог. Для этого используется команда пакетного режима запуска конфигуратора, выгружающая конфигурацию в файлы XML;
  2. Загрузит эти файлы XML в рабочую область, выполнив их преобразование во внутреннее файловое представление 1C:EDT;
  3. Удалит временный каталог;
  4. Построит внутреннюю модель проекта в 1C:EDT по внутреннему файловому представлению, содержащемуся в рабочей области. При этом будут выполнены:
    • Расчет вычислимых данных,
    • Расчет поисковых и прочих индексов,
    • Проверка модели.
  5. Создаст приложение для запуска и отладки этого проекта.

Импортировать конфигурацию конкретной версией платформы

По разным причинам для импорта базы может требоваться совершенно конкретная версия платформы. Самый простой случай — это серверная база. Например, у вас установлены следующие версии платформы:

Серверные компоненты есть только у «средней» версии 2505. В этом случае можно поступить следующим образом.

  1. Для маски <8.3.10> установите конкретную версию платформы — 8.3.10.2505 (подробнее).
  2. Импортируйте конфигурацию из базы (подробнее).
  3. После импорта верните маску <8.3.10> в исходное состояние.
  4. Укажите версию платформы 8.3.10.2505 в настройках доступа базы.

Импортировать конфигурацию, находящуюся на полной поддержке

Если конфигурация в базе находится на полной поддержке, можно импортировать такую конфигурацию в 1C:EDT, запускать и отлаживать ее на этой же базе.

Изменить такую конфигурацию средствами 1C:EDT вам не удастся. Если вы хотите изменить режим поддержки или совсем отказаться от поддержки, это нужно сделать до импорта в конфигураторе «1С:Предприятия».

Экспортировать конфигурацию в другую информационную базу

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

Экспортировать конфигурацию в базу можно несколькими способами:

Если в результате загрузки конфигурации изменится структура таблиц базы, то перед обновлением конфигурации базы данных 1C:EDT покажет диалог с планируемыми изменениями и попросит их принять.

Если на вашем компьютере не установлена конкретная платформы, необходимая вам, например, для работы с автономным сервером, выполните следующие действия:
  1. Не закрывая 1C:EDT и этого диалога установите платформу «1С:Предприятия»;
  2. Вернитесь в этот диалог и нажмите (Обновить список версий платформ) чтобы 1C:EDT «увидела» новую версию платформы;

Экспортировать конфигурацию в связанную информационную базу

Экспортировать конфигурацию в базу можно несколькими способами:
  • Перетащите проект из панели Навигатор на связанную базу в панели Информационные базы;
  • В панели Навигатор нажмите Обновить конфигурацию... в контекстном меню проекта;
  • В панели Информационные базы нажмите (Обновить конфигурацию...) в командной панели или в контекстном меню базы.

1C:EDT загрузит в базу изменения конфигурации, выполненные после предыдущей загрузки. Это не занимает много времени.

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

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

Импортировать конфигурацию из .xml-файлов выгрузки конфигурации

Импортировть таким образом можно только в новый проект конфигурации.
  1. В конфигураторе «1С:Предприятия» выгрузите конфигурацию в .xml-файлы или в архив;
  2. В 1C:EDT в панели Навигатор нажмите Импорт... > 1C:Enterprise > Конфигурация из XML-файлов > Далее в контекстном меню;
    • Из каталога — выберите этот вариант, если вы выгружали конфигурацию в .xml-файлы, и укажите путь к каталогу с файлами;
    • Из архива — выберите этот вариант, если вы выгружали конфигурацию в архив, и укажите путь к файлу архива;
    • Название проекта — задайте название будущего проекта;
    • Версия — выберите версию платформы «1С:Предприятие», которую будет использовать будущий проект. Стандартно 1C:EDT предлагает для нового проекта ту версию платформы, которая указана в .xml-файлах выгрузки. Но вы можете выбрать более высокую версию, если хотите разрабатывать приложение на более свежей платформе.
  3. Нажмите Готово. Будет создан новый проект и в него импортирована конфигурация.

Экспортировать конфигурацию в .xml-файы выгрузки конфигурации

  1. В 1C:EDT в панели Навигатор нажмите Экспорт... > 1C:Enterprise > Конфигурация в XML-файлы > Далее в контекстном меню;
    • Проект V8 — здесь указан тот проект, на котором вы выполняли команду. Если вы вы выполняли команду в пустом месте панели, выберите здесь проект, который надо выгрузить;
    • В каталог — выберите этот вариант, если нужно выгрузить проект в иерархическую структуру .xml-файлов, и укажите путь к каталогу с будущими файлами;
    • В архив — выберите этот вариант, если нужно дополнительно поместить все выгруженные файлы в архив, и укажите путь к будущему файлу архива;
  2. Нажмите Готово. За ходом выгрузки можно наблюдать в диалоге экспорта. По окончании выгрузки 1C:EDT выдаст информационное сообщение.
  3. В конфигураторе «1С:Предприятия» загрузите конфигурацию из .xml-файлы или из архива;

Импортировать проект из файловой системы или архива

Чтобы, например, работать с содержимым репозитория Git, нужно импортировать его файлы и папки в рабочую область 1C:EDT в виде проектов.

Если вы клонируете репозиторий, то мастер клонирования позволяет выполнить такой импорт сразу же в процессе клонирования (флажок Импортировать все проекты после завершения операции клонирования).

Однако вы можете импортировать проект из файловой системы в любой другой момент несколькими способами: