66. Зачем?
Мы с вами подошли к кардинальному моменту разработки любой конфигурации - созданию механизма учета накопления данных. Но зачем? Ведь все есть? У нас есть что расходовать и приходовать (справочники) и у нас есть чем расходовать и приходовать (документы). Осталось только построить несколько отчетов и автоматизация OOO будет закончена.
Но, например, сейчас мы полагаем, что товары поступают и затем расходуются. Руководство захотело усилить материальный контроль и решило приходовать товары на основной склад организации и затем выдавать их МОЛ. В этом случае нам придется добавить в конфигурацию еще один документ, который будет фиксировать перемещение материалов между основным складом и МОЛ. И очевидно, нам придется переработать все отчеты, которые были на,и созданы к этому моменту, с тем, чтобы они учитывали изменения, вносимые новым документом. А если в конфигурации не два, а двадцать документов?!
Еще отчеты, анализирующие документы, будут работать довольно медленно, что будет вызывать раздражение пользователей и недовольство руководителей.
Поэтому в 1С есть объекты конфигурации, позволяющие создавать в БД структуры, для накопления информации в удобном для последующего анализа виде. Использование таких «хранилищ» данных позволяет нам с одной стороны накапливать в них данные, поставляемые различными документами, а с другой стороны легко создавать нужные нам отчеты или использовать эти данные в алгоритмах работы конфигурации.
67. Цитата из [RAD80]
Объект конфигурации Регистр накопления является прикладным объектом и предназначен для описания структуры накопления данных. На основе объекта конфигурации Регистр накоплено платформа создает в БД информационную структуру, в которой будут накапливаться данные, «поставляемые» различными объектами базы данных. Эти данные будут храниться в регистре в виде отдельных записей, каждая из которых имеет одинаковую, заданную в конфигураторе, структуру.
Виды числовой информации, накапливаемой регистром накопления, называются ресурсами и также являются подчиненными объектами и описываются в конфигураторе.
Изменение состояния регистра накопления происходит, как правило, при проведении документа, и заключается в том, что в регистр добавляется некоторое количество записей. Каждая запись содержит значения измерений, значения приращений ресурсов, ссылку на документ, который вызвал эти изменения (регистратор) и «направление» приращения (приход или расход). Такой набор записей называется движениями регистра накоплении. Каждому движению регистра накопления всегда должен соответствовать регистратор.
Кроме того, регистр накопления может хранить дополнительную информацию, описывающую каждое движение. Набор такой дополнительной информации задается разработчиком при помощи реквизитов объекта конфигурации Регистр накопления.