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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 03.03.2004, 18:05   #1  
Dimus is offline
Dimus
Участник
 
11 / 10 (1) +
Регистрация: 15.07.2003
Создание EDT в X++
Необходимо создать ExtendedDataType в X++ (программно). Чего-то не получается через treeNode.AOTadd (по аналогии с созданием таблиц или меню-итемов), например:

static void Job1(Args _args)
{
TreeNode rootEDTNode;
TreeNode treeNode;
;
rootEDTNode = treeNode::findNode("\\Data Dictionary\\Extended Data Types");
rootEDTNode.AOTadd('AAA_NewEDT');
treeNode = rootEDTNode.AOTfindChild('AAA_NewEDT');
treeNode.AOTsave();
}

Не создает (объект treeNode не инициализируется)! Есть мысли, что не создает потому, что EDT могут быть разных типов (Strind, Date, ...), и системе не понятно, какой тип создавать. Кроме того, не нашел в системных и обычных классах класса-потомка от TreeNode, который отвечал бы за EDT. Как же создать EDT программно?
Старый 03.03.2004, 19:13   #2  
Yury is offline
Yury
Участник
 
27 / 16 (1) ++
Регистрация: 25.09.2002
Можно создать файл, аналогичный получающемуся при экспорте объекта, затем его импортировать. Не самый красивый способ, зато работает
Старый 04.03.2004, 15:17   #3  
france is offline
france
Участник
 
159 / 11 (1) +
Регистрация: 24.11.2003
Адрес: Москва
Искал, как все таки создать EDT в Х++, решения не нашел, но вот то, с чем столкнулся
Ощущение, когда нашел было такое, что кто то решил пошутить, и скопировал с TechNet текущие вопрос и ответ

Вопрос:
How to add a new EDT by x++?

Adding Extended Data Types to the AOT-tree does not work in quite the same way as adding e.g. Tables.

How to specify the Extended Data Type to be a string or an integer etc.? Is it a tree-node level or a property?

Thanks in advance…
Anders Warncke
HOB Business Software

__________________________
Ответ:
Export, replace and import

How about exporting it to a xpo file, replace the name the right places in the file with TextBuffer and then import it? I don't think there's any other ways to do it.

Regards,
Lars

PS Таки, никто и не знает как это сделать? Вроде как надо AOTSetProperties делать, но у меня пока не получается(
Старый 04.03.2004, 16:09   #4  
Dimus is offline
Dimus
Участник
 
11 / 10 (1) +
Регистрация: 15.07.2003
Через экспорт/импорт - реальная идея (обязательно попробую). Спасибо! Хотя и кривоватая, конечно, по-своему.
Еще есть мысль: в UtilElements добавить из X++ запись для нового EDT, но, во-первых, не знаю как Id объекта инициализировать, а, во-вторых, опасная это вещь будет, наверное.
Старый 30.04.2004, 12:40   #5  
ta_and is offline
ta_and
Участник
 
226 / 122 (5) +++++
Регистрация: 26.02.2002
Адрес: СПб
Я еще попробовал
1. dictionary
2. AOTinsert - создает новую веточку едт, но дублирующую уже имеющийся тип (

Безуспешно.
Еще идеи?
Старый 30.04.2004, 12:53   #6  
DMA is offline
DMA
Участник
 
109 / 19 (1) ++
Регистрация: 30.09.2003
Не ясно мне только одно: на кой все это извращение нужно?
Или это чисто спортивный интерес?
Старый 30.04.2004, 13:08   #7  
ta_and is offline
ta_and
Участник
 
226 / 122 (5) +++++
Регистрация: 26.02.2002
Адрес: СПб
Некоторые люди думают не только о себе...
и о клиенте...
но еще и о других людях, подобных себе.

Так вот. Наверно не только у меня возникла мысль автоматизировать некоторые операции по программированию в Ахарте. Ну что-то типа Мастера Мастеров :))
Что-то серьезное без создания своего расширенного типа данных сделать невозможно.
Все объекты АОТа создаются влет! Легко и просто. А вот с ЕДТ - облом.
Нет нигде в исходниках.
Нет нигде в хелпах.
Нет нигде на форумах.
Технет молчит как партизан.

Даже проекты! Проекты, которые отдельно стоят от АОТа, создаются легко и просто.
Но не ЕДТ.
Старый 05.05.2004, 14:15   #8  
ta_and is offline
ta_and
Участник
 
226 / 122 (5) +++++
Регистрация: 26.02.2002
Адрес: СПб
Кстати...
Та же беда и с Relation-ами на расширенном типе данных. :(
Старый 14.10.2005, 13:27   #9  
AXDVS is offline
AXDVS
Участник
 
13 / 10 (1) +
Регистрация: 06.07.2005
Адрес: 277-948-835
у кого-нибудь получилось создать EDT, ща пробую - ну никак не хочет создаваться
Старый 14.10.2005, 13:48   #10  
AXDVS is offline
AXDVS
Участник
 
13 / 10 (1) +
Регистрация: 06.07.2005
Адрес: 277-948-835
нашел :-)
http://www.axforum.info/forums/showt...TsetProperties
Теги
edt, x++

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Создание наследника EDT через Х++ vesna DAX: Программирование 12 02.05.2012 08:13
Значение по умолчанию параметра типа EDT c array elements либо просто массива HorrR DAX: Программирование 16 20.02.2008 19:18
Каким образом выцепить айдишку или текстовую репрезентацию EDT поля таблицы. HorrR DAX: Программирование 8 18.02.2008 15:45
Синхронизация таблиц при изменении EDT z_av DAX: Программирование 1 16.12.2004 11:55
Список полей таблиц на базе конкретного EDT Владимир Максимов DAX: Программирование 10 06.10.2004 14:45

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

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

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