Платформа 1С

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

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

Существует отдельный экзамен по платформе 1С. Он состоит из серии вопросов по смеси понятий Платформа 1С и Инструменты конфигураций 1С. Не претендуя на исключительную полноту ответов, рассмотрим основные понятия по вопросам этого экзамена.

Этот краткий очерк позволит Вам ознакомится с тем, что входит в понятие платформа 1С.

Клиент платформы 1С

Итак, клиент платформы 1С – это программа.

Платформа 1С может работать в режиме Конфигуратор 1С – для программирования и разработки конфигураций.

Платформа 1С может работать в пользовательском режиме (режим Предприятие 1С). Пользовательский режим платформы 1С позволяет вводить справочники и документы, просматривать отчеты.

В платформе 1С версии 8.2 существует несколько вариантов работы клиента.

  • Толстый («обычный») клиент платформы 1С – самый старый. Он занимает много места на диске, требует много ресурсов компьютера при работе. Вся логика программы выполняется на компьютере пользователя.
    client 1s
  • Тонкий клиент платформы 1С. Логика работы разделена на клиентскую – которая выполняется на компьютере пользователя и серверную – которая выполняется на сервере 1С (см. ниже). Поэтому тонкий клиент платформы 1С отрабатывает по идее только отрисовку окошек и вывод информации. Все расчетные механизмы выполняются на сервере.
    client 1s 1
  • Веб клиент платформы 1С. Не является собственно программой. Вы заходите на определенный интернет адрес (URL) в любом браузере и можете работать в 1С прямо в браузере. Ничего устанавливать не требуется – используется JavaScript. Как Вы понимаете вся логика выполняется только на сервере.
    client 1s 3

Как платформа 1С работает с базой данных 1С

База данных 1С может быть файловая – то есть лежит в файле на диске. Обычно файл кладут в шару (расшаренный каталог) в сети и указывают 1С в виде адреса базы этот каталог.

Не все варианты платформы 1С могут полноценно работать с файловой базой данных. Веб клиент не работает (полноценно) с файловым вариантом. Тонкий клиент можно использовать, но он будет работать медленнее.

База данных 1С может быть серверная (клиент серверный вариант платформы 1С). В этом случае ставится СУБД (MS SQL, Oracle и т.п.) на какой то компьютер, обычно сервер. Также на сервер ставится специальная программа 1С, которую называют «сервер 1С». В качестве адреса базы данных будет использован в том числе имя компьютера, где запущен сервер 1С.

Серверный вариант 1С – основной для использования, когда:

  • Много пользователей
  • Большая база данных
  • Используется тонкий или веб клиент.

Основная СУБД, которую обычно используют с 1С – MS SQL.
Также можно использовать Postgre SQL (официально бесплатная, работает под Unix/Linux), IBM DB2, Oracle.

Режим клиента платформы 1С — Конфигуратор

Клиент платформы 1С может быть запущен в двух режимах – Предприятие 1С и Конфигуратор 1С.

Предприятие 1С – это пользовательский режим. Конфигуратор 1С – режим для разработки. В текущей версии 1С (8.2.14) режим Конфигуратор 1С можно использовать только у толстого клиента 1С.

Основные цели, для которых используется конфигуратор 1С:

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

configurator 1s

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

На экзамене по платформе 1С отдельной темой проходит различное представление объектов (объектное, табличное). Дело в том, что платформа 1С в различных режимах работает с одним и тем же объектом по разному, мы обсуждали эту тему здесь.

В каждой базе данных находятся две копии конфигурации 1С. Одна – для разработки (по умолчанию открывается в окне конфигурации 1С). Другая – конфигурация базы данных, то есть та, которую используют пользователи в работе.

Таким образом программист не рискует внося изменения в конфигурацию 1С – пользователь их сразу не увидит. Процесс копирования из конфигурации 1С программиста в конфигурацию пользователя называется «обновление базы данных».

