Файл: Хрусталева Е. Ю. Язык запросов 1С-Предприятия 8 (2013).pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 12.03.2019

Просмотров: 48140

Скачиваний: 8323

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

Глава 1. Механизм запросов

Как хранятся данные в «1С:Предприятии»

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

Поэтому прежде чем начинать осваивать язык запросов, важно понять, как хранятся
данные в «1С:Предприятии». Для хранения данных «1С:Предприятие» использует
реляционные базы данных. Реляционная база данных представляет собой совокупность
различной информации, представленной в виде двумерных таблиц. Таблица базы данных
состоит из набора строк и столбцов. Каждая строка (запись) этой таблицы
характеризуется рядом значений, содержащихся в ее столбцах (полях).

Для примера можно привести данные о клиентах компании, хранящиеся в справочнике
клиентов. В самом упрощенном виде данные о клиентах хранятся в одной – основной
таблице, где каждому клиенту соответствует одна запись, имеющая один и тот же набор
полей, например, КодНаименованиеАдресТелефон и т. п. (табл. 1.1).

Таблица 1.1. Справочник клиентов в информационной базе (основная таблица)

Ссылка

Код

Наименование

Адрес

Телефон

Ref1

000000001 Соколов Иван Андреевич

Москва, …

8-916-222-33-55

Ref2

000000002 Орлов Сергей Иванович

Москва, …

8-926-555-66-77

Ref3

000000003 Маслова Ирина Николаевна Санкт-Петербург, … 8-915-4447799

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

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

ПРИМЕЧАНИЕ

Имена полей 

Код

Наименование

 и т. п. мы используем для простоты изложения. На самом

деле имена полей таблиц в базе данных будут техногенными, например, 

_Code

,

_Description

 и т. п.


background image

Затем пользователь в режиме 1С:Предприятие заполняет справочник данными, которые
сохраняются в базе данных (рис. 1.1).

Рис. 1.1. Структура простого справочника в конфигураторе, в «1С:Предприятии» и в информационной базе

Поле Ссылка является уникальным идентификатором записи о клиенте, поля Код,
Наименование, ПометкаУдаленияПредопределенный и ВерсияДанных являются
стандартными реквизитами, которые платформа добавляет в любой справочник.

На рис. 1.1 также показаны три понятия, которые важно отличать. В конфигураторе
создается объект конфигурации Справочник КлиентыДанные этого объекта
конфигурации
 (все записи справочника) вводятся в режиме 1С:Предприятие, затем эти
данные записываются в таблицу справочника Клиенты в информационной базе. В этой
таблице объектом базы данных является одна запись (данные одного элемента
справочника), однозначно идентифицирующаяся значением поля Ссылка.

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


background image

справочника.

При добавлении реквизитов справочника в конфигураторе платформа создает поля
соответствующего типа в основной таблице справочника (рис. 1.2).

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

Если справочник является иерархическим, то платформа добавляет в структуру основной
таблицы справочника в информационной базе поле Родитель и поле ЭтоГруппа (в
случае, если справочник имеет тип иерархии Иерархия групп и элементов), рис. 1.3.


background image

Рис. 1.3. Структура иерархического справочника в конфигураторе и в информационной базе

Например, справочник Товары является иерархическим с иерархией групп и элементов.
При этом в таблице базы данных для записей, являющихся группой, поле ЭтоГруппа
принимает значение Истина; для записей, не являющихся группой, поле ЭтоГруппа
принимает значение Ложь, а поле Родитель является ссылкой на родительскую запись.
Благодаря этому можно получить информацию о дочерних записях и родителях для
каждого элемента справочника (рис. 1.4).


background image

Рис. 1.4. Содержимое иерархического справочника в «1С:Предприятии» и в информационной базе

ПРИМЕЧАНИЕ

Поле 

Родитель

 на самом деле хранит ссылку на родительскую запись, но для большей

ясности в таблице на рис. 1.4 в этом поле отражено представление ссылки в виде
наименования.

Если справочник является подчиненным, например справочник РасчетныеСчета
подчинен справочнику Поставщики, то в основную таблицу подчиненного справочника
платформа добавляет поле Владелец, которое ссылается на элемент справочника-
владельца (рис. 1.5).