1с ведущее измерение регистра сведений

Работа с регистрами сведений в 1С 8.3 и 8.2

Регистр сведений 1С 8 — объект метаданных, предназначенный для хранения справочной информации в разрезе определенных разработчиком измерений.

1с ведущее измерение регистра сведений

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

Рассмотрим подробнее свойства и настройки регистра сведений.

Настройка и свойства регистра сведений 1С 8

Два главных свойства регистра сведения — Периодичность и Режим записи.

1с ведущее измерение регистра сведений

Это уникальные свойства регистра сведений, которых больше нет ни у одного объекта метаданных. Рассмотрим их подробнее.

Периодичность регистра сведений 1C

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

1с ведущее измерение регистра сведений

Периодичность может принимать следующие значения:

При выборе периодичности, отличной от варианта Непериодический, система будет контролировать уникальность записей в пределах заданного промежутка времени. Если запись не уникальна, система 1C выдаст сообщение Запись с такими ключевыми полями существует! и не даст произвести запись в базу данных.

А одна из главных особенностей периодического регистра сведений — возможность получать готовые значения «Среза первых» и «Среза последних». Эта информация позволяет очень быстро получить из базы данных информацию о последнем (первом) установленном значении на определенную дату.

Режим записи регистра сведений

В 1С 8.2 и 8.3 это свойство может быть либо в значении «Независимый», либо — «Подчинение регистратору». В первом случае записи можно будет произвести как программно, так и из формы списка регистра сведений. Во втором случае обязательно указание документа-регистратора записи. Это накладывает определенные ограничения, но в то же время открывает новые возможности.

Свойства измерения регистра сведений

Также следует обратить внимание на палитру свойств измерений регистра сведений 1С 8.3. Особенно на флаги Ведущее и Основной отбор:

1с ведущее измерение регистра сведений

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

Программная запись в регистр сведений 1С

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

Использование менеджера записи:

НоваяЗапись = РегистрыСведений.КурсыВалют.СоздатьМенеджерЗаписи();
НоваяЗапись.Валюта = Справочники.Валюты.НайтиПоНаименованию(«USD»);
НоваяЗапись.Период = Дата(31,12,2016);
НоваяЗапись.Курс = 100;
НоваяЗапись.Кратность = 1;
НоваяЗапись.Записать();

Использование набора записей регистра сведений 1С:

НовыйНаборЗаписей = РегистрыСведений.КурсыВалют.СоздатьНаборЗаписей();
//если вы не установите отбор — удалятся все записи регистра сведений
НовыйНаборЗаписей.Отбор.Валюта.Установить(Доллар, Истина);
НовыйНаборЗаписей.Отбор.Период.Установить(Дата(31,12,2016), Истина);
//формируем непосредственно запись набора
НоваяЗаписьНабора = НовыйНаборЗаписей.Добавить();
НоваяЗаписьНабора.Валюта = Справочники.Валюты.НайтиПоНаименованию(«USD»);
НоваяЗаписьНабора.Период = Дата(31,12,2016);
НоваяЗаписьНабора.Курс = 100;
НоваяЗаписьНабора.Кратность = 1;
НовыйНаборЗаписей.Записать();

Для полной программной очистки всех записей регистра сведений можно использовать нашу обработку.

Видеолекция по регистрам сведений в 1С для начинающих:

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Источник

Программирование в 1С для всех

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

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

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

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

1с ведущее измерение регистра сведений

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

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

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

1с ведущее измерение регистра сведений

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

1с ведущее измерение регистра сведений

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

1с ведущее измерение регистра сведений

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

1с ведущее измерение регистра сведений

1с ведущее измерение регистра сведений

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

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

1с ведущее измерение регистра сведений

1с ведущее измерение регистра сведений

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

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

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

1с ведущее измерение регистра сведений

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

1с ведущее измерение регистра сведений

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

1с ведущее измерение регистра сведений

1с ведущее измерение регистра сведений

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

1с ведущее измерение регистра сведений

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

1с ведущее измерение регистра сведений

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

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

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

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

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

1с ведущее измерение регистра сведений

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

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


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

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

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

Источник

Регистр сведений в 1С 8.3

1с ведущее измерение регистра сведений

Независимый регистр сведений

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

ТоварТип ценЦена
ШкафОптовая1000
ШкафРозничная2000
ТумбочкаОптовая500
ТумбочкаРозничная1200

На закладке Данные можно настроить состав измерений и ресурсов регистра сведений. Ресурсы — это как раз та самая информация, которая хранится в разрезе измерений:

1с ведущее измерение регистра сведений

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

В пользовательском режиме можно добавлять в регистр новые записи:

1с ведущее измерение регистра сведений

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

1с ведущее измерение регистра сведений

Контроль уникальности записей выполняется при записи и при изменении состава измерений в конфигураторе. Если удалить у регистра сведений измерение Тип цен и попытаться обновить конфигурацию базы данных, то при реструктуризации базы данных будет выдана ошибка «Имеются записи с одинаковыми измерениями», потому что после удаления измерения Тип цен стало по две записи с товарами Шкаф и Тумбочка:

1с ведущее измерение регистра сведений

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

1с ведущее измерение регистра сведений

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