Список объектов 1С выполнен в виде дерева. Верхние ветки дерева – это виды объектов 1С (справочники, документы и т.п.). Второй уровень вложенности – это собственно объекты (например, справочник Номенклатура). Третий уровень вложенности – это свойства конкретного объекта (например, экранные и печатные формы справочника Номенклатура).

Разработка и отладка на платформе 1С

Работа программиста 1С в конфигураторе 1С состоит из создания/удаления/изменения существующих объектов 1С и их свойств.

Основные свойства объекта 1С:

  • Реквизиты – список полей в базе данных, которые будет заполнять пользователь
  • Формы – список экранных форм, с помощью которых пользователь будет производить заполнение этих полей
  • Макеты – список печатных форм, с помощью которых пользователь будет распечатывать на принтер внесенные данные.

Также у каждого объекта есть модуль. Модуль – это программа на языке 1С, которая позволяет автоматизировать реакцию формы на действия пользователя.

Автоматизация происходит на основе событий. Например событие «Пользователь нажал кнопку Записать» или «Пользователь открыл форму».

Чтобы минимизировать количество ошибок, существует механизм отладки. Программист запускает платформу одновременно в режиме Конфигуратора и Предприятие, устанавливает точки останова. Когда программа доходит до точки останова – она становится на паузу и возможно просмотреть текущие значения, внесенные пользователем или рассчитанные автоматически.

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

Конструкторы конфигуратора

На платформе 1С преобладает концепция визуального программирования. То есть, чтобы для большинства вещей не нужно было писать программу, а возможно было бы настроить их нажатием тех или иных кнопок в конфигураторе.

Для этого в том числе существуют Конструкторы. Основные конструкторы конфигуратора версии 1С 8.2.14:

  • Конструктор запроса – позволяет создать текст запроса к базе данных путем выбора из списка таблиц и полей в удобной форме настройки

    construktor 1

  • Конструктор отчета (СКД) – позволяет создать отчет без программирования вообще, настроив запрос с помощью конструктора запросов

    construktor 2

  • Конструктор управляемого окна – новый формат экранных форм, который появился в 1С версии 8.2. Теперь будущую экранную форму не нужно рисовать мышкой, форма создается с помощью формы настройки, путем перетаскивания полей объекта 1С и настройки свойств отображения этих полей.

    construktor 3

Обмен данными на платформе 1С

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

Существует два основных способа обмена между несколькими базами данных 1С:

  • Распределенная база данных 1С.
    Одна база данных является основной (корневой). Из основной базы данных можно сделать образ дочерней базы данных.

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

    Платформа 1С позволяет проводить обмен информацией между основной базой данной и дочерними базами данных.

  • Произвольный обмен между несколькими базами данных 1С.
    Этот способ также позволяет сделать произвольную выгрузку из одной базы данных и произвольную загрузку в другую базу данных.

    Так как базы данных могут быть сделаны на основе разных конфигураций, для загрузки/выгрузки необходимы правила обмена.

    Правила обмена – это файл XML, сделанный с помощью специального инструмента Конвертация 1С. Он содержит правила, по котором преобразуются данные из одного вида (например, вида конфигурации зарплата) в другой вид (например, вид конфигурации бухгалтерия).

Обслуживание базы данных 1С

Режим конфигуратора 1С позволяет также проводить обслуживание базы данных 1С. В обслуживание обычно входит:

  • Пересчет итогов. Выполняется периодически, минимум раз в месяц. Суть операции – расчет строки итого в регистрах базы данных для ускорения работы.
  • Проверка и исправления базы данных. Выполняется обычно когда все неожиданно сломалось. Можно выполнять периодически. Проверяет логическую целостность базы данных.
  • Переиндексация таблиц. В клиент серверном варианте иногда делают с помощью инструментов (скриптов) СУБД (например, MS SQL).
  • Бекапы. Считается необходимо делать минимум один раз в день. Можно делать с помощью архиватора (архив папки с файлом базы данных, требует выхода всех пользователей из 1С), с помощью конфигуратора (выгрузка dt, можно с помощью пакетного запуска конфигуратора по расписанию), с помощью заданий СУБД (например, MS SQL).