Периодический регистр сведений
Периодический регистр хранит информацию (ресурсы) не только для некоторых наборов значений (измерения), но дополнительно хранит историю изменения этой информации (ресурсов) во времени.
Например, «обычный» регистр Цены товаров для покупателей может выглядеть следующим образом:
| Измерение: Покупатель | Измерение: Товар | Ресурс: Цена | Реквизит: ФИО | 
|---|---|---|---|
| Магазин «Луч» | Принтер | 10 000 | Булатов И.В. | 
| Магазин «Луч» | Монитор | 14 000 | Булатов И.В. | 
| Предприятие «Ротор» | Монитор | 11 000 | Орлова Е.Н. | 
| Предприятие «Ротор» | Мышь | 2 000 | Громова Н.П. | 
В нем может быть только одна запись про цену принтера в магазине «Луч».
Если сделать такой регистр периодическим, тогда можно будет хранить историю изменения цен:
| Период | Измерение: Покупатель | Измерение: Товар | Ресурс: Цена | Реквизит: ФИО | 
|---|---|---|---|---|
| 12.12.2021 | Предприятие «Ротор» | Принтер | 13 000 | Громова Н.П. | 
| 12.12.2021 | Магазин «Луч» | Принтер | 10 500 | Громова Н.П. | 
| 10.12.2021 | Магазин «Луч» | Принтер | 10 000 | Булатов И.В. | 
| 10.12.2021 | Магазин «Луч» | Монитор | 14 000 | Булатов И.В. | 
| 06.12.2021 | Предприятие «Ротор» | Монитор | 11 000 | Орлова Е.Н. | 
| 03.12.2021 | Предприятие «Ротор» | Мышь | 2 000 | Громова Н.П. | 
Например, в магазине «Луч» принтер стоил 10 000, а начиная с 12-го числа он стал стоить 10 500.
Чтобы сделать регистр периодическим, в проекте ему нужно установить свойство Периодичность в значение, отличное от Непериодический.
Частота изменения ресурсов
Установкой свойства Периодичность вы не только добавляете в регистр стандартное поле Период, но и указываете, как часто можно изменять значения ресурсов для тех же самых значений измерений. Например, как часто можно менять цену принтера в магазине «Луч».
«1С:Шина» предлагает на выбор несколько значений периодичности: Момент, Секунда, День, Месяц, Квартал или Год. Это значит, что запись с теми же значениями измерений можно добавить в регистр раз в миллисекунду, раз в секунду, раз в день и т. д. При этом значение ресурсов у нее может быть тем же самым (цена не изменилась) или другим (цена изменилась). Главное, что ресурсы гарантированно не могут изменяться чаще, чем периодичность регистра.
В зависимости от выбранного значения свойства Периодичность тип стандартного поля Период будет разным и значения, которые «1С:Шина» записывает в это поле, также будут отличаться:
- Если периодичность Момент, то поле Период имеет тип Момент. Значение хранится с точностью до миллисекунд.
- Если периодичность Секунда, то поле Период имеет тип ДатаВремя.
- Для остальных значений периодичности поле Период имеет тип Дата.
Если периодичность Месяц, то «1С:Шина» записывает в поле период первую дату месяца, Квартал — первую дату квартала, Год — первую дату года.
Таким образом, регистр с периодичностью Месяц будет выглядеть так:
| Период | Измерение: Покупатель | Измерение: Товар | Ресурс: Цена | Реквизит: ФИО | 
|---|---|---|---|---|
| 01.12.2021 | Предприятие «Ротор» | Принтер | 13 000 | Громова Н.П. | 
| 01.12.2021 | Магазин «Луч» | Принтер | 10 500 | Громова Н.П. | 
| 01.10.2021 | Магазин «Луч» | Принтер | 10 000 | Булатов И.В. | 
| 01.10.2021 | Магазин «Луч» | Монитор | 14 000 | Булатов И.В. | 
| 01.06.2021 | Предприятие «Ротор» | Монитор | 11 000 | Орлова Е.Н. | 
| 01.03.2021 | Предприятие «Ротор» | Мышь | 2 000 | Громова Н.П. | 
Тот же регистр, но с периодичностью Год, будет выглядеть так:
| Период | Измерение: Покупатель | Измерение: Товар | Ресурс: Цена | Реквизит: ФИО | 
|---|---|---|---|---|
| 01.01.2012 | Предприятие «Ротор» | Принтер | 13 000 | Громова Н.П. | 
| 01.01.2012 | Магазин «Луч» | Принтер | 10 500 | Громова Н.П. | 
| 01.01.2010 | Магазин «Луч» | Принтер | 10 000 | Булатов И.В. | 
| 01.01.2010 | Магазин «Луч» | Монитор | 14 000 | Булатов И.В. | 
| 01.01.2006 | Предприятие «Ротор» | Монитор | 11 000 | Орлова Е.Н. | 
| 01.01.2003 | Предприятие «Ротор» | Мышь | 2 000 | Громова Н.П. |