AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.05.2007, 15:53   #1  
Damn is offline
Damn
Участник
 
436 / 154 (6) ++++++
Регистрация: 28.05.2003
Адрес: в глуши
Лукап, отображающий список полей определённой таблицы
Изучая метод pickField() наткнулся на метод findFields() таблицы TmpSysTableField.
Есть там такой вот участок
X++:
                    field       = new SysDictField(dictTable.id(), dictTable.fieldCnt2Id(i), j);

                    if ((field.flags()      &  #DBF_VISIBLE) &&
                        (field.flags()      &  #DBF_STORE) &&
                        (field.baseType()   != Types::CONTAINER) &&
                        (field.name()       != fieldStr(Common, dataAreaId)) &&
                        (field.name()       != fieldStr(Common, sequenceNum)) &&
                        (field.name()       != fieldStr(Common, tableId)) &&
                        (field.baseType()   != Types::VARSTRING))
                    {
                        elements++;
                        pack = conIns(pack, elements, [dictTable.fieldCnt2Id(i),
                                                       field.extendedFieldId(),
                                                       field.name(),
                                                       field.label(),
                                                       field.help(j),
                                                       field.extendedTypeId(),
                                                       field.baseType()]);
                    }
Ну вот почему в случае поля с типом Dimension метод field.name() возвращает просто "Dimension", причём несколько (кол-во аналитик) раз ? Вроде как ожидается что-то типа "Dimension[1]", "Dimension[2]" и т.д. Конечно можно легко заменить field.name() методом fieldid2name() или ещё как-то, чтобы добиться требуемого результата, но почему изначально-то правильно не работает ...
Вобщем вот, высказался
P.S. Проверено в 3.0 SP5 и 4.0 SP1
__________________
Дмитрий
Теги
ax3.0, ax4.0, lookup, lookupfield, полезное, программно

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Как получить имена полей, которые есть у таблицы? 3oppo DAX: Программирование 2 22.12.2006 14:30
Свойство AllowEdit полей таблицы Lucky13 DAX: Программирование 4 29.07.2005 14:14
Список полей таблиц на базе конкретного EDT Владимир Максимов DAX: Программирование 10 06.10.2004 14:45
Изменение ID-ов полей таблицы somebody DAX: Программирование 5 02.02.2004 19:57
Объединить несколько полей таблицы в одном поле Grid-а на форме? storer DAX: Программирование 2 12.11.2003 14:08

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 00:49.