Как создать регистр сведений в 1с
Перейти к содержимому

Как создать регистр сведений в 1с

  • автор:

Регистр сведений

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

Структура

Информация в регистре сведений хранится в виде записей, каждая из которых содержит значения измерений и соответствующие им значения ресурсов.

Измерения регистра описывают разрезы, в которых хранится информация, а ресурсы регистра непосредственно содержат хранимую информацию. Например, для регистра сведений Цены товаров, который имеет следующую структуру:

Регистр сведений

записи, хранимые в базе данных, будут выглядеть следующим образом:

Регистр сведений

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

Периодичность

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

Регистр сведений

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

Например, периодический регистр сведений Цены товаров может не только хранить информацию о том, какова цена на определенную номенклатуру сейчас, но и о том, как она изменялась в прошлом (или будет изменяться в будущем):

Подчинение регистратору

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

Регистр сведений

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

Например, изменение цен компании может производиться только определенным кругом лиц, и каждое такое изменение должно сопровождаться «бумажным» документом. В этом случае можно использовать режим подчинения регистратору, при котором изменение цен может быть выполнено только специальным документом — Изменение цен товаров.

Уникальность записей

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

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

Формы

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

Форма списка

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

Регистр сведений

Форма записи

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

Регистры сведений 1С 8.3 (8.2)

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

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

Непериодический регистр сведений 1С

Основное предназначение регистров сведений в том, что в них должны храниться показатели аналитики. Например, у нас есть задача хранить виды топлива (АИ-92, АИ-95 и т.д.), но также и цену на этот вид топлива. Как это удобное всего организовать. Однозначно сами виды топлива необходимо хранить в каком-то справочнике. Так его и назовем – вид топлива. Но где же хранить цену на этот вид топлива? Самое первое решение в реквизите справочника.

Реквизит справочника

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

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

Сейчас мы и решим эту маленькую прикладную задачу: в нашей конфигурации есть два справочника «Виды топлива» и «Поставщики топлива»

Справочники конфигурации

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

Создание нового регистра сведений в конфигураторе 1С

На закладке Основные установим имя и синоним. Все остальное оставим как есть.

Регистр сведений 1С цены на топливо

Теперь на закладке данные создадим два измерения – ВидТоплива и ПоставщикТоплива, типы которых ссылки на соответствующие справочники.

Измерение регистра сведений 1С ВидТоплива

Измерение регистра сведений 1С ПоставщикТоплива

У обоих измерений поставим флаг – Ведущее. Это значит, что если мы удалим элемент справочника, который указан в какой-то записи регистра сведений, то эта запись удалиться автоматически. Так же есть одно интерфейсное следствие этого флага: если флаг установлен, то в форме элемента справочника мы сможем посмотреть на записи этого регистра для этого элемента.

Установим для каждого измерения этот флаг.

Флаг ведущее для измерения регистра сведений ВидТоплива

Флаг ведущее для измерения регистра сведений ПоставщикТоплива

У нас непериодический регистр, и в нем два измерения ВидТоплива и ПоставщикТоплива это значит, что мы не сможем создать две записи с одинаковыми значениями полей ВидТоплива и ПоставщикТоплива. Программа выдаст ошибку. Что и разумно – не может быть две разных цены на один и тот же вид топлива у одного и того же поставщика. А если может, то это значит, что необходимо добавить еще один разрез (например, база поставщика).

Кроме измерений у регистра сведений существуют Ресурсы и Реквизиты. Ресурс должен хранить основную информацию регистра сведений, т.е. те данные, ради которых он создан, а Реквизит содержит дополнительную второстепенную информацию о записи.

Мы создадим ресурс – Цена (тип число 10,2).

Ресурс Цена регистра сведений

И всё. Сохраним конфигурацию и откроем этот регистр сведений и заведем какую-нибудь запись.

Записи регистра сведений

Если мы сейчас попробуем создать запись с точно таким же набором измерений, то возникнет ошибка: «Запись с такими ключевыми полями существует».

Создание дублирующей записи регистра сведений

Ошибка при создании дублирующей записи регистра сведений

И последний момент: поскольку мы у измерения ВидТоплива установили флаг «Ведущее», то у элемента справочника ВидыТоплива появилась команда на открытие регистра сведений «Цена на топливо»

