Введение в конфигурирование в системе «1С:Предприятие 8.0». Основные объекты
«1С:Предприятие» является универсальной системой автоматизации деятельности предприятия. За счет своей универсальности система «1С:Предприятие» может быть использована для автоматизации самых различных участков деятельности организаций, предприятий.
Основной особенностью системы «1С:Предприятие» является ее конфигурируемость. Собственно система «1С:Предприятие» (платформа) представляет собой совокупность механизмов, предназначенных для манипулирования различными типами объектов предметной области. Конкретный набор объектов, структуры информационных массивов, алгоритмы обработки информации определяет конкретная конфигурация. Вместе с конфигурацией система «1С:Предприятие» выступает в качестве уже готового к использованию программного продукта, ориентированного на определенные типы предприятий и классы решаемых задач.
На этапе конфигурирования система оперирует такими универсальными понятиями (объектами), как «Документ», «Справочник», «Реквизит», «Форма» и другие. Совокупность этих понятий и определяет концепцию системы. В свою очередь процесс конфигурирования распадается на несколько составляющих. Это «визуальное» создание структуры конфигурации, форм диалогов, выходных документов, интерфейсов, наборов прав пользователей (ролей) и написание программ на встроенном языке «1С:Предприятия» для обработки входных и выходных данных.
На уровне системы определены сами понятия объектов и стандартные операции по их обработке. Средства конфигурирования позволяют описать структуры информации, входящей в эти объекты, и алгоритмы, описывающие специфику их обработки, для отражения различных особенностей учета.
В процессе исполнения система уже оперирует конкретными понятиями, описанными на этапе конфигурирования (справочниками товаров и организаций, накладными и т.д.).
При работе пользователя в режиме «1С:Предприятие» обработка информации выполняется как штатными средствами системы, так и с использованием алгоритмов, созданных на этапе конфигурирования.
Объекты системы
Под объектом понимается некая сущность, имеющая определенное «предназначение». В общем случае объект может иметь набор свойств (какие-то только на чтение, какие-то на модификацию) и набор методов (позволяющих работать с «областью» объекта). Объект «реагирует» на определенные события, происходящие в системе.
В программном комплексе «1С:Предприятие 8.0» можно выделить две группы объектов:
Можно сказать, что в общем случае добавление одного объекта конфигурации приводит к тому, что во встроенном языке появляется «поддержка» нескольких «программных» объектов. Например, добавление справочника «Товары» приводит к тому, что можно в языке использовать объекты следующих типов: «СправочникСсылка.Товары», «СправочникОбъект.Товары» и т.д.
Классификация объектов конфигурации
Все объекты конфигурации, которые существуют в системе «1С:Предприятие», образуют несколько основных видов. Каждый вид объектов конфигурации представляет собой как раз те «строительные элементы», из которых будет создаваться конфигурация. Разбивку объектов по видам можно увидеть в дереве конфигурации (они находятся на первом его уровне).
Прикладные объекты
Подчиненные объекты
В зависимости от вида объекта конфигурации объект может иметь различные подчиненные группы объектов. Состав подчиненных объектов зависит от типа объекта
Типы данных
Одним из основных свойств некоторых объектов конфигурации является «тип данных». Это свойство определяет, какого рода информацию может содержать объект конфигурации.
Кроме вышеперечисленных существует еще ряд типов, которые относятся к примитивным: это «Тип», «Неопределено», «Null».
Отдельно хочется сказать про такой тип как «Хранилище значений». Если определить реквизиту такой тип, то в нем можно хранить «все что угодно» (включая двоичные данные, картинки, файлы).
Встроенный программный язык
Необходимость наличия встроенного языка определена концепцией настраиваемоеT системы. Язык является предметно-ориентированным. Он поддерживает специализированные типы.
данных предметной области, определяемые конфигурацией системы. Работа с этими типами данных в языке организована с использованием объектной техники.
Так как система сочетает в себе визуальные и языковые средства конфигурирования, использование встроенного языка в системе имеет событийно-зависимую ориентацию, то есть языковые модули используются в конкретных местах для отработки отдельных алгоритмов, настраиваемых в процессе конфигурации. Программный код помещается в «модули».
Место размещения конкретного программного модуля предоставляется конфигуратором в тех точках конфигурации, которые требуют описания специфических алгоритмов функционирования. Эти алгоритмы следует оформлять в виде процедур или функций, которые будут вызваны самой системой в заранее предусмотренных ситуациях.
Виды модулей
Существуют модули различных видов:
Модуль приложения. Модуль располагается в корневом разделе конфигурации. В нем располагаются процедуры-обработчики событий, которые инициализируются при старте и окончании работы системы, определения (с ключевым словом «Экспорт») переменных, процедур, функций доступных в любых точках конфигурации. В нем не рекомендуется реализовывать процедуры, функции, выполняющие обработку данных (необходимые расчеты).
Модуль внешнего соединения. В модуле могут располагаться экспортируемые переменные, процедуры и функции, а также процедуры-обработчики событий ПриНачалеРаботыСистемы () и ПриЗавершенииРаботыСистемы () используемые в режиме внешнего соединения.
Общие модули. Располагаются в отдельной ветви дерева метаданных. Могут быть разбиты по подсистемам и содержат определения процедур и функций. Те из них, которые определены с использованием ключевого слова «Экспорт» доступны из всех модулей конфигурации.
Если используется клиент-серверный вариант системы "1С:Предприятие", то с помощью свойств «Клиент» и «Сервер», а также указаний препроцессору (директивы Если Сервер Тогда . И Если Клиент Тогда . ) можно организовывать выполнение различных процедур и функций общих модулей на сервере приложения или на клиентском месте,
Модули прикладных объектов. Модули располагаются в ветках конфигурации, в которых содержатся сами объекты (к ним относятся справочники, документы, отчеты, обработки, регистры) и являются свойствами этих объектов.
Модули форм. Эти модули содержатся в формах конфигурации. Модуль формы может содержать определения переменных, процедур, функций, реализующих алгоритмы «поведения» формы.
Контекст выполнения модуля
Каждый программный модуль связан с остальной частью конфигурации. Эта связь называется контекстом выполнения модуля. Различают два вида контекста:
Глобальный контекст. Образуется из значений свойств и методов глобального контекста функциями встроенного языка и языковыми конструкциями, переменными, процедурами и функциями программного модуля приложения, процедурами и функциями общих модулей, объявленных с помощью ключевого слова «Экспорт».
Локальный контекст модуля. Образуется тем конкретным местом конфигурации, для которого использован программный модуль. Локальный контекст определяет набор доступных только данному модулю объектов.
Универсальные коллекции значений
Универсальные коллекции значений предназначены для хранения временных наборов данных в течение сеанса работы пользователя. Они не являются объектами информационной базы и служат для вспомогательного сбора, группировки, анализа и обработки информации.
Объекты этого типа представляют собой упорядоченную совокупность значений любого типа, в том числе и типа массив, что в частности позволяет организовывать многомерные массивы.
Объект является коллекцией значений.
Структура представляет собой динамический набор данных - коллекцию значений, каждый элемент которой состоит из пары «Ключ» и «Значение». Ключи структуры уникальны, и поэтому ими можно идентифицировать значения. Ключ структуры должен быть строковым и отвечать требованиям к именам переменных. К значениям структуры можно обращаться как к свойствам объекта, при этом ключ используется как имя свойства.
Соответствие
Соответствие представляет собой динамический набор данных - коллекцию значений, каждый элемент которой состоит из пары «Ключ» и «Значение». Ключи соответствия уникальны, и поэтому ими можно идентифицировать значения. В отличие от ключа структуры, ключи соответствия могут быть произвольных типов. Рекомендуется, чтобы в качестве ключа выступало значение неизменяемого типа или другого типа, значение которого может только присваиваться, но не может менять свое содержимое.
Список значений
Список значений - это объект позволяющий строить динамические наборы значений и манипулировать ими. Может быть наполнен значениями любых типов. Условно список значений можно представить как таблицу из пяти колонок: индекс (индекс - скорее не колонка, а позиция элемента), пометка, значение, представление, картинка.
Таблица значений
Таблица значения - объект позволяющий строить динамические наборы значений и манипулировать ими. Он может быть наполнен значениями различных типов. Может иметь любое количество колонок и быть связанным с элементом «табличное поле».
Дерево значений
Объект похожий на таблицу значений. Но в отличие от нее строки дерева значений могут образовывать иерархические структуры: каждая строка дерева может иметь набор подчиненных строк и т.д.