18.12.2010, 14:45 | #1 |
Участник
|
Info: ID полей таблицы типа EDT массив (array elements)
Возможно будет полезно (для DAX 3.0 kr3):
Значение ID для элементов массива поля типа EDT массив находятся в диапазоне выше 65535 (word). Механика ID следующая: 1. ID поля таблицы типа EDT массив имеет значение ID в соответствующем слою диапазоне (в пределах значений типа unsigned word). 2. Элементы массива такого поля (например dimension[1]) тоже имеют свой ID который формируется следующим образом: <№ измерения>*65536+<ID поля> и, который можно узнать с помощью функции FieldName2ID. Другими словами ID полей таблицы имеют как минимум 3х байтовую структуру (а скорее всего dword), где старший байт является номером элемента массива, а младший – ID поля (без индекса) Пример: id измерения dimension[2] в custTable = 2*65536+ fieldNum(custTable,dimension) = FieldName2ID( tableNum(custTable),"dimension[2]")
__________________
--- SHiSHok |
|
Теги |
array, fieldid, table |
|
|