Команда на открытие регистра сведений

Если мы в управляемом приложении 1С перейдем по этой команде, то увидим все цены для нашего вида топлива.

Регистр сведений с отбором

Продолжение темы регистров сведений читайте в следующих статьях:

Периодический регистр сведений 1С

Подчиненный регистр сведений 1С

Изучайте основы конфигурирования в 1С и учитесь программировать в «1С: Предприятии» с помощью моих книг: «Программировать в 1С за 11 шагов» и «Основы разработки в 1С: Такси»

Изучайте программирование в 1С в месте с моей книги «Программировать в 1С за 11 шагов»

  1. Книга написана понятным и простым языком — для новичка.
  2. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  3. Научитесь понимать архитектуру 1С;
  4. Станете писать код на языке 1С;
  5. Освоите основные приемы программирования;
  6. Закрепите полученные знания при помощи задачника;

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

  1. Очень доступный и понятный язык изложения
  2. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  3. Поймете идеологию управляемого приложения 1С
  4. Узнаете, как разрабатывать управляемое приложение;
  5. Научитесь разрабатывать управляемые формы 1С;
  6. Сможете работать с основными и нужными элементами управляемых форм
  7. Программирование под управляемым приложением станет понятным

Промо-код на скидку в 15% — 48PVXHeYu


Если Вам помог этот урок решить какую-нибудь проблему, понравился или оказался полезен, то Вы можете поддержать мой проект, перечислив любую сумму:

можно оплатить вручную:

Яндекс.Деньги — 410012882996301
Web Money — R955262494655

Третий модуль: Работа с регистром сведений

Бывают ситуации, когда хранить информацию в справочнике неудобно или
неправильно. Например, если мы покупаем товар у одного и того же поставщика, то,
скорее всего, цена на этот товар будет повторяться в накладных за один период (будет меняться достаточно редко). Было бы удобно, если бы имелась возможность эту
цену хранить и автоматически подставлять в документы.
Для решения этой задачи необходимо для каждого поставщика для каждого
купленного у него товара хранить цену. Задача сильно усложниться, если мы решим
хранить эту цену еще и в рамках договора. С одной стороны, это информация справочного характера, т.е. имеет смысл хранить ее в справочнике. С другой стороны, реализовать ее хранение достаточно сложно, причем далеко не все возможности,
предоставляемые системой для справочника, нам в этом случае понадобятся. Кроме
того, желательно иметь возможность быстро найти нужное нам значение (например,
самое текущее значение цены). Для решения подобного рода задач предназначен
специальный объект платформы – «Регистр сведений».
Работа с регистром сведений похожа на работу с остальными объектами. В зависимости от того, какого рода информация будет храниться в регистре, он должен
иметь соответствующую структуру. Если необходимо хранить информацию различного вида, то для этого можно создать произвольное количество регистров сведений.

Рис. 11.1. – Создание регистра сведений «ЦеныПоставщиков»

Создание нового регистра аналогично созданию нового документа или спраРис. 11.1. – Создание регистра сведений «ЦеныПоставщиков»
вочника – создайте регистр сведений «ЦеныПоставщиков» согласно рис. 11.1, отнесите его в подсистему «Закупки-Справочники». Структуру регистра необходимо задать на закладке «Данные» (рис. 11.2).

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

Рис. 11.2. – Данные регистра и свойства измерения «Договор»

Информацию в регистр пользователь может внести самостоятельно в режиме
«1С:Предприятие», используя соответствующую форму списка данного регистра.
Внесите самостоятельно цены поставщиков в регистр как показано на рис. 11.3.

Рис. 11.3. – Регистр сведений «Цены поставщиков»

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

&НаСервере
Функция ПолучитьЦену(Номенклатура)
СтруктураОтбора = Новый Структура;
СтруктураОтбора.Вставить(«Поставщик»,Объект.Контрагент);
СтруктураОтбора.Вставить(«Договор»,Объект.Договор);
СтруктураОтбора.Вставить(«Товар»,Номенклатура);
РезультатОтбора =
РегистрыСведений.ЦеныПоставщиков.Получить(СтруктураОтбора);
Возврат РезультатОтбора.Цена;
КонецФункции
&НаКлиенте
Процедура ТоварыНоменклатураПриИзменении(Элемент)
СтрокаРасчета = Элементы.Товары.ТекущиеДанные;
СтрокаРасчета.Цена = ПолучитьЦену(СтрокаРасчета.Номенклатура);
ТоварыЦенаПриИзменении(Элемент)
КонецПроцедуры

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

