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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 08.09.2017, 10:34   #2  
dech is offline
dech
Участник
Аватар для dech
Самостоятельные клиенты AX
 
650 / 352 (13) ++++++
Регистрация: 25.06.2009
Адрес: Омск
Записей в блоге: 3
Есть некоторые отличия между ComboBox и Lookup. В первом случае у вас будет выпадающий список из статических значений, определённых в перечислимом типе Base Enum (даже если это EDT, он может наследоваться от Base Enum). В другом случае значения берутся из связанной таблицы. Обычно на типе создают отношение, но, начиная с 2012 аксапты, от этого отходят и делают отношения прямо на таблице.
Цитата:
Сообщение от vizir Посмотреть сообщение
Вопрос 1: где задается количество полей, которые будут выводиться в комбо боксе? Я пробовал перенастраивать отношение на другие поля, но пара одно лишнее поле стабильно все равно выводится в результате.
В таблице Table1 найдите узел Field Groups > AutoLookup. Накидайте туда столько полей, сколько необходимо. Все они появятся в выпадающем lookup-списке.
Цитата:
Сообщение от vizir Посмотреть сообщение
Вопрос 2: каким чудом axapta понимает что нужно создать именно ComboBox или TextField по EDT? Это какое то неписанное правило? И где можно это правило почитать, если оно написано? Как это гуглить?
У EDT иногда нужно смотреть иерархию, чтобы определить, что у какого-то предка есть отношение к какой-нибудь таблице. Либо он наследуется от Base enum. Например, EDT NoYesId наследуется от NoYes.
Цитата:
Сообщение от vizir Посмотреть сообщение
Вопрос 3: я создал обработчик события на этот CobmoBox путем написанного вручную метода с названием типа Fld1_1_modified(). Я не переопределял этот метод, нигде не было никаких намеков что именно так обрабатываются события. Как я должен был догадаться что именно так обрабатывается событие вновь созданного элемента формы?
Каждый контрол имеет свое имя. Если они создаются автоматически, то они называются Fld1_1, Fld1_2 и т.д. Контролу можно дать своё имя, но в старых версиях даже это было невозможно. Поэтому создав метод Fld1_1_modified() можно перекрывать событие modified() данного контрола. Такую возможность сделали именно из-за необходимости перекрывать события для контролов в диалогах, где они создаются автоматически.

P.S. Для начала почитайте про lookup в книге Еременко-Шашкова, начиная со стр. 196, там страничек 5. Даже где-то была ссылка на электронную версию.
__________________
// no comments
За это сообщение автора поблагодарили: S.Kuskov (2).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: Inconsistency between quantity in purchase order and quantity in inventory transaction. Blog bot DAX Blogs 0 31.01.2015 23:11
emeadaxsupport: AX for Retail 2012 R2: Working with Custom Fields for Receipts Blog bot DAX Blogs 0 16.02.2013 23:12
Вопросы новичка - взаимодействие2 форм Dona DAX: Программирование 2 12.07.2011 17:30
Navision Axapta 3.0 - Вопросы новичка Igor Beeone DAX: Программирование 2 01.10.2007 10:13
Вопросы от новичка CTAX DAX: Функционал 4 13.08.2002 13:25

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

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

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