Групповая разработка
Групповая разработка – это механизм конфигуратора, позволяющий осуществлять одновременную (групповую) разработку прикладного решения, при этом каждый отдельный разработчик работает только с захваченными объектами, которые становятся недоступными для внесения изменений другими разработчиками.
Хранилище конфигурации – это место, в которое средствами конфигуратора помещается общедоступная конфигурация и является основным элементом механизма групповой разработки, обеспечивающий синхронизацию работ нескольких разработчиков прикладного решения при раздельном доступе к объектам конфигурации.
Для групповой разработки подготавливается общедоступная сетевая папка, в которой создается хранилище конфигурации, для созданной конфигурации в хранилище назначается «Администратор». Хранилище содержит только разрабатываемую конфигурацию без пользовательских данных.
Создание хранилища конфигурации
Создается «Хранилище конфигурации» пунктом меню «Конфигурация – Хранилище конфигурации – Создать хранилище».
Открывается конструктор «Создание хранилища конфигурации» в котором на первом шаге указываем каталог расположения хранилища.
На следующем шаге производится настройка требований к паролям, которые будут использоваться разработчиками при подключении к хранилищу конфигурации.
На следующем шаге задается имя администратора хранилища и пароль, пароль можно сгенерировать, нажав по ссылке «Сгенерировать пароль».
После создания хранилища конфигурации, система предложит к нему подключиться.
После подключения у всех объектов конфигурации, в том числе у корневого узла дерева метаданных будет установлен замок.
Администрирование хранилища
Администрирование хранилища конфигурации выполняется в одноименном окне «Администрирование хранилища конфигурации», которое открывается пунктом меню «Конфигурация – Хранилище конфигурации – Администрирование хранилища…». На первой закладке «Пользователи» редактируются списки пользователей, должен существовать как минимум один пользователь с правом «Административные функции». Эти пользователи никак не связаны с пользователями информационной базы.
Виды прав пользователей хранилища конфигурации:
- Административные функции – позволяет работать со списком пользователей, отменять захват объектов в хранилище, захваченных другим разработчиком, при условии, что разработчик, осуществивший захват объекта, не работает в данный момент с хранилищем
- Изменение состава версий – позволяет выполнять откат, сокращение и объединение версий конфигураций
- Захват объектов – позволяет захватывать объекты в хранилище и их изменять. Если это право не установить, то объекты в хранилище можно только просматривать.
На закладке «Подключения» можно просмотреть список всех подключенных пользователей к хранилищу, а также выполнить их отключение.
На закладке «Отмена захвата» можно выполнить отмену захвата объекта в хранилище другим пользователем.
На закладке «Прочие» можно выполнить дополнительную настройку хранилища конфигурации.
Подключение к хранилищу конфигурации
Чтобы разработчик мог модифицировать конфигурацию, расположенную в хранилище, ему необходимо выполнить подключение к хранилищу, указав логин и пароль. При этом каждый разработчик работает в своей информационной базе данных, которая создается путем замещения текущей конфигурации на конфигурацию из хранилища. Такой подход позволяет каждому разработчику тестировать свои алгоритмы на собственных пользовательских данных.
Создается пустая конфигурация или конфигурация с данными, как конфигурация, загруженная в хранилище.
Если нужны в конфигурации пользовательские данные, то в пустую базу загружается информационная база пунктом меню «Администрирование – Загрузить информационную базу».
Далее открываем окно конфигурации пунктом меню «Конфигурация – открыть конфигурацию».
Используя пункт меню «Конфигурация – Хранилище конфигурации – Подключиться к хранилищу…» подключаемся к конфигурации. При подключении нужно указать каталог расположения хранилища, имя пользователя и пароль.
При подключении к хранилищу из существующей конфигурации с пользовательскими данными, система выдает предупреждение о замене текущей конфигурации конфигурацией из хранилища.
Работа с объектами конфигурации
Работу с объектами конфигурации осуществляют в окне «Хранилище конфигурации», а также часть действий будет доступно в дереве метаданных, такие как «Захват в хранилище», «Поместить в хранилище», «Отменить захват» и т.д, при этом будет еще отображаться состояние объектов конфигурации.
Захват объекта в хранилище
Хранилище при групповой разработке конфигурации не дает возможность изменять одновременно один и тот же объект разными разработчиками, то есть в каждый момент времени один объект может изменяться только одним разработчиком, после захвата его из хранилища. При этом каждый разработчик может захватить произвольное количество объектов, не захваченных другим разработчиком.
Для захвата нужно выбрать объект в окне «Хранилище конфигурации» или в дереве метаданных и в контекстном меню выбрать пункт «Захватить в хранилище…».
После выполнения пункта «Захватить в хранилище…» открывается окно «Захват объектов в хранилище конфигурации», где можно увидеть список захватываемых объектов, указать комментарий. Устанавливая флаг «Выполнять рекурсивно» можно захватить подчиненные объекты для их модификации. Флажок «Разрешить получать захваченные» позволит другим пользователям получать промежуточный вариант объекта, при этом могут быть потери изменений захваченного объекта, о чем система и предупреждает при установке данного флага.
Чтобы добавить новый объект в конфигурацию необходимо захватить корневой узел дерева объектов конфигурации, при этом рекурсивный захват выполнять не обязательно.
После создания нового объекта, он будет присутствовать только в конфигурации разработчика, об этом будет свидетельствовать красная галочка в сроке нового объекта, для помещения его в хранилище конфигурации необходимо выполнить пункт меню «Поместить в хранилище…».
После внесения необходимых изменений и отладки, готовый объект помещается обратно в хранилище со всеми внесенными изменениями, при этом внесенные изменения можно прокомментировать, с этого момента он становится доступным для захвата другим разработчиком. Для перемещения объекта в хранилище используется пункт меню «Поместить в хранилище…».
При перемещении объекта в хранилище желательно указывать поясняющий комментарий. Используя флаг «Оставить захваченными» можно оставить объект захваченным для дальнейшей работы с ним. Устанавливая флаг «Выполнять рекурсивно» в хранилище будут помещены подчиненные объекты.
Если разработчик посчитает нужным не сохранять внесенные изменения в захваченный объект, он может отменить захват объекта, тогда все внесенные изменения в захваченный объект будут потеряны. Для отмены используется пункт контекстного меню «Отменить захват в хранилище…»
История хранилища
Хранилище поддерживает ведение истории, так называемое версионирование, для этого используется окно «История хранилища», где каждая строка представляет очередную версию конфигурации в хранилище. Любую версию можно открыть, просмотреть, сравнить с текущей, сохранить в файл или загрузить вместо текущей. Получается механизм версионирования в хранилище позволяет произвести возврат объекта или всей конфигурации к какой-либо предыдущей версии, просмотреть объекты, свойства и модули.
Для открытия окна «История хранилища» используется пункт меню «Действия – История хранилища» или пиктограмма «История хранилища» в окне «Хранилище конфигурации».
В данном окне можно открыть выбранную версию конфигурации для просмотра изменений, загрузить выбранную конфигурацию из хранилища, что приведет к полной замене текущей конфигурации выбранной конфигурацией, выполнить сравнение и объединение конфигураций, выполнить откат назад с удалением ранних ненужных версий, сокращать старые версии, которые больше не актуальны или выполнять объединение версий.
Для наглядности истории по версиям из окна «История хранилища» используя пункт меню «Действия – Отчет по истории хранилища» можно сформировать отчет, который будет содержать информацию по добавленным и измененным объектам с уточнением времени и имени разработчика.
Отсюда можно сделать вывод, что хранилище конфигурации может использоваться не только при групповой разработке, но и одним разработчиком с целью версионирования и документирования изменений в конфигурации при ее разработке.
Хранилище расширения конфигурации
При групповой разработке расширений конфигураций, они должны быть размещены в отдельных хранилищах.
Для создания хранилища расширения конфигурации необходимо выполнить пункт меню «Действия – Конфигурация – Хранилище конфигурации – Создать хранилище» в окне «Конфигурация» с загруженным в нее расширением конфигурации. Остальные действия по работе с хранилищем расширения конфигурации, точно такие же как при работе с хранилищем основной конфигурации.
Механизм расширения конфигурации
Механизм расширения конфигурации – это специальный механизм, предназначенный для доработки конфигурации без изменения основной конфигурации (в том числе без снятия ее с поддержки).
Расширение очень похоже на обычную конфигурацию, также представлено в виде дерева метаданных и используются те же приемы, но есть ряд ограничений.
В расширение конфигурации можно добавлять новые объекты и заимствовать из основной конфигурации для их изменения.
Новые расширения добавляются в окне «Расширения конфигурации», которое открывается пунктом меню «Конфигурация – Расширения конфигураций».
При добавлении в конструкторе «Новое расширение конфигурации» необходимо указать Имя, Синоним, Префикс и назначение нового расширения.
Префикс будет автоматически добавляться к именам новых объектов расширения.
Назначение – определяет для чего создается расширение. Существует 3 назначения:
Исправление – расширение предназначено для исправления ошибок в основной конфигурации
Адаптация – расширение предназначено для изменения типовых объектов основной конфигурации под требования заказчика
Дополнение – расширение предназначено для добавления нового функционала в прикладное решение
По умолчанию система выставляет назначение Адаптация. Назначение влияет на порядок подключения расширений при старте конфигурации в режиме 1С:Предприятие, сначала подключаются расширения с назначением Исправление, потом Адаптация и последними Дополнение.
В окне «Расширение конфигурации» можно увидеть ряд информации и выполнить основную настройку расширений.
Свойства расширения:
- Имя – имя расширения
- Версия – версия расширения
- Назначение – назначение расширения
- Активно – включение/ отключение расширения
- Безопасный режим, имя профиля – расширение будет работать в безопасном режиме. Если прикладное решение работает в клиент-серверном варианте, то возможность расширения серверных модулей регулируется профилем безопасности, который указывается здесь же. Для работы расширения не в безопасном режиме флаг снимают
- Защита от опасных действий – при добавлении расширения в информационную базу, а также при выполнении потенциально опасных действий расширением, система будет запрашивать разрешение у пользователя на выполнение этих действий
- Используется в распределенной базе – указывает, на то что данное расширение может использоваться в распределенной базе
- Область действия – указывает, что расширение может быть применено ко всей информационной базе (Информационная база) или к конкретной области данных (Разделение данных), при условии, что расширение подключается к распределенной информационной базе
- Использовать основные роли для всех пользователей – при установке флага всем пользователям конфигурации назначаются все основные роли расширения.
Для работы в расширении с существующими объектами из основной конфигурации, их необходимо добавить в расширение используя в дереве метаданных пункт контекстного меню «Добавить в расширение».
После этого объект становится доступен в расширении для работы с ним.
Аннотации расширения программных методов
Расширения конфигурации позволяют расширять программные методы.
Существует несколько аннотаций расширения программных методов:
Аннотация Перед – вначале будет выполнен метод расширения, а затем расширяемый метод
Аннотация После – вначале будет выполняться расширяемый метод, а затем метод расширения
Аннотация Перед и После – вначале будет выполнен метод расширения отмеченный аннотацией Перед, затем расширяемый метод, а затем метод расширения с аннотацией После
Аннотация Вместо – метод расширения полностью заменяет расширяемый метод. Для модификации результата работы расширяемого метода используется глобальный метод ПродолжитьВызов(), в качестве параметров должны быть указаны фактические параметры, которые переданы в расширяемый метод
Аннотация ИзменениеИКонтроль – позволяет точечно изменять текст расширяемого метода. Заимствуется весь расширяемый метод и с помощью директивы препроцессора #Вставка … #КонецВставки пишется новый программный код, а с помощью директивы препроцессора #Удаление … #КонецУдаления отмечается фрагмент кода, который нужно будет при следующем обновлении удалить, при этом данный код не выполняется и служит для восстановления предыдущего состояния метода и контроля возможности его применения.
Для процедур можно указать один из четырех вариантов, а для функций – только &Вместо или &ИзменениеИКонтроль.
Проверка возможности применения
Не всякое расширение может применяться к конфигурации, даже если само по себе расширение не содержит ошибок. Для проверки конкретного расширения в окне «Расширения конфигурации» применяется пункт «Конфигурация – Проверка возможности применения» или можно проверить разом все расширения используя пункт меню «Действия – Проверка возможности применения всех расширений»
В результате выведется служебное окно «Проверка возможности расширения» со списком обнаруженных проблем. Двойным щелчком можно перейти на место выявленной проблемы. В случае не выявления проблем выводится служебное окно с текстом «Проблем применения не обнаружено.»
Подключение расширений конфигураций
Если необходимо разработанное расширение конфигурации передать и подгрузить в другую конфигурацию, тогда готовое расширение конфигурации можно сохранить в отдельный файл *.cfe и передать его для загрузки в другую типовую конфигурацию. Здесь же можно загрузить расширение из файла для работы с ним.
В режиме 1С:Предприятие, открываем окно «Функции технического специалиста», в группе стандартные находим пункт «Управление расширениями конфигурации» и запускаем его. В данном окне можно просмотреть список всех загруженных расширений конфигурации, активировать и деактивировать расширения, выполнить базовую настройку, а также загрузить новые или сохранить существующие расширения конфигурации.
Мобильная платформа
Мобильная платформа – это платформа, предназначенная для создания, отладки и сборки мобильных приложений, которые будут работать на устройствах с операционной системой Android, iOS или Windows.
Существует три варианта мобильной версии:
- Платформа мобильного клиента – позволяет создать приложение, мобильный клиент, которое будет взаимодействовать с информационной базой онлайн, аналогично тому, как это делает десктопное клиентское приложение
- Платформа мобильного клиента с автономным режимом – позволяет создать приложение, мобильный клиент с автономным режимом, которое при наличии соединения будет взаимодействовать с информационной базой онлайн, аналогично тому, как это делает десктопное клиентское приложение, а при отсутствии соединения будет работать с локальной информационной базой. При восстановлении соединения выполняется синхронизация данных между мобильным устройством и сервером информационной базы
- Мобильная платформа – позволяет создать приложение мобильной платформы, которое будет работать с локальной информационной базой
Мобильная платформа устанавливается непосредственно на мобильный телефон, для каждого процессора с разной архитектурой используется свой установочный файл.
На сайте 1С:ИТС по ссылке https://its.1c.ru/db/edtdoc/content/257/hdoc можно ознакомиться подробно.
Отладка программного кода, написанного для мобильного приложения производится с подключением предмета отладки «Мобильное приложение». Источником данного предмета служит клиент (Мобильное приложение).
Функциональность мобильной платформы отличается от функциональности платформы для персонального компьютера.
Ваганов Сергей, эксперт в области разработки прикладных решений на платформе 1С:Предприятие, преподаватель-методист CORS Academy и автор курса «Разработчик 1С с нуля до профессионала».
Статья создана на основе материалов курса «Разработчик 1С с нуля до профессионала».
























































































