Общий доступ к базе 1С по сети: файловый вариант и сервер

· 11 мин

Содержание

Чтобы подключить базу 1С всем пользователям, положите её в общую сетевую папку с правом на изменение для нужной группы. Затем добавьте её на каждом компьютере по UNC-пути вида \\SRV\1C\Buh. Если пользователей больше пяти-десяти или база тяжёлая, ставьте сервер 1С с СУБД (MS SQL или PostgreSQL) и подключайте по строке Srvr="SRV1C";Ref="buh";. В обоих случаях каждому сотруднику нужна учётная запись внутри 1С и свободная клиентская лицензия.

Обычная история: бухгалтер годами работал в базе на своём ноутбуке, потом наняли второго, а следом кадровика. Базу копируют туда-сюда флешкой, и через месяц у каждого своя «правильная» версия. Решение одно: база живёт в одном месте, а все подключаются к ней по сети.

Всё описанное ниже относится к платформе 8.3 и не зависит от конфигурации. Бухгалтерия, ЗУП и УТ подключаются одинаково, различаются только пункты меню при заведении пользователей.

Файловая база или сервер 1С: что выбрать для общей работы

Выбор режима определяет всё остальное: где лежат данные, какие нужны лицензии и как делать копии.

ПризнакФайловый вариантКлиент-серверный вариант
Где хранятся данныеОдин файл 1Cv8.1CD в папкеБаза в СУБД, доступ через сервер 1С
Что нужно купитьТолько клиентские лицензииКлиентские лицензии + лицензия на сервер 1С
Ориентир по числу пользователейдо 5–10 одновременнодесятки и сотни
Устойчивость к сбоям сетиОбрыв может повредить файл базыСеанс рвётся, данные в СУБД целы
Сложность настройкиПолчасаДень-два с СУБД и правами
Резервное копированиеКопия файла, когда в базе никого нетРегламентные копии средствами СУБД на ходу

Цифра «5–10 пользователей» — ориентир, а не жёсткий предел. Платформа не ограничивает число подключений к файловой базе. Но все пользователи блокируют один и тот же файл по сети, и при активной работе (закрытие месяца , проведение пакетом) начинаются ожидания.

Для 2–4 человек в одном офисе файлового варианта хватает с запасом. Сервер нужен, когда база перевалила за 10–15 ГБ, пользователи жалуются на «зависания» при одновременном проведении или сотрудники работают из разных городов.

Есть и третий путь: опубликовать базу на веб-сервере (IIS или Apache) и работать через браузер или тонкий клиент по HTTP. Он удобен для удалённых сотрудников и работает поверх обоих вариантов хранения.

Как подключить файловую базу 1С по сети всем сотрудникам

Шаг 1. Готовим папку на компьютере-«сервере»

Базу лучше держать на компьютере, который работает постоянно: отдельный сервер, NAS с поддержкой SMB или хотя бы самый надёжный ПК в офисе.

  1. Создайте папку, например D:\1C_Bases\Buh, и скопируйте туда содержимое каталога базы (главное — файл 1Cv8.1CD). Перед копированием все должны выйти из программы.
  2. Откройте свойства папки → вкладка «Доступ» → «Расширенная настройка» → отметьте «Открыть общий доступ к этой папке».
  3. В «Разрешениях» общего ресурса дайте нужной группе право «Изменение» и «Чтение».
  4. На вкладке «Безопасность» (права NTFS) той же группе дайте «Изменение». Нужны оба уровня прав: действует более строгий из них.
  5. В расширенной настройке нажмите «Кэширование» и выберите вариант, при котором файлы не доступны в автономном режиме.

Права только на чтение не подойдут. Платформа при работе создаёт и удаляет служебные файлы рядом с базой, например 1Cv8tmp.1CD и файлы блокировок. Без права на изменение пользователь увидит ошибку доступа уже при входе.

Добавьте папку с базами в исключения антивируса на этом компьютере. Проверка файла 1Cv8.1CD «на лету» заметно тормозит работу, а иногда блокирует файл и приводит к ошибкам записи.

Шаг 2. Добавляем базу на рабочих местах

На каждом компьютере должна стоять платформа 1С той же версии, что и на остальных. Дальше:

  1. Запустите 1С, в окне выбора баз нажмите «Добавить».
  2. Выберите «Добавление в список существующей информационной базы».
  3. Задайте понятное имя: «Бухгалтерия (общая)».
  4. Тип расположения — «На данном компьютере или на компьютере в локальной сети».
  5. Путь укажите как \\SRV\1C_Bases\Buh, где SRV — имя компьютера с базой.

Используйте именно UNC-путь, а не подключённый сетевой диск вроде Z:\Buh. Буква диска на разных компьютерах бывает разной, а иногда диск просто не успевает подключиться после входа в Windows. Тогда 1С сообщает, что база не найдена, хотя файл на месте.

