Обновлено: 16.02.2012
Внимание! Данная статья описывает механизм получения обновления версий конфигурации, которые не используют Библиотеку интернет-поддержки пользователей.
Механизм загрузки исправлений (патчей) реализован в Библиотеке интернет-поддержки пользователей.
Демонстрационная конфигурация "Автоматическое обновление конфигурации информационной базы" предназначена для иллюстрации технологии обновления конфигурации "1С:Предприятия 8" в автоматическом режиме. Конфигурация не является законченным (с предметной точки зрения) прикладным решением, но представляет собой универсальный компонент, готовый для использования в других прикладных решениях.
Методические решения, предложенные в конфигурации, могут использоваться в дальнейших разработках фирмы "1С" в том же или несколько модифицированном виде.
Механизм автоматического обновления конфигурации информационной базы (далее механизм обновления) рассчитан как на неподготовленных пользователей, так и на администраторов внедрений. Сценарий работы неподготовленного пользователя подразумевает получение и установку обновлений за минимальное количество нажатий кнопок мыши и требует от пользователя минимального набора специальных знаний в области IT. Сценарий работы администратора внедрения предполагает гибкую настройку параметров обновления, включая "отложенную" установку обновлений в указанное время.
Ключевые свойства механизма обновления:
Функциональность | Файловая ИБ | Серверная ИБ |
---|---|---|
Проверка наличия и получение обновлений | ||
Получение обновлений через Интернет | V | V |
Проверка доступных обновлений через Интернет при запуске приложения | V | V |
Обновление с использованием файла поставки (.cf) или файла поставки обновления (.cfu) | V | V |
Обновление из основной конфигурации | V | V |
Варианты установки обновлений | ||
Интерактивный режим обновления по требованию - "прямо сейчас" | V | V |
Планирование установки обновлений на указанные дату и время - "отложенный" режим | V | |
Сервисные функции | ||
Кеширование полученных из Интернета файлов обновления на локальной машине | V | V |
Индикация длительной установки обновлений в интерактивном режиме "прямо сейчас" | V | V |
Создание резервной копии ИБ перед установкой обновлений и восстановление ИБ в случае нештатной ситуации (ошибки) | V | V |
Выполнение первоначального заполнения и обновления данных после обновления конфигурации ИБ | V | V |
Принудительное отключение активных соединений с ИБ перед установкой обновлений | V | |
Уведомление пользователя о результатах "отложенного" обновления по электронной почте | V* |
* Настраивается в конкретной прикладной конфигурации и зависит от имеющихся в ней средств отправки сообщений электронной почты. Для повышения оперативности доставки отчетов можно воспользоваться сторонними средствами для интеграции электронной почты с sms-сервисами сотовых операторов.
В целях упрощения пользовательского интерфейса в механизме реализован пошаговый помощник обновления конфигурации. Помощник обновления запрашивает у пользователя варианты действий и недостающие параметры на всем цикле - от проверки наличия обновлений до уведомления о результатах установки обновлений.
На первой странице помощника выберите вариант Пользовательский сайт в Интернете (рекомендуется). Если на веб-сайте поставщика обновлений имеется доступное обновление, то помощник сообщает номер версии, краткое описание, размер обновления и предлагает его установить.
ПРИМЕЧАНИЕ
В некоторых организациях для соединения с Интернетом требуется дополнительно указать имя пользователя и пароль для доступа на прокси-сервер. Информацию об использовании прокси-сервера можно получить у администратора локальной сети.
По умолчанию помощник проверяет наличие обновлений конфигурации через Интернет при каждом запуске приложения. Для включения или отключения проверки обновлений на запуске служит флажок Проверять наличие обновления конфигурации при каждом запуске программы.
Если веб-сайт поставщика обновлений требует авторизацию, то помощник запросит пользователя указать код и пароль. После нажатия кнопки Далее помощник устанавливает соединение с веб-сайтом, используя указанные код пользователя и пароль, и получает файлы обновления локально на компьютер. Получение файлов обновления с пользовательского сайта может занять продолжительное время, в зависимости от объема конкретного файла и скорости подключения к Интернету.
После того как обновление было получено локально на компьютер, помощник предлагает его установить. Установка обновления выполняется от имени текущего пользователя. Поэтому помощник может запросить ввести пароль, если для доступа к информационной базе необходима авторизация. В случае клиент-серверного варианта развертывания системы также может потребоваться ввести имя и пароль администратора кластера серверов.
Перед началом обновления конфигурации рекомендуется задавать создание резервной копии информационной базы. Резервная копия используется для автоматического восстановления информационной базы в случае нештатной ситуации. Если для резервного копирования используются сторонние средства, то можно отключить автоматическое создание резервной копии с помощью ссылки Резервная копия, расположенной внизу страницы помощника.
ПРИМЕЧАНИЕ
В файловом варианте развертывания системы перед началом обновления необходимо завершить работу пользователей, подключенных к информационной базе. В клиент-серверном варианте завершение активных и блокировка новых соединений выполняются автоматически.
При нажатии кнопки Далее помощник выполнит интерактивную установку обновления конфигурации. Процесс обновления конфигурации может занять продолжительное время, в зависимости от производительности компьютера и объема информационной базы. После завершения обновления конфигурации "1С:Предприятие" будет автоматически перезапущено, и система будет готова к дальнейшей работе.
В случае клиент-серверного варианта развертывания системы также возможно задавать отложенное по времени обновление. В указанную дату и время механизм автоматически запустит установку обновлений в фоновом режиме. "Отложенный" режим позволяет планировать установку обновлений на время минимальной активности работы с информационной базой, например, на ночь или на выходные.
Для планирования и запуска установки обновлений используется задание Планировщика Windows (Task Scheduler) на локальной машине. Задание планировщика автоматически удаляется после выполнения обновления.
ПРИМЕЧАНИЕ
Демонстрационная конфигурация механизма обновления распространяется в виде файла поставки, что позволяет поставить любую прикладную конфигурацию к ней на поддержку. В то же время файл поставки может использоваться для сравнения и объединения с прикладной конфигурацией и без постановки на поддержку. В обоих случаях его можно рассматривать как универсальный компонент, готовый для использования в других прикладных решениях, или "библиотеку".
Механизм проверки и получения обновлений через Интернет взаимодействует с веб-сайтом поставщика обновлений, к которому предъявляется ряд требований. "Открытая" часть веб-сайта (например, http://downloads.1c.ru/) предоставляет анонимный доступ к информации о доступных обновлениях, в то время как непосредственное получение файлов обновления с "закрытой" части сайта может быть ограничено авторизацией по имени и паролю.
"Открытая" часть сайта содержит файлы с информацией об обновлении в определенном формате:
Имя файла или каталога | Описание |
---|---|
Корневой каталог с информацией об обновлениях |
Например: http://downloads.1c.ru/ipp/ITSREPV/V8Update/Configs/. Путь к каталогу задается в функциях "переопределяемого" общего модуля ОбновлениеКонфигурации:
|
Каталог конфигурации |
Название конфигурации. Например: Accounting. |
Каталог редакции |
Номер редакции и подредакции конфигурации без разделителей. Например: 20 (для редакции 2.0 конфигурации) |
Каталог версии платформы 1С:Предприятие |
Номер редакции и подредакции платформы без разделителей. Например: 82 (для редакции 8.2 платформы 1С:Предприятие) |
news.htm | Документ "что нового" в обновлении |
UpdInfo.txt | Файл с информацией об обновлении конфигурации |
v8upd11.zip | ZIP-архив с файлом списка всех обновлений конфигурации (v8cscdsc.xml) |
Т.е. полный путь к файлу получается, например, следующий: http://downloads.1c.ru/ipp/ITSREPV/V8Update/Configs/Accounting/20/82/UpdInfo.txt
"Закрытая" часть сайта (например: http://downloads.v8.1c.ru/tmplts/) содержит файлы обновлений:
Имя файла или каталога | Описание |
---|---|
Корневой каталог файлов обновлений |
Например: http://downloads.v8.1c.ru/tmplts/. Путь к каталогу задается в свойстве конфигурации Метаданные.АдресКаталогаОбновлений |
Каталог поставщика | Название поставщика. Например: 1C. Задается в файле со списком обновлений конфигурации v8cscdsc.xml |
Каталог конфигурации | Название конфигурации. Например: Accounting. Задается в файле со списком обновлений конфигурации v8cscdsc.xml |
Каталог версии конфигурации | Строка версии конфигурации. Например: 2_1_1_2. Задается в файле со списком обновлений конфигурации v8cscdsc.xml |
Файл архива обновления | Файл архива поставки обновления конфигурации. Например: 1cv8.zip. Задается в файле со списком обновлений конфигурации v8cscdsc.xml |
index.zip | Файл архива c рекламой (опционально) |
Т.е. полный путь к файлу получается, например, следующий: http://downloads.v8.1c.ru/tmplts/1с/Accounting/2_0_32_6/1cv8.zip
ПРИМЕЧАНИЕ При настройке веб-сайта поставщика обновлений - такое перенаправление не является обязательным. Однако, если оно понадобится, то перенаправление можно осуществлять путем анализа значения user-agent: Для 1С:Предприятие 8.1 – значение user-agent содержит подстроку "1C+Enterprise/8.1" |
Файл с информацией об обновлении конфигурации UpdInfo.txt содержит параметры:
Пример UpdInfo.txt:
Копировать в буфер обменаVersion=2.1.1.2 FromVersions=;1.5.21.2;1.5.22.2;1.5.22.3;1.6.3.2;1.6.4.7;2.1.1.1; UpdateDate=11.04.2008
Файл списка обновлений конфигурации v8cscdsc.xml содержит перечень всех доступных обновлений данной конфигурации в формате:
Копировать в буфер обмена<?xml version="1.0" encoding="UTF-8" ?> <v8u:updateList version="1.1" xmlns:v8u="http://v8.1c.ru/configuration-updates"> <v8u:date>Дата подготовки файла</v8u:date> <v8u:update configuration="Короткое имя конфигурации"> <v8u:vendor>Название поставщика конфигурации</v8u:vendor> <v8u:file>Относительный путь к архиву обновления</v8u:file> <v8u:size>Размер архива обновления в байтах</v8u:size> <v8u:version>Версия обновления</v8u:version> <v8u:target>Версия для обновления</v8u:target> ... </v8u:update> ... </v8u:updateList>
Пример v8cscdsc.xml:
Копировать в буфер обмена<?xml version="1.0" encoding="UTF-8" ?> <v8u:updateList version="1.1" xmlns:v8u="http://v8.1c.ru/configuration-updates"> <v8u:date>24.11.2011T11:15:28</v8u:date> <v8u:update configuration="БухгалтерияПредприятия"> <v8u:vendor>Фирма "1С"</v8u:vendor> <v8u:file>1c/Accounting/2_1_1_2/update/1cv8.cfu</v8u:file> <v8u:size>1 024</v8u:size> <v8u:version>2.1.1.2</v8u:version> <v8u:target>2.1.1.1</v8u:target> ... </v8u:update> <v8u:update configuration="БухгалтерияПредприятия"> <v8u:vendor>Фирма "1С"</v8u:vendor> <v8u:file>1c/Accounting/2_1_1_1/update/1cv8.cfu</v8u:file> <v8u:size>2 048</v8u:size> <v8u:version>2.1.1.1</v8u:version> <v8u:target>1.6.6.5</v8u:target> ... </v8u:update> </v8u:updateList>
Файл архива рекламы index.zip содержит обязательный HTML-документ index.htm и произвольный набор вспомогательных файлов. Реклама показывается пользователю во время интерактивной установки обновлений.
Для получения и установки обновлений через Интернет в демонстрационной конфигурации "Автоматическое обновление конфигурации информационной базы" необходимо:
Механизм обновления использует следующие компоненты ОС Windows:
п/п | Наименование компонента и минимальная версия | Комментарии |
---|---|---|
1. | WMI CORE 1.5 | Используется для работы с планировщиком заданий Windows (Task Scheduler). Компонент может отсутствовать в ОС Windows 95, 98 и NT 4.0. В этом случае помощник обновления предлагает пользователю его скачать |
2. | Internet Explorer 5.0 | Необходим для отображения заставки интерактивного обновления конфигурации средствами HTML Application (HTA) |
3. | Microsoft Windows Script Host 5.6 | Необходим для работы скрипта обновления конфигурации в "отложенном" режиме. Компонент может отсутствовать в ОС Windows 95 и NT 4.0 |
Рекомендуется проводить внедрение библиотеки в прикладную конфигурацию в три последовательных этапа:
При этом первый шаг следует выполнять только при первом внедрении библиотеки. При обновлении очередной версии библиотеки в прикладной конфигурации все необходимые предусловия, скорее всего, уже будут выполнены.
На первом этапе необходимо убедиться, что в конфигурации присутствуют обязательные объекты метаданных и связи между ними. Для проверки предусловий следует руководствоваться общим правилом:
п/п | Название объекта | Требования |
---|---|---|
Роли | ||
1. | ПолныеПрава | Включает полный набор прав в конфигурации |
Права | ||
2. | Все объекты метаданных | Для роли ПолныеПрава задан полный набор прав |
Справочники | ||
3. | Пользователи | Содержит учетные записи пользователей конфигурации |
Общие модули | ||
4. | ГлобальныйМодуль Процедуры и функции:
|
Модуль с глобальными процедурами и функциями доступен в режимах Клиент, Сервер и Внешнее соединение. Заменяемость Если в конфигурации отсутствует указанный модуль, то допускается использовать любой другой глобальный модуль.
|
5. | ОбщегоНазначения Процедуры и функции:
|
Процедуры и функции допускается переносить из библиотеки только в случае их отсутствия в общем модуле |
6. | ОбновлениеИнформационнойБазы Процедуры и функции:
|
Общий модуль доступен в режимах Клиент и Внешнее соединение. Содержит процедуры и функции подсистемы первоначального заполнения и обновления данных информационной базы после изменения версии конфигурации. Экспортируемая процедура ВыполнитьОбновлениеИнформационнойБазы является "точкой входа" в подсистему. Сценарии внедрения
Следует убедиться, что код общего модуля поддерживает выполнение в режиме Внешнего соединения, и при необходимости "обернуть" вызовы клиентских функций в проверки вида "#Если Клиент Тогда…" |
Модуль приложения | ||
7. | В обработчике события ПриНачалеРаботыСистемы | Вызвать функцию ВыполнитьОбновлениеИнформационнойБазы общего модуля ОбновлениеИнформационнойБазы |
На втором этапе выполняется перенос объектов метаданных из библиотеки в конфигурацию "как есть" (если не указано иное):
п/п | Название объекта | Инструкция |
---|---|---|
Подсистемы | ||
1. | ОбновлениеКонфигурации | Перенести все объекты метаданных, входящие в подсистему (находится в подсистеме УниверсальныеМеханизмы), кроме следующих:
|
Права | ||
2. | Обработка ОбновлениеКонфигурации | Настроить права для ролей таким образом, чтобы все пользователи конфигурации имели доступ на использование |
Модуль приложения | ||
3. | Функция ОбработатьПараметрыЗапуска | Рекомендуется перенести из библиотеки "как есть". |
4. | В обработчике события ПриНачалеРаботыСистемы, после вызова процедуры ВыполнитьОбновлениеИнформационнойБазы общего модуля ОбновлениеИнформационнойБазы |
|
5. | В обработчике события ПриНачалеРаботыСистемы, в самом конце функции | Вызвать процедуру ПроверитьНаличиеОбновлений обработки ОбновлениеКонфигурации |
Общие модули | ||
6. | ОбновлениеКонфигурации | Общий модуль доступен в режимах Клиент, Сервер и Внешнее соединение. В модуле определены только декларации (определения) процедур и функций, реализация которых должна выполняться в конкретной конфигурации для интеграции с имеющимися в ней подсистемами или внешними подсистемами:
Общий модуль в библиотеке содержит пример реализации, рассчитанный на совместное использование с модулем УправлениеЭлектроннойПочтой и обработкой Обозреватель |
На третьем этапе выполняется сохранение измененной конфигурации и "дымовое" функциональное тестирование. Этап считается выполненным, если не возникает ошибок, связанных с отсутствующими объектами и "дымовое" тестирование завершено успешно. В случае возникновения ошибок, связанных с отсутствующими объектами, необходимо перенести их из библиотеки и повторить третий этап.
Обязательные сценарии "дымового" тестирования:
Для диагностики ошибок при "дымовом" тестировании следует использовать средства, указанные в разделе "Диагностика нештатных ситуаций".
Дистрибутив конфигурации находится в каталоге \1CITS\EXE\DemoAutoUpdate82.
Сделать копирование на жесткий диск
После установки файл поставки библиотеки (.cf-файл) автоматически скопируется в каталог шаблонов.