К статье
Практический материал

Администрирование · 9 мин

На чем основана 1С: платформа, язык и архитектура системы

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

1С — это не одна программа, а экосистема из технологической платформы, типовых конфигураций и инструментов разработки. Основой всего является платформа «1С:Предприятие» — собственная среда исполнения, написанная преимущественно на C++, которая обеспечивает работу прикладных решений независимо от операционной системы и СУБД.

Прикладная логика (бухгалтерский учет, склад, зарплата) реализуется не в коде платформы, а в конфигурациях — метаданных и программных модулях на встроенном языке 1С. Именно поэтому одна и та же платформа обслуживает «Бухгалтерию», «Управление торговлей», «Зарплату и управление персоналом» и тысячи отраслевых решений.

Данные хранятся либо во встроенной файловой базе, либо во внешних СУБД: Microsoft SQL Server, PostgreSQL, Oracle Database, IBM DB2. Платформа транслирует запросы встроенного языка и механизмов в SQL-запросы конкретной СУБД, поэтому разработчик конфигурации обычно не пишет SQL вручную.

Технологическая платформа: ядро системы

Платформа «1С:Предприятие» — это исполняемая среда, которая интерпретирует конфигурацию и предоставляет готовые механизмы: проведение документов, регистры накопления и сведений, права доступа, отчеты, обмен данными. Разработчик не создает эти механизмы с нуля, а описывает объекты метаданных, а платформа сама строит таблицы, формы и запросы.

Ядро платформы написано на C++ и распространяется в виде скомпилированных дистрибутивов для Windows и Linux, а также серверного агента для кластера. Клиентская часть существует в трех вариантах: толстый клиент, тонкий клиент и веб-клиент, работающий в браузере без установки.

Актуальная линейка версий — 8.3.x. Внутри нее платформа эволюционирует: появляются новые механизмы (например, расширения конфигураций, сервисы интеграции), но базовая архитектура метаданных сохраняется, что обеспечивает совместимость конфигураций между релизами.

Встроенный язык 1С и конфигуратор

Прикладная логика пишется на встроенном языке 1С — высокоуровневом предметно-ориентированном языке с русскоязычным синтаксисом (допустимы и английские ключевые слова). Язык интерпретируется платформой, типизация динамическая, а основные конструкции ориентированы на работу с объектами учета: документами, справочниками, регистрами, запросами.

Среда разработки — конфигуратор. В нем редактируется дерево метаданных, модули, формы, макеты, роли. Дополнительно существует 1C:Enterprise Development Tools (EDT) — среда на базе Eclipse с поддержкой Git, статического анализа и командной разработки, ориентированная на крупные проекты.

Отдельный элемент — встроенный язык запросов. Он похож на SQL, но работает с объектами метаданных, а не с физическими таблицами, и поддерживает механизмы вроде виртуальных таблиц регистров (остатки, обороты, срез последних). Платформа сама преобразует такой запрос в SQL под конкретную СУБД.

Модель метаданных: на чем строятся конфигурации

Ключевая идея 1С — декларативность. Вместо ручного проектирования таблиц разработчик описывает объекты: справочник «Номенклатура», документ «Реализация товаров», регистр накопления «Остатки». Платформа на основе этих описаний автоматически создает структуру базы данных, экранные формы и стандартные команды.

Основные классы объектов метаданных:

  • Справочники — условно постоянные данные (контрагенты, товары, сотрудники).
  • Документы — факты хозяйственной деятельности с проведением по регистрам.
  • Регистры — накопления, сведения, бухгалтерии и расчета; основа отчетности.
  • Планы счетов, виды расчета, бизнес-процессы, отчеты и обработки — специализированные механизмы учета и автоматизации.

Типовые конфигурации от вендора (БСП — «Библиотека стандартных подсистем» в их основе) поставляются с готовой методологией учета. Доработка выполняется либо изменением конфигурации, либо через расширения — механизм, позволяющий добавлять объекты и обработчики без снятия конфигурации с поддержки.

Хранение данных: файловый и клиент-серверный режимы

В файловом режиме вся база — один файл с собственным форматом хранения (1Cv8.1CD), который платформа читает напрямую. Вариант подходит для небольших команд и одиночной работы, но ограничен по одновременным пользователям, объему и устойчивости к сбоям: обрыв записи может повредить файл.

В клиент-серверном режиме платформа работает через кластер серверов 1С, а данные хранятся в промышленной СУБД: Microsoft SQL Server, PostgreSQL (в том числе сборки Postgres Pro), Oracle Database или IBM DB2. Такой вариант масштабируется на сотни пользователей и обеспечивает транзакционную целостность средствами СУБД.