Создайте новый регистр сведений «КурсыВалют», периодичность «В пределах дня», подсистема «Закупки-Справочники» (Рис. 11.4).

Рис. 11.4. – Добавления регистра сведений «КурсыВалют»

Создайте измерения («Валюты», тип «СправочникСсылка.Валюты») и ресурсы («Курс», тип «Число», длина 10, точность 4) для нашего нового регистра согласно
рис. 11.5. После этого запустите сохраненную конфигурацию в режиме
«1С:Предпрятие» и внесите в регистр курсы валют как показано на рис. 11.6. Даты
определяйте как соответствующие даты текущего года.

Рис. 11.5. – Данные регистра сведений «Курсы валют»

Рис. 11.6. – Представление списка регистра «Курсы валют»

Несмотря на то, что мы внесли курсы валют, мы не будем в дальнейшем в документах пересчитывать продажи или поступления в иностранной валюте по отношению к рублю. Данный регистр нам необходим только для того, чтобы показать
возможность хранения разные значения ресурсов на разные даты.
Еще одна задача, которую позволяет решить регистр сведений, это взаимосвязь хранимой информации с документами. Например, если мы хотим хранить в системе информацию о том, в каком подразделении работает сотрудник и какой у него
оклад, причем, назначение сотрудника в подразделение и установка его ставки
оформляется соответствующим кадровым приказом.
С одной стороны, если мы сделаем документ и заполним реквизиты справочника, то вся эта информация в систему будет занесена. Однако, в том случае, когда
мы удаляем соответствующий документ, информация в справочнике остается, что
уже не соответствует положению вещей.
Для решения подобного рода задач существует механизм проведения документов. Этот механизм позволяет установить взаимосвязь между данными регистра и
документом. Происходит это следующим образом: для записанного документа может
быть присвоен статус «Проведен» (определяется значением системного реквизита
«Проведен»). Изменение статуса документа является событием, для которого есть
соответствующий обработчик проведения, где можно описать, какие записи в какие
регистры формирует данный документ. В том случае, если этот статус снимается (в
т.ч. при пометке на удаление), то из регистров автоматически удаляются записи,
сформированные этим документом. Статус документа отображается соответствующей пиктограммой и может быть изменен пользователем.
Для решения этой задачи, потребуется создать еще один регистр сведений
«СведенияОСотрудниках» (синоним «Сведения о сотрудниках»). Будем считать, что
в нашей организации нет совместителей, т.е. сотрудник может работать только в одном подразделении и получать там определенный оклад. Структура регистра сведений должна быть следующей: измерение «Сотрудник» (тип данных – ссылка на соответствующий справочник) и ресурсы «Подразделение» (тип данных – ссылка на соответствующий справочник) и «Оклад» (тип «Число», длина 10, точность 2). При
этом, следует обратить внимание на то, что в ресурсе может храниться значение ссылочного типа, т.е. в нашем случае ссылка на справочник «Подразделения» (Рис. 11.7).

Рис. 11.7. – Добавление Регистра сведений «Сведения о Сотрудниках»

В создаваемом новом регистре следует учесть, что наши сотрудники со временем могут переходить из подразделения в подразделения или получать другой
оклад, поэтому необходимо сделать регистр периодическим, с периодичностью в месяц. Далее для того, чтобы в наш регистр попадали данные из документа необходимо
указать режим записи как «Подчинение регистратору» (рис. 11.8). В этом случае у
регистра появится дополнительное поле «Регистратор», в котором будет указан документ, сформировавший эти записи. Не закрывайте и не сохраняйте пока конфигурацию – для нового регистра мы указали еще не все обязательные параметры.

Рис. 11.8. – Окно редактирования «Сведения о сотрудниках»

Создадим документ «Кадровый приказ». Реквизиты у документа будут «Сотрудник», «Подразделение» и «Оклад» (число 10 с точностью 2) со ссылками на соответствующие объекты нашей конфигурации (рис. 11.9).

Рис. 11.9. – Создание документа «Кадровый приказ»

Чтобы документ формировал записи в регистр, необходимо на закладке
«Движения» в параметрах документа настроить следующие свойства (рис. 11.10):
«Проведение» – «Разрешить»;
«Оперативное проведение» – «Разрешить»;
«Удаление движений» – «Удалять автоматически при отмене проведения»
(при отмене проведения данного документа сформированные им записи в регистрах
будут удалены);
Укажем регистр, в которые будут сформированы записи – регистр «Сведения
о сотрудниках».

Рис. 11.10. – Выбор регистра

После этого с помощью конструктора автоматически сформируем программный код, который и будет определять, какую именно информацию и куда мы будем
записывать. Для этого нажмем кнопку «Конструктор движений», далее можно вручную определять для каждого из полей регистра в выражении реквизит документа, а
можно автоматически с помощью кнопки «Заполнить выражения» (рис. 11.11).

Рис. 11.11. – Конструктор движения регистров

В результате работы конструктора в модуле документа будет автоматически
создана процедура обработчика события проведения:
Процедура ОбработкаПроведения(Отказ, Режим)
// <<__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
// Данный фрагмент построен конструктором.
// При повторном использовании конструктора, внесенные вручную
изменения будут утеряны.
// регистр СведенияОСотрудниках
Движения.СведенияОСотрудниках.Записывать = Истина;
Движение = Движения.СведенияОСотрудниках.Добавить();
Движение.Период = Дата;
Движение.Сотрудник = Сотрудник;
Движение.Подразделение = Подразделение;
Движение.Оклад = Оклад;
//>>__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
КонецПроцедуры

В режиме «1С:Предприятие» у пользователя появляется возможность
провести или снять с проведения проведенный документ.
Введите в пользовательском режиме четыре кадровых документа, согласно
таблицы 11.1. Первым сотрудником, принятым в нашу организацию, был Бендер О.И.
в подразделение «Оптовые продажи» с окладом в 20000 руб. Затем мы приняли на
работу Балаганова в подразделение «Розничные продажи» с окладом в 25000 руб.
После этого к нам в отдел «Оптовые продажи» был принят сотрудник Паниковский
М.С. с окладом в 20000 руб. Получилось, что в нашем подразделении «Оптовые
продажи» стало работать два сотрудника. Поэтому мы решили перевести сотрудника
Бендера О.И. в подразделение «Администрация» с окладом в 30000 руб.

Таблица 11.1. Список кадровых документов

После проведения всех документов у вас в регистре сведений «Сведения о
сотрудниках» появятся записи по данным операциям. Посмотрите на таблицу 11.2 –
записи в вашем регистре сведений должны быть такими же.

Как создать регистр сведений в 1с

Описание:

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

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

Регистр сведений, фактически, представляет собой массив данных, необходимый, чтобы реализовать функцию, которая может выдать необходимую информацию по определенному набору аргументов. Аргументы функции называются измерениями, а результат функции — ресурсами. В приведенном выше примере регистр «ЦеныКонкурентов» будет содержать измерения «Конкурент» и «Товар», и ресурс «Цена». Ресурсов может быть больше чем один: например, можно хранить оптовую и розничную цены.

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

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

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

Из описанных принципов работы регистра сведений вытекает то, что в системе может быть только одна запись с определенным набором и периодом измерений.

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

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

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

Эти два варианта влияют на способ внесения информации, а не на основную логику работы регистра.

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

Если регистр записывается регистратором, то это значит, что записи будут жестко подчинены регистраторам — документам. Обычно это значит, что записи будут порождаться при проведении документов. Соответственно, при удалении документа записи будут удаляться автоматически. В отличие от ведущих измерений, регистратор может быть только один.

В программных модулях для общих действий над регистром сведений (поиск, выбор и создание записей регистра) служит объект РегистрСведенийМенеджер.<Имя регистра сведений>. Для чтения, записи и удаления отдельных записей регистра сведений, не управляемого регистраторами, служит объект РегистрСведенийМенеджерЗаписи.<Имя регистра сведений>. Для считывания и занесения набора записей в базу данных по определенному условию отбора служит объект РегистрСведенийНаборЗаписей.<Имя регистра сведений>. Для динамического обхода записей регистра служит объект РегистрСведенийВыборка.<Имя регистра сведений>.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *