Вся документация

A4 для 1С

Сотрудник открывает книгу Excel прямо из карточки файла в 1С, правит её в браузере и сохраняет. 1С сама создаёт новую версию файла: не нужно выгружать книгу, искать её в папке и загружать обратно. Администратор ставит один сервер в сети организации и одно расширение в базу; файлы не уходят во внешнее облако.

Что умеет

В Windows, в тонком клиенте, с конфигурацией на БСП 3.1:

  • в карточке файла есть команда «Открыть в редакторе»; книга открывается в редакторе таблиц F1 в браузере;
  • после сохранения 1С создаёт новую версию файла штатным механизмом;
  • книга с макросами (.xlsm) сохраняется целиком: число частей файла не меняется, проект VBA остаётся байт в байт прежним;
  • сохранённую версию открывает Microsoft Excel без диалога восстановления — только обычное предупреждение о макросах;
  • форма настройки показывает версии расширения и сервера и строку «Версии совместимы»;
  • при обновлении адрес сервера и ключ организации переносятся сами; при откате возвращаются в прежний вид.
Чего нет. Редактор не запускает макросы — только сохраняет их. Веб-клиент 1С и 1С:Фреш не поддерживаются.

Как работает

  • Где живут файлы. Книга хранится в 1С, как и раньше. Версии и блокировки остаются под управлением 1С; сервер их не заменяет.
  • Путь документа. Тонкий клиент передаёт книгу серверу документов в частной сети. Сотрудник правит её в браузере. После сохранения сервер возвращает книгу в 1С, и 1С записывает новую версию.
  • Что не уходит из сети. Документ идёт только между тонким клиентом 1С, сервером организации и браузером сотрудника. Внешней передачи нет. Сервер не публикуется в Интернет.
  • Что пишется в журнал. Запуск, ошибки и число сохранений. Без содержимого документов и без ключей.

Требования

  • Windows с тонким клиентом 1С:Предприятие 8.3 и конфигурацией на БСП 3.1;
  • Linux-сервер x86_64 с Docker; не меньше 8 ГиБ свободной памяти на одно рабочее место редактора;
  • частный адрес сервера и свободный TCP-порт 17867;
  • комплект выпуска, у которого совпали суммы из SHA256SUMS;
  • права администратора в конфигураторе и резервная копия базы.

Установка

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

Создайте ключ организации длиной не меньше 32 байт вне каталога программы. Отдайте файл служебному пользователю контейнера (UID 65532); другие пользователи читать его не должны:

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

Загрузите образ из архива комплекта, сверьте digest с паспортом выпуска и запустите сервер только на частном адресе. Вместо ЧАСТНЫЙ_АДРЕС подставьте адрес сервера в сети организации; номера версий — из блока «Скачать» внизу страницы.

gzip -dc a4-server-ВЕРСИЯ_СЕРВЕРА-linux-amd64.tar.gz | docker load
docker run -d --name a4-1c \
  --restart unless-stopped \
  --publish ЧАСТНЫЙ_АДРЕС:17867:17867 \
  --volume /etc/a4/organization.key:/run/secrets/organization.key:ro \
  --volume a4-server-state:/var/lib/a4 \
  --env A4_PUBLIC_URL=http://ЧАСТНЫЙ_АДРЕС:17867 \
  --env A4_ORGANIZATION_KEY_FILE=/run/secrets/organization.key \
  --env A4_VERSION=ВЕРСИЯ_СЕРВЕРА \
  --env A4_PROTOCOL=1 \
  --env A4_LATEST_1C_EXTENSION_VERSION=ВЕРСИЯ_РАСШИРЕНИЯ \
  a4-server:ВЕРСИЯ_СЕРВЕРА@sha256:DIGEST_ИЗ_ПАСПОРТА
  • не публикуйте порт на 0.0.0.0 и не открывайте его в Интернет;
  • ключ подключается к контейнеру только на чтение;
  • состояние сервера лежит в отдельном томе — при обновлении его не удаляют;
  • образ запускается по точному digest, а не по метке.

Проверка:

curl --fail http://ЧАСТНЫЙ_АДРЕС:17867/health

В ответе должны быть protocol: 1, а поля version и latestExtensionVersion — как в блоке «Скачать».

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

  1. Остановите пользовательские сеансы и сделайте резервную копию базы.
  2. Откройте конфигуратор, раздел расширений конфигурации.
  3. Добавьте файл расширения .cfe из комплекта. В списке появится расширение A4Office.
  4. Снимите у расширения признаки «Безопасный режим» и «Защита от опасных действий». Без этого 1С не сохранит ключ в безопасном хранилище БСП и не обратится к серверу. Делайте это только после сверки файла по SHA256SUMS; сервер должен оставаться в частной сети.
  5. Обновите конфигурацию базы и запустите тонкий клиент.
  6. Дайте нужным сотрудникам роль A4_ОсновнаяРоль.
  7. Откройте A4: настройка подключения. Укажите частный адрес сервера и ключ организации. Поле ключа скрывает ввод.
  8. Откройте настройку ещё раз. Должны быть видны версии расширения и сервера и строка «Версии совместимы».

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

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

Обновление и откат

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

Сервер

  1. Загрузите новый архив (docker load) и запишите digest.
  2. Убедитесь, что в старом контейнере нет активных сеансов, и остановите его. Файл ключа и прежний том не удаляйте.
  3. Создайте том a4-server-state, один раз перенесите в него содержимое прежнего тома и запустите новый образ с тем же ключом, новым томом и точным digest.
  4. Проверьте /health: новая версия, protocol: 1, активных сеансов 0.

Расширение

У расширения сменилось техническое имя, поэтому это управляемая замена, а не штатное «Обновить из файла».

  1. Остановите сеансы пользователей и сделайте резервную копию базы.
  2. Не удаляйте прежнее расширение. Добавьте новое рядом, снимите у него безопасный режим и защиту от опасных действий, обновите конфигурацию базы.
  3. Дайте пользователям роль A4_ОсновнаяРоль вместо прежней. Прежнее расширение пока остаётся установленным, но неактивным.
  4. Откройте форму настройки. При первом открытии A4 сам переносит адрес и ключ, проверяет, что ключ читается, и только потом удаляет старые значения. Вводить их заново не нужно.
  5. Убедитесь, что адрес подхвачен, сервер отвечает и версии совместимы.
  6. Только после этого снимите прежнее расширение, снова обновите конфигурацию базы и повторите первую проверку.

Откат

  1. Убедитесь, что активных сеансов нет.
  2. В форме «Администрирование → Настройка подключения» нажмите «Подготовить откат к …» (номер прежней версии). Команда один раз возвращает адрес и ключ в формат прежней версии. Ключ не показывается и не пишется в файл.
  3. Остановите новый контейнер и запустите прежний образ по сохранённому digest с прежними ключом и томом.
  4. Снимите A4Office и установите сохранённый прежний файл расширения.
  5. Проверьте /health и повторите первую проверку на копии файла.

Долго работать на прежней версии не рекомендуем: в ней ключ хранился в общих настройках. После повторного обновления перенос сработает снова.

Безопасность

  • Сервер слушает только частный адрес. Привязка к 0.0.0.0 и публикация в Интернет не поддерживаются.
  • На сервере ключ организации лежит в файле с правами 600 вне образа. В 1С он хранится средствами БСП в безопасном хранилище; в общих настройках остаётся только адрес.
  • Значения ключа нет ни в файле базы, ни в пользовательской выгрузке.
  • На каждый открытый документ сервер выдаёт отдельный случайный токен сеанса. Он действует только для этого документа и не заменяет ключ организации.
  • Документы и ключи в журнал не пишутся.
  • Если редактор прервался, сохранение не подтверждается. Неактивное рабочее место удаляется по тайм-ауту. Восстановление черновика после падения всей машины не обещаем.
  • Смена ключа: замените файл на сервере, перезапустите контейнер и введите новое значение в форме настройки.

Сообщая о проблеме, не прикладывайте ключ организации и рабочие файлы.

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

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

Скачать

Комплект A4 для 1Сверсия 2026.4.1 · расширение 2026.4.1.1 · сервер 2026.4.1 · протокол обмена 1
Скачать комплект
ФайлРазмерНазначение
A4-1C-2026.4.1.1.cfe26 269 байтрасширение конфигурации (техническое имя A4Office): документы, таблицы и презентации
a4-server-2026.4.1-linux-amd64.tar.gz211 521 034 байтархив образа сервера: F1 (xlsx/xlsm), A4 (docx), P2 (pptx), linux/amd64
USTANOVKA-ADMIN.md5 945 байтустановка для администратора
OBNOVLENIE.md5 262 байтобновление с прежних версий и откат
POLZOVATEL.md1 210 байтпамятка пользователю
BEZOPASNOST.md2 133 байтбезопасность и хранение ключа
PASPORT.md1 128 байтпаспорт выпуска: digest образа и SHA-256 архива
SHA256SUMS912 байтконтрольные суммы всех файлов

Сведения о выпуске

ЧтоЗначение
Версия продукта2026.4.1 (расширение 2026.4.1.1, сервер 2026.4.1, протокол обмена 1): документы в A4, таблицы в F1, презентации в P2
Ответ /healthversion: "2026.4.1", protocol: 1, latestExtensionVersion: "2026.4.1.1"
Архитектура сервераlinux/amd64
Digest образа a4-serversha256:71167949df52d277ed2dae5fbd839b5b5cb7f06ee14d568ad2c7a396128a66d8

Контрольные суммы

9a9bf60fe5e05ddb382251a23cc1e74788d2914fbe55b72b51c548f5490b70bc  A4-1C-2026.4.1.1.cfe
b1dd273c00a373ed15cae4321f62f89ba564c84e5441341a74f5f8e831fe5829  BEZOPASNOST.md
3b9927c4dec37b1445dec0dea4aec1ac59c64b8e63887c08422711384737c06c  CHANGELOG.md
cb6077d07afe841aa701dcd518265748337d3eda7339acfe37ecac6d5967cf58  OBNOVLENIE.md
0d4bdac9bf2c94969e1d20a7a4145c6eaaffe78c7b80726386d094790f200140  PASPORT.md
fa2e121e724362b95b5122ba16678b4a4cb6a4cd1a876eab99113c088472c501  POLZOVATEL.md
21eb064e56e78545043ad1c1a3db582850e5b9ea93591c1f4fb26da7fd44d25a  README.md
815315d6e7e7a73e07bd61cb5e79566b25c8583d47e8d58fa4f85bcd0ffc1671  USTANOVKA-ADMIN.md
a66f1862eb9b6c2ff374a359cc070c68183655f7ec4e21aa7105b443421f9061  VYPUSK.md
12c790d835d2b5acfc6712a7e850ee8a3d81e7d7766812c90250d8b81cc1a7e4  a4-server-2026.4.1-linux-amd64.tar.gz
79a98e6982c4fdf144052e72979f145db882c72928c928cfa42d5d1d40337270  server-evidence.json

Проверка комплекта после скачивания:

shasum -a 256 -c SHA256SUMS