Реквизит типа ссылки (ссылка) в объектах метаданных конфигураций системы BAS «Business Automation Software»

  • ПрограммистBAS

В системе BAS (на платформе BAF) реквизит – это поле базы данных, характеризующее некоторое свойство конфигурационных объектов (справочников, документов, регистров, обработок, отчетов и др.) с помощью значений различного типа. Назначение реквизитов: описать каждый элемент таких объектов посредством набора их свойств и хранить данные об этих свойствах в информационной базе. Для этого используются разные типы реквизитов. Это могут быть как примитивные типы: строка, число, дата, булевое значение и т.п., так и универсальные коллекции: таблица значений, массив и т.п.; общие типы: табличный документ, картинка, COM-объект и т.п. или прикладные типы (порождаемые прикладными объектами): ссылки, характеристика и т.п. К последним (прикладным или «порожденным» типам) как раз и относится тип: ссылка («Ссылка»), наиболее часто используемая в системе BAS. Для хранения ссылок предназначены типы встроенного языка: СправочникСсылка.<ИмяОбъекта>, ДокументСсылка.<ИмяОбъекта> и т.д. объект системы, например элемент справочника, значение перечисления, документ или другое. Но здесь необходимо понимать, что «Ссылка» не содержит сам элемент объекта метаданных, но уникальный идентификатор (GUID) этого элемента, который присваивается ему при записи в базу данных и содержит значение всех его реквизитов. Этот тип является одним из ключевых типов, используемых для связывания данных между объектами. Ссылки можно создавать на различные объекты метаданных.

Основные из них:

• справочники;
• документы;
• перечисление;
• планы (счетов, характеристик, расчетов, обмена);
• бизнес-процесс;
• задача;
• и т.д.

Для лучшего понимания этого типа следует обратить внимание на то, что система BAS имеет реляционную (табличную) модель данных. То есть данные хранятся в отдельных таблицах, связанных между собой через ключи. «Ссылка» в системе выполняет роль внешнего ключа в реляционной модели. Реквизит типа Ссылки устанавливает связь между объектами и обеспечивает согласованность и интегрированность данных в системе.

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

Так, к примеру, для описания заказа продуктов у поставщика нужно указать состав, на который планируется заказывать продукты. Для хранения списка складов в системе используются элементы справочника «Склады», то есть элементы другого объекта метаданных. В соответствии с этим для выбора определенного состава в документе необходимо задать его уникальный идентификатор, содержащий ссылку на элемент справочника «Склады» (СправочникСсылка.<Склады>).

Реквізит типу посилання (Ссылка)

То есть поле (реквизит) «Состав» в документе должно ссылаться на запись в таблице справочника «Составы» и эта связь устанавливается через палитру свойств реквизита следующим образом:

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

Рекомендуемые статьи

Публикации
12.11.2025

Опрацювання в конфігураціях системи BAS результатів пакетного запиту до бази даних окремо для кожного запиту в пакеті

Опрацювання в конфігураціях системи BAS результатів пакетного запиту до бази даних окремо для кожного запиту в пакетіІноді виникає потреба виконати послідовно декілька запитів до бази даних, результати яких не повинні бути пов’язані між собою і використовуються окремо. В такому випадку їх можна об’єднати в один пакетний запит з роздільним опрацюванням результатів. Приклад. Припустимо, що розробляється […]

Procom default image
12.02.2026

Как при помощи конструктора движений добавить код для проведения документа по регистру, если в модуле объекта уже есть процедура обработка проведения?

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

підсумок у підвалі табличної частини
16.02.2026

Как отобразить итог в подвале табличной части на форме документа?

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