1с ведущее измерение регистра сведений

Флаг Ведущее у измерения регистра сведений означает, то данная запись имеет смысл пока существует элемент базы данных, ссылка на который хранится в данном измерении. Если удалить из базы данных товар Шкаф, то автоматически из регистр сведений будут удалены все записи, где в измерении Товар был указан Шкаф. Если бы данный флаг не был установлен, то записи остались бы в регистре с битой ссылкой.

А также в карточке товара появляется гиперссылка для быстрого перехода к регистру сведений с отбором по текущему товару:

1с ведущее измерение регистра сведений

Флаг Основной отбор используется при регистрации записей в плане обмена и будет рассмотрен в соответствующей главе.

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

1с ведущее измерение регистра сведений

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

1с ведущее измерение регистра сведений

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

На закладке Основные есть свойство Периодичность. Если там выбрать значение отличное от Непериодический, то в таблицу регистра будет автоматически добавлено поле Период. Периодичность бывает:

Поле Период входит в ключ записи, поэтому теперь можно добавлять записи с одинаковым составом измерений, но с разным периодом. При этом период автоматически приводится к началу периода, указанного в свойстве Периодичность. То есть ли указать периодичность В пределах месяца и добавить запись с периодом 19 апреля 2021 года, то период будет автоматически преобразован в 1 апреля 2021 года. Поле период обязательно для заполнения, нельзя добавить запись с пустым периодом:

1с ведущее измерение регистра сведений

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

С помощью периодических регистров сведений можно хранить историю изменения ресурсов регистра.

Регистр сведений подчиненный регистратору

На закладке Основные в свойстве Режим записи можно установить значение Подчинение регистратору:

1с ведущее измерение регистра сведений

В этом случае в таблицу регистра будет добавлено еще три колонки:

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

Создадим новый документ УстановкаЦенНаТовары и отметим его как регистратор:

1с ведущее измерение регистра сведений

Теперь нельзя вручную добавлять новые записи в регистр. Записи должны формироваться документами-регистраторами при проведении. Добавим в обработку проведения документа УстановкаЦенНаТовары следующий код:

Источник

Объект 1С «Регистры сведений»

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

Функциональные возможности регистра сведений

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

Структура объекта 1С «Регистры сведений»

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

1с ведущее измерение регистра сведений

Например, регистр сведений цены товаров может иметь следующую структуру:

1с ведущее измерение регистра сведений

где » Вид цен» может иметь значения «Оптовая», «Розничная», и т.д.

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

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

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

Данное свойство позволяет добавить к списку измерений регистра дополнительное измерение — «Период».

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

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

1с ведущее измерение регистра сведений

Периодичность может принимать следующие значения:

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

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

Особенность периодического регистра сведений:

1с ведущее измерение регистра сведений

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

Внесение изменений в регистр сведений может выполняться:

Какой именно режим записи будет использоваться данным регистром сведений указывается разработчиком в процессе создания прикладного решения:

1с ведущее измерение регистра сведений

Свойство «Режим записи»может быть в значении:

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

Уникальность записей регистра сведений

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

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

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

Свойства измерения регистра сведений

Особое внимание следует обратить на флаги «Ведущее» и «Основной отбор» палитры свойств измерений регистра сведений.

1с ведущее измерение регистра сведений

Программная запись в регистр сведений 1С

Добавить новые записи в регистр сведений можно двумя способами:

Источник

1с ведущее измерение регистра сведений

1с ведущее измерение регистра сведений

2. Виды регистров сведений

3. Измерения, ресурсы, реквизиты регистра сведений

4. Периодический регистр сведений

5. Свойства регистра и измерений

6. Добавление записи в регистр сведений

7. Изменение значения ресурса записи регистра сведений

8. Удаление выбранных записей в регистре сведений

9. Очистка регистра сведений от записей

10. Получить значение ресурса регистра сведений на дату

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

2. Виды регистров сведений

Измерения – описывают разрезы, в которых хранится информация.
Ресурсы – содержат хранимую информацию в разрезе измерения.
Тип ресурса сведений может быть как примитивный (число, строка, дата, булево), так и ссылочный (СправочникСсылка, ПеречислениеСсылка и т.д.). В ресурсе можно хранить даже картинки и другие неструктурированные сведения, поскольку можно создать ресурс типа «ХранилищеЗначения». Ресурс может быть составным типом.

1с ведущее измерение регистра сведений

1с ведущее измерение регистра сведений

4. Периодический регистр сведений

1с ведущее измерение регистра сведений

1с ведущее измерение регистра сведений

5. Свойства регистра и измерений

6. Добавление записи в регистр сведений

Добавление через МенеджерЗаписи, подойдет для добавления одной записи.

Добавление через НаборЗаписей, подойдет для добавления одной или нескольких записей.

7. Изменение значения ресурса записи регистра сведений

Изменение значение ресурса записи через НаборЗаписей, подойдет для изменения одной или нескольких записей.

8. Удаление выбранных записей в регистре сведений

Удаление записей через НаборЗаписей, подойдет для удаления одной или нескольких записей.

9. Очистка регистра сведений от записей

Очистка регистра от записей через НаборЗаписей.

Источник

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

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