Руководство администратора

×
Меню
Индекс

Раздел метаданных

 
В разделе метаданных описывается структура выгруженных объектов. «Объект» в терминах KPI MONITOR - это объект сложной структуры, который физически может храниться в нескольких таблицах реляционной БД. Он состоит из набора полей простых типов (включая «ссылочные» поля, ссылающиеся на другие объекты).
Один класс объектов описывается в рамках тэга «RecordType». Атрибут «Name» содержит имя класса. Далее может следовать описание полей. Если документы данного класса присутствуют в файле, то внутри тэга описываются все поля, которые выгружались, если документы данного класса сами не выгружались, но на них есть ссылки, то описание сворачивается до одной строки:
 
<RecordType Name=«Test. Справочники . Товар »/>
 
Одно поле документа описывается в рамках тэга «Field». Атрибут «Name» содержит имя поля (логическое имя, которым оперирует KPI MONITOR, физическое имя поля в таблице БД может отличаться, хотя для MS SQL Server, обычно они совпадают). Если имя поля содержит русские буквы, то для него вводится синоним с помощью атрибута «AttrName». В секции данных значение поля будет задаваться через имя поля или через синоним, если он есть. Синоним имеет вид «c1», «c2» и т.д. и является уникальным в рамках структуры документа (не документа в целом!). Далее атрибутом «Type» задается тип поля, и в зависимости от типа могут следовать различные уточняющие атрибуты.
 
Пример :
 
 
<Field Name="Fax" Type="String" MaxLength="30"/>
<Field AttrName="c1" Name=" Адрес " Type="String"/>
 
Возможные значения атрибута Type:
-                Boolean
-                Date
-                Real
-                String (Размер строки - в атрибуте MaxLength)
-                Ref (Класс документа - в атрибуте RefName)
-                Struct
-                StructArray
 
Ссылочные поля имеют тип «Ref», дополнительный атрибут «RefName» содержит имя класса документа, на который указывает ссылка, например:
 
 
<Field Name="Resource" Type="Ref" RefName="Test. Справочники . Товар "/>
 
Структура, это поле имеющее тип «Struct». Тэг, описывающий структурное поле не закрывается сразу, а образует группу, внутри которой описываются поля структуры (вложенность структур не ограничена), пример:
 
 
<Field AttrName="c1" Name=" ФИО " Type="Struct">
  <Field AttrName="c0" Name=" Фамилия " Type="String"/>
  <Field AttrName="c1" Name=" Имя " Type="String"/>
  <Field AttrName="c2" Name=" Отчество " Type="String"/>
</Field>
 
Подтаблица, это поле имеющее тип «StructArray»
 
 
<Field AttrName="c1" Name=" Позиции " Type="StructArray">
  <Field Name="Index" ServiceType="ID" Type="Integer"/>
  <Field AttrName="c1" Name=" Товар " Type="Ref" RefName="Test. Справочники . Товар "/>
  <Field AttrName="c2" Name=" Цена " Type="Real"/>
  <Field AttrName="c3" Name=" Количество " Type="Real"/>
  <Field AttrName="c4" Name=" Сумма " Type="Real"/>
</Field>
 
Некоторые поля играют особую роль, и являются «служебными». Такие поля помечаются атрибутом «ServiceType»
Возможные значения тэга ServiceType:
 
-                ForeignKey (Тип любой, обычно - String)
-                ExtID (Type=«String»)
-                Deleted (Type=«Boolean»)
-                HGroup (Type=«Boolean»)
-                HParent (Type=«Ref»)
-                ID (Type=«Integer»)
 
ForeignKey - ключ записи. Через значение данного поля происходит ссылка на документ. Он может быть любого типа, но должен быть уникальным в рамках одного класса объектов.
ExtID - в принципе, то - же самое что ForeignKey, но может быть только строковым и имя поля всегда «ExtID». У класса записи обязательно есть одно (и только одно) поле с ServiceType = ForeignKey или ExtID
Deleted - признак того, что запись помечена как удаленная
HGroup, HParent - поля для поддержки иерархии
ID - целочисленное поле, управляющее порядком следования строк в подтаблице
Справочная система создана в Dr.Explain