Единый список баз для всех: файл v8i и 1cestart.cfg

Когда компьютеров больше трёх, добавлять базу вручную на каждом неудобно. Особенно если баз несколько, а через полгода одна из них переезжает. Для этого у 1С есть общие списки информационных баз.

Сначала сделайте эталонный список. На любом компьютере, где базы уже добавлены, откройте файл %APPDATA%\1C\1CEStart\ibases.v8i. Он текстовый, каждая база в нём выглядит так:

[Бухгалтерия (общая)]
Connect=File="\\SRV\1C_Bases\Buh";
Folder=/

[Зарплата (сервер)]
Connect=Srvr="SRV1C";Ref="zup";
Folder=/

Скопируйте этот файл в общую папку, например \\SRV\1C_Bases\common.v8i, и дайте пользователям право только на чтение.

Затем подключите общий список на рабочих местах. Откройте файл 1cestart.cfg и добавьте строку:

CommonInfoBases=\\SRV\1C_Bases\common.v8i

Где лежит 1cestart.cfg:

  • 👤 %APPDATA%\1C\1CEStart\1cestart.cfg — настройка для одного пользователя Windows;
  • 🖥️ C:\ProgramData\1C\1CEStart\1cestart.cfg — для всех пользователей этого компьютера, удобно на терминальном сервере.

После перезапуска 1С базы из общего файла появятся в списке у всех. Переехала база — правите одну строку в common.v8i, и при следующем запуске у всех новый путь. В домене файл 1cestart.cfg можно разложить групповой политикой.

Тот же диалог доступен из интерфейса: в окне выбора баз есть кнопка «Настройка», где можно добавить адрес общего списка. Результат пишется в тот же 1cestart.cfg.

Подключение всех пользователей к базе на сервере 1С и SQL

В клиент-серверном варианте пользователи не трогают файлы. Они подключаются к серверу 1С, а тот работает с СУБД.

Как база появляется на сервере

Если база уже работала в файловом режиме, перенос выглядит так:

  1. В файловой базе откройте Конфигуратор → Администрирование → Выгрузить информационную базу и сохраните файл .dt. Нужен монопольный доступ: все пользователи должны выйти.
  2. Создайте новую базу на сервере: в окне выбора баз «Добавить» → «Создание новой информационной базы» → «Создание информационной базы без конфигурации» → «На сервере 1С:Предприятия».
  3. Укажите кластер серверов (имя сервера 1С), имя базы в кластере, тип СУБД, сервер БД, имя базы данных, логин и пароль СУБД. Отметьте «Создать базу данных в случае ее отсутствия».
  4. Откройте новую базу в Конфигураторе → Администрирование → Загрузить информационную базу и выберите .dt.

Альтернатива второму и третьему шагу — консоль администрирования серверов 1С: в ветке «Информационные базы» кластера создайте базу с теми же параметрами.

Флажок «Разрешить выдачу лицензий сервером 1С:Предприятия» в параметрах базы оставьте включённым, если клиентские лицензии активированы на сервере. Иначе каждый клиент будет искать лицензию у себя на компьютере.

Как пользователи подключаются

На рабочих местах базу добавляют через «Добавление в список существующей информационной базы» с типом «На сервере 1С:Предприятия». Указывают имя кластера и имя базы в кластере. Удобнее разослать общий v8i со строкой Connect=Srvr="SRV1C";Ref="buh";, как в разделе выше.

Какие порты открыть

Клиент обращается к агенту сервера по порту 1540, затем к менеджеру кластера (1541) и к рабочим процессам. Диапазон портов рабочих процессов задаётся в свойствах рабочего сервера, по умолчанию это 1560–1591. Все три значения должны быть открыты в брандмауэре сервера для компьютеров пользователей.

Порт СУБД (1433 для MS SQL, 5432 для PostgreSQL) пользователям открывать не нужно: с СУБД разговаривает только сервер 1С.

Учётные записи внутри 1С: чтобы каждый входил под собой

Общая папка или сервер дают доступ к базе, но не определяют, кто что может в ней делать. Это настраивается в самой 1С.

Пока в базе нет ни одного пользователя, в неё пускают всех без пароля с полными правами. Как только заведён первый пользователь, база начинает спрашивать логин.

В БП 3.0, ЗУП 3.1 и УТ 11 список ведётся по одному пути: Администрирование → Настройки пользователей и прав → Пользователи. Для каждого сотрудника:

  1. Создайте карточку, укажите полное имя.
  2. Включите «Вход в программу разрешён».
  3. Задайте имя для входа и пароль или включите аутентификацию операционной системы и выберите пользователя Windows. Тогда сотрудник войдёт без пароля под своей доменной учётной записью.
  4. На вкладке или по ссылке «Права доступа » отметьте нужные профили групп доступа: «Бухгалтер», «Кадровик», «Только просмотр» и так далее.

