AttributeIndex(AttrNumber: Integer): Integer;
AttrNumber. Номер атрибута, выводимого по порядку при построении справочника.
Свойство AttributeIndex возвращает зарезервированный индекс стандартного атрибута по его номеру в списке атрибутов при построении справочника.
Для календарного справочника определен ряд стандартных атрибутов, которые могут быть использованы при работе:
Зарезервированный индекс атрибута | Идентификатор атрибута | Наименование атрибута |
0 | NAME | Имя элемента календаря. |
1 | START_DATE | Дата начала периода. |
2 | FINISH_DATE | Дата окончания периода. |
3 | BLOCK_TYPE | Тип блока календаря. |
4 | LEVEL_TYPE | Тип уровня календаря. |
5 | BLOCK_NAME | Имя блока календаря. |
6 | LEVEL_NAME | Имя уровня календаря. |
7 | ORDER | Порядок. |
8 | ID | Идентификатор. |
9 | PERIOD | Период. |
10 | YEAR | Номер года. |
11 | HALF_OF_YEAR | Номер полугодия. |
12 | QUARTER | Номер квартала. |
13 | MONTH | Номер месяца. |
14 | WEEK_OF_YEAR | Номер недели в году. |
15 | DAY_OF_WEEK | Номер дня в неделе. |
16 | DAY_OF_MONTH | Номер дня в месяце. |
17 | DAY_OF_YEAR | Номер дня в году. |
Каждый атрибут имеет зарезервированный индекс, который используется для добавления атрибута в список атрибутов, значения которых вычисляются при построении справочника. Данное свойство предназначено для сопоставления:
Номера атрибута в списке → Зарезервированный индекс атрибута в коллекции атрибутов справочника
Примечание. При открытии справочника из навигатора объектов атрибут «Имя элемента календаря» всегда указывается первым. Из значений данного атрибута будет составлено дерево элементов справочника.
Если передаваемый номер не соответствует стандартному атрибуту, то генерируется исключительная ситуация.
Для выполнения примера предполагается наличие в репозитории календарного справочника с идентификатором "CALENDAR_DIM".
Sub UserProc;
Var
MB: IMetabase;
CalDim: ICalendarDimension;
i: Integer;
Begin
MB := MetabaseClass.Active;
CalDim := MB.ItemById("CALENDAR_DIM").Bind As ICalendarDimension;
For i := 0 To CalDim.AttributeCount - 1 Do
Select Case CalDim.AttributeIndex(i)
Case 0: Debug.WriteLine("Имя элемента календаря");
Case 1: Debug.WriteLine("Дата начала периода");
Case 2: Debug.WriteLine("Дата окончания периода");
Case 3: Debug.WriteLine("Тип блока календаря");
Case 4: Debug.WriteLine("Тип уровня календаря");
Case 5: Debug.WriteLine("Имя блока календаря");
Case 6: Debug.WriteLine("Имя уровня календаря");
Case 7: Debug.WriteLine("Порядок");
Case 8: Debug.WriteLine("Идентификатор");
End Select;
End For;
End Sub UserProc;
После выполнения примера в консоль среды разработки будут выведены наименование стандартных атрибутов календарного справочника, в том порядке, в каком они созданы в справочнике.
См. также: