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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 22.03.2007, 16:43   #1  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2922 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
#ifdef.ax4
Хочется сделать код который бы по разному компилировался под трёшку и под четверку. Как?
Старый 22.03.2007, 16:52   #2  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
врядли есть такое.
Тем более, все равно не получиться делать один проект табакса для тройки и четверки одновременно из-за новой Version Control System - теперь же xpo-шки несовместимы стали. (в 4ке экспортируются только измененные свойства)
Старый 22.03.2007, 17:11   #3  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2922 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
можно в трёшке делать
Старый 23.03.2007, 00:03   #4  
AlexSD is offline
AlexSD
Microsoft Dynamics
Сотрудники Microsoft Dynamics
 
257 / 302 (11) ++++++
Регистрация: 14.10.2003
Я так думаю, что для условной компиляции можно поискать какой-нибудь определенный макрос, который есть в четверке и нет в трешке. Например, макрос из #AOT - #define.ReferencesPath('\\References').
Что-то типа

X++:
static void Job1(Args _args)
{
;
#AOT

#if.ReferencesPath
    info("Axapta 4.0");
#endif

#ifnot.ReferencesPath
    info("Axapta 3.0");
#endif

}
А так, для условных переходов можно использовать класс ApplicationVersion.
За это сообщение автора поблагодарили: belugin (15), Logger (3).
Старый 23.03.2007, 01:10   #5  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Боюсь, что вопрос не в этом, хотя и сформулирован непонятно. Каждый компилятор и так будет код по-своему компилировать. В этом-то и проблема, судя по всему. Дело в том, что то, что компилируется в одной версии, может в принципе не скомпилироваться в другой. И наоборот (например, классы по-разному называются). Подозреваю, что именно для такой ситуации ищется решение.

Интерес на 100 процентов академический. belugin, а как это делается в 3.0?
__________________
С уважением,
glibs®
Старый 23.03.2007, 07:45   #6  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2922 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
мне исключительно для табакса. Так что вполне устраивает вариант AlexSD
Старый 23.03.2007, 09:55   #7  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Цитата:
Сообщение от belugin Посмотреть сообщение
можно в трёшке делать
Цитата:
Сообщение от glibs Посмотреть сообщение
belugin, а как это делается в 3.0?
Под этим подразумевалось, что из 3ки можно экспортировать проекты, которые можно будет импортировать в 4ку. (Конкретно, Табакс)
Кросс-DAXовское решение ищется
Старый 23.03.2007, 10:37   #8  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2922 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Найдено:
TabaxLite 0.2

сделано так:
class declaration:
X++:
    #AOT

    #define.PaneWindowCL("PaneWindowCL")
    #if.ReferencesPath
        #define.PaneWindowCL("AxPaneWnd")
        #define.Ax4
    #endif

    #ifnot.ReferencesPath
        #define.Ax3
    #endif
pathes:
X++:
...
            ["\\Data Dictionary\\Base Enums\\", #imageBaseEnum],
            #if.ax3
            ["\\Data Dictionary\\Feature Keys\\", #imageFeatureKey],
            #endif
...
            ["\\Data Dictionary\\License Codes\\", #imageLicenseCode],
            ["\\System Documentation\\Feature Keys\\", #ImageDocumentationItem],
            #if.ax4
            ["\\References\\", #ImageReference],
            ["\\HTML Help Files\\", #imageHelpFile],
            #endif
...
За это сообщение автора поблагодарили: Logger (3).
Теги
макрос, ax4.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
gatesasbait: Transferring users and security between environments (in AX4) Blog bot DAX Blogs 0 15.07.2008 22:06
Создание пустой базы для AX4 polygris DAX: Администрирование 3 29.12.2007 13:41
AX UK: Guide to the AX4 SP1 Demo Data Blog bot DAX Blogs 0 09.10.2007 16:40
gl00mie: AX4 SysFileDeployment Fix Blog bot DAX Blogs 0 10.07.2007 16:20
Установка AX4 на Oracle listener DAX: Администрирование 2 02.03.2007 19:39
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 12:56.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.