Первым заведите себе пользователя с полными правами и профилем «Администратор». Если начать с рядового сотрудника, войти в администрирование будет некому.

Не давайте всем один общий логин «Бухгалтер». В журнале регистрации тогда не видно, кто удалил документ или перепровёл квартал.

Лицензии: сколько человек смогут работать одновременно

Число одновременных пользователей ограничивает не база, а количество клиентских лицензий. Купленный комплект «на 5 рабочих мест» пустит пятерых, шестой получит сообщение об отсутствии свободной лицензии.

Как расходуются клиентские лицензии:

  • 💻 в файловом варианте лицензия занимается на компьютер; несколько окон 1С с одного ПК обычно занимают одну лицензию;
  • 🖧 на терминальном сервере каждый пользовательский сеанс расходует отдельную лицензию;
  • 🗄️ в клиент-серверном варианте лицензии удобно активировать на сервере 1С и раздавать оттуда; дополнительно нужна лицензия на сам сервер 1С.

Программные лицензии в файловом режиме можно активировать на компьютере с базой или поставить на нём сервер лицензий. Тогда рабочие места берут лицензии из общего пула, и неважно, с какого ПК зашёл сотрудник.

Посмотреть, кто сейчас занимает лицензии, в серверном варианте можно в консоли администрирования (ветка «Сеансы») или командой:

rac session list --cluster=<id кластера> --licenses

Идентификатор кластера выдаёт команда rac cluster list.

Пользователь, который «просто закрыл ноутбук», может держать сеанс и лицензию ещё какое-то время. Завершать чужой сеанс из консоли можно, но несохранённые данные этого пользователя пропадут. Предупредите его заранее.

Не подключается к базе по сети: разбор по симптомам

Сначала проверьте простое: тот же пользователь Windows открывает \\SRV\1C_Bases\Buh в проводнике, а версия платформы на всех компьютерах совпадает.

Диагностика: выберите симптом

Резервные копии и защита общей базы

Как только база стала общей, цена её потери выросла: пострадает работа всего отдела.

Файловая база. Копировать 1Cv8.1CD, пока в ней работают, нельзя: копия может оказаться неконсистентной. Варианты:

  • 🌙 копировать файл ночью скриптом, когда все вышли из программы;
  • 📦 выгружать .dt через Конфигуратор (нужен монопольный доступ);
  • ⚙️ включить резервное копирование встроенными средствами конфигурации, если оно в ней есть: в БП 3.0 его настраивают в разделе Администрирование → Обслуживание.

Серверная база. Копии делает СУБД: в MS SQL — план обслуживания с полной копией раз в сутки, в PostgreSQL — pg_dump по расписанию. Копии делаются на ходу, без выгона пользователей.

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

И про доступ. Пароль пользователя 1С защищает вход в программу, но не файл. Любой, у кого есть право на чтение общей папки, может скопировать 1Cv8.1CD целиком и открыть у себя. Поэтому:

  • 🔒 давайте доступ к папке только группе тех, кто реально работает в базе;
  • 🔒 не публикуйте общую папку в интернет и не открывайте SMB наружу; удалённым сотрудникам — VPN, терминальный сервер или веб-публикация;
  • 🔒 в серверном варианте пользователям не нужен доступ к файлам вообще, и это ещё один довод в его пользу.

Частые вопросы

Можно ли держать файловую базу 1С на Яндекс Диске или в OneDrive и работать с неё вдвоём?
Нет. Облачные синхронизаторы копируют файл целиком и не поддерживают сетевые блокировки. Изменения одного пользователя затрут изменения другого, а файл базы может повредиться.
Подойдёт ли сетевое хранилище NAS для файловой базы?
Подойдёт, если оно отдаёт папку по SMB и стабильно работает. Медленный бюджетный NAS станет узким местом при трёх и более активных пользователях.
Нужно ли устанавливать 1С на компьютер, где лежит файловая база?
Нет, если на нём никто не работает. Для хранения достаточно общей папки. Платформа нужна только на рабочих местах.
Как разрешить сотруднику работать в базе из дома?
Надёжные варианты: VPN до офиса плюс терминальный сервер, или веб-публикация базы с доступом по HTTPS. Подключать файловую базу через VPN напрямую не стоит: обрывы связи повреждают файл.
Почему коллега не видит документ, который я только что провёл?
После записи данные сразу доступны всем, иногда нужно лишь обновить открытый список. Если документа нет совсем, вы работаете в разных копиях базы: сравните пути в списке баз у обоих.