Сравнение режимов работы

Файловый режим

Для 1–5 пользователей и небольшого объема данных. Ограничение: риск повреждения файла при сбоях и заметная деградация при росте базы.

Клиент-серверный режим

Для десятков и сотен пользователей, больших объемов и требований к отказоустойчивости. Требует администрирования СУБД и кластера серверов 1С.

Выбор СУБД влияет на стоимость владения и администрирование: PostgreSQL снижает лицензионные расходы, MS SQL часто выбирают там, где уже есть инфраструктура Microsoft и компетенции администраторов. На уровне конфигурации разницы между СУБД почти нет — платформа абстрагирует диалекты SQL.

Архитектура: клиенты, сервер и веб-доступ

Классическая схема развертывания трехзвенная: клиентское приложение — кластер серверов «1С:Предприятия» — сервер СУБД. Кластер управляет рабочими процессами, балансирует нагрузку, кэширует данные сеансов и исполняет серверный код конфигурации.

Клиентская часть может быть тонкой (минимальная логика, вся обработка на сервере) или веб-клиентом через браузер — тогда дополнительно используется веб-сервер (IIS или Apache) с модулем публикации 1С. Это позволяет давать доступ сотрудникам без установки программы, в том числе извне корпоративной сети при корректной настройке защиты.

Для интеграций платформа предоставляет встроенные механизмы: HTTP-сервисы, веб-сервисы (SOAP), стандартный OData-интерфейс для чтения данных, планы обмена и работу с очередями. Внешние системы чаще всего подключают через HTTP-сервисы или OData, не лезя напрямую в таблицы СУБД.

Как выбрать основу под свою задачу

Выбор технологической базы зависит от масштаба и требований. Небольшой компании с одним бухгалтером достаточно файловой базы на локальном компьютере с регулярным резервным копированием. Растущей организации с несколькими отделами уже нужен клиент-серверный вариант и продуманная политика прав.

Маршрут решения

Как выбрать действие

Пользователей до 5 и база небольшаяФайловый режим, ежедневное резервное копирование файла 1Cv8.1CD
Пользователей от 5–10 или база растет быстроПереход на клиент-серверный режим: PostgreSQL для экономии или MS SQL при готовой инфраструктуре
Нужен доступ из браузера или снаружиПубликация через веб-сервер с HTTPS и минимальными правами
Нужны доработки типовой конфигурацииИспользовать расширения, чтобы сохранить обновляемость типового решения

При миграции с файлового режима на клиент-серверный стандартный путь — выгрузка базы в файл .dt через конфигуратор и загрузка в новую базу на сервере. Перед миграцией проверьте версию платформы на совместимость с конфигурацией и сделайте тестовый запуск на копии.

Типичные ошибки
01
Работа десятков пользователей в файловом режиме — приводит к блокировкам, медленной работе и риску повреждения базы
02
Прямые изменения в таблицах СУБД в обход платформы — нарушает целостность данных и ломает механизмы платформы
03
Доработка типовой конфигурации напрямую вместо расширений — затрудняет или делает невозможными штатные обновления
04
Отсутствие регулярных копий и проверки восстановления — при сбое резервная копия может оказаться нерабочей

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

1С — это язык программирования или программа?

И то и другое. «1С:Предприятие» — это платформа (среда исполнения) с собственным встроенным языком. Прикладные программы — конфигурации, которые исполняются этой платформой.

На каком языке написана сама платформа 1С?

Ядро платформы разработано на C++ и поставляется в скомпилированном виде. Исходный код платформы закрыт; разработчики работают только со встроенным языком и метаданными.

Можно ли использовать 1С без покупки MS SQL Server?

Да. Платформа поддерживает PostgreSQL, включая российские сборки, что позволяет построить клиент-серверную систему без лицензий на коммерческую СУБД.

Почему нельзя править данные напрямую в SQL-таблицах?

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

Что такое расширение конфигурации и зачем оно нужно?

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

Работает ли 1С на Linux?

Да. Сервер платформы и клиентские приложения выпускаются для Linux, а СУБД PostgreSQL позволяет построить полностью Linux-инфраструктуру. Отдельные механизмы (например, часть COM-интеграций) доступны только в Windows.

Итог

Что важно запомнить

1С основана на платформе «1С:Предприятие» с ядром на C++, встроенном языке и метаданной модели. Конфигурации описывают учет декларативно, данные хранятся в файловой базе или в MS SQL, PostgreSQL, Oracle, DB2. Масштаб задачи определяет выбор режима: файловый для малой работы, клиент-серверный — для роста и надежности.