24.6. Структуры данных

Существенной особенностью «1С:Предприятия» является принцип проектирования структур данных прикладных решений в терминах объектов [27]. Традиционные универсальные средства, применяемые для разработки прикладных решений, а также инструментальные средства, созданные разработчиками экономического программного обеспечения, обычно предполагают проектирование структур в терминах реляционных таблиц. Разумеется, этот подход не накладывает никаких ограничений на реализацию информационной модели. Однако именно набор типовых объектов предметной области позволяет избавить проектировщика от целого этапа разработки и большого комплекса проблем, встающих при проектировании структур таблиц базы данных.

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

В самих типовых объектах «1С:Предприятия» заложена стандартная совокупность функций, которая актуальна для всех объектов конкретного типа. Так, для документов поддерживается уникальность номеров и автоматическая нумерация.

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