A4 · документация
Проверено на стенде

A4 для 1С:Предприятие

Из карточки файла в 1С документ открывается в редакторе: таблицы — в F1, документы — в A4; после сохранения 1С создаёт новую версию файла и снимает захват. Редактор работает на сервере в сети организации.

Проверено: 1С:Предприятие 8.3.27 (Windows, тонкий клиент), конфигурация на БСП 3.1. Сервер: версия 0.4.0, протокол обмена 1. Расширение: 0.4.0.1. Обновление проверяется с версии 0.3.0.15.

Что понадобится

1. Подготовьте сервер

Создайте ключ организации длиной не меньше 32 байт вне каталога программы. Читать его должен только служебный пользователь контейнера, указанный в паспорте комплекта:

install -d -m 700 /etc/a4
umask 077
openssl rand -base64 32 > /etc/a4/organization.key
chmod 600 /etc/a4/organization.key

Загрузите образ сервера из комплекта (docker load), сверьте digest с паспортом выпуска и запустите его командой из паспорта. Правила запуска:

Проверка (в примере частный адрес 10.0.0.20):

curl --fail http://10.0.0.20:17867/health

В ответе должны быть version: "0.4.0", protocol: 1 и latestExtensionVersion: "0.4.0.1".

2. Установите расширение

  1. Откройте конфигуратор, раздел расширений конфигурации.
  2. Добавьте файл расширения 0.4.0.1 из комплекта.
  3. Оставьте расширение в безопасном режиме. Снимайте защиту от опасных действий, только если этого требует ваша политика, и после проверки файла.
  4. Обновите конфигурацию базы и запустите тонкий клиент.
  5. Выдайте сотрудникам роль редактирования документов из расширения.
  6. Откройте настройку подключения, укажите частный адрес сервера и ключ организации. Ключ хранится в безопасном хранилище БСП, поле скрывает ввод.
  7. Откройте настройку повторно: должны быть видны версии расширения и сервера и строка «Версии совместимы».

3. Первая проверка

  1. Возьмите копию тестовой книги .xlsm, не рабочий файл.
  2. В карточке файла нажмите «Открыть в редакторе».
  3. Измените одну ячейку и сохраните.
  4. Убедитесь, что 1С создала новую версию и сняла захват.
  5. Скачайте новую версию и откройте её в Excel: диалога восстановления быть не должно, макросы на месте.

Обновление с 0.3.0.15 до 0.4.0.1

Перед началом сохраните прежний файл расширения, digest образа и SHA256SUMS. Проверьте, что активных сеансов нет: /health должен вернуть activeSessions: 0.

Сервер

  1. Загрузите новый образ и запишите digest.
  2. Остановите контейнер 0.3.0, не удаляя файл ключа и том состояния.
  3. Запустите 0.4.0 с тем же ключом и тем же томом.
  4. Проверьте /health: версия 0.4.0, протокол 1, активных сеансов 0.

Расширение

В конфигураторе выберите установленное расширение и штатную команду «Обновить расширение из файла». Не удаляйте старое расширение: удаление превращает обновление в переустановку. При первом чтении настроек расширение один раз переносит ключ в безопасное хранилище; адрес и ключ заново вводить не нужно.

Откат

  1. Убедитесь, что активных сеансов нет.
  2. В настройке подключения нажмите «Подготовить откат к 0.3.0.15». Ключ при этом не показывается и не пишется в файл.
  3. Остановите новый контейнер и запустите прежний образ по сохранённому digest с тем же ключом и томом.
  4. Штатно обновите расширение из сохранённого файла 0.3.0.15.
  5. Проверьте /health и повторите первую проверку на копии файла.

Типовые отказы

Что видит администраторЧто делать
«Сервер отклонил ключ организации» / HTTP 401Вставить тот же ключ, который смонтирован в контейнер
«Сервер документов недоступен»Проверить частный адрес, контейнер и межсетевой экран
«Все места редактора заняты» / HTTP 429Закрыть завершённый сеанс или увеличить число мест после проверки памяти
«Обновите расширение до X»Поставить указанную совместимую версию расширения
«Обновите сервер документов до версии Y»Заменить образ по разделу «Обновление»
«Объект уже заблокирован»Завершить штатный сеанс редактирования в 1С; блокировку не обходить