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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.12.2014, 18:27   #1  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5803 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Модели - механизм в определенном смысле более гранулярный, чем XPO-шники. В одной модели может быть один метод или табличное поле, в другой модели - другой метод или табличное поле. При выгрузке XPO весь объект попадает в выгрузку, максимум можно играться слоями. Это может сильно осложнить жизнь при слиянии изменений, если для одного и того же объекта часть изменений надо перенести, а часть - нет.
Кроме того, перенос проектами реально грозит разъехавшимися ID-шниками объектов, особенно тех, что в DataDictionary Одной из фишек 2012-й является вроде как преодоление проблемы ID-шников объектов - их пересечения и исчерпания. Частью решения стали ID-шники, специфичные для инсталляции, см. также The solution to the element ID problem, и при переносе модификаций проектами ID-шники не сохраняются - выделяются новые. Как минимум, это чревато невозможностью легко и просто перенести затем рабочую базу в тест, потому что в тесте будут совершенно другие ID-шники в SqlDictionary и в полях типа RefTableId. Сразу скажу, что модели тоже не решают эту проблему - надо переносить базу модели целиком.
За это сообщение автора поблагодарили: RVS (1), Logger (3).
Старый 28.12.2014, 19:36   #2  
RVS is offline
RVS
Сенбернар
Аватар для RVS
Злыдни
 
696 / 130 (6) +++++
Регистрация: 27.02.2003
Адрес: Королев МО
Цитата:
Сообщение от gl00mie Посмотреть сообщение
Модели - механизм в определенном смысле более гранулярный, чем XPO-шники. В одной модели может быть один метод или табличное поле, в другой модели - другой метод или табличное поле. При выгрузке XPO весь объект попадает в выгрузку, максимум можно играться слоями. Это может сильно осложнить жизнь при слиянии изменений, если для одного и того же объекта часть изменений надо перенести, а часть - нет.
Кроме того, перенос проектами реально грозит разъехавшимися ID-шниками объектов, особенно тех, что в DataDictionary Одной из фишек 2012-й является вроде как преодоление проблемы ID-шников объектов - их пересечения и исчерпания. Частью решения стали ID-шники, специфичные для инсталляции, см. также The solution to the element ID problem, и при переносе модификаций проектами ID-шники не сохраняются - выделяются новые. Как минимум, это чревато невозможностью легко и просто перенести затем рабочую базу в тест, потому что в тесте будут совершенно другие ID-шники в SqlDictionary и в полях типа RefTableId. Сразу скажу, что модели тоже не решают эту проблему - надо переносить базу модели целиком.
Спасибо.. Дивно )) но..

- мне, как пользователю (а программист - это тоже.. гм.. пользователь).. нафиг не нужны все эти "красЯвости", с "бОльшими гранулярностями"..

Зачем это придумано - в общем, понятно.. да, и было - понятно.. ))

Остался вопрос : "- чем перенос проекта (а-ля "старая", до 2012, Акса) реально грозит.. переносящему?"

Собственно, все.. все прочее - маркетинг от Микрософта )

PS : "Одной из фишек 2012-й является вроде как преодоление проблемы ID-шников объектов - их пересечения и исчерпания. Частью решения стали ID-шники, специфичные для инсталляции, см. также The solution to the element ID problem, и при переносе модификаций проектами ID-шники не сохраняются - выделяются новые. Как минимум, это чревато невозможностью легко и просто перенести затем рабочую базу в тест, потому что в тесте будут совершенно другие ID-шники в SqlDictionary и в полях типа RefTableId."



Мне это напоминает.. Dimensions в 2012-й.. только ленивый, походу, на написал еще примочку, которая по имени и DefaultDimension вытаскивает значение + расшифровку )))

Уроды писали 2012. Чтоб им.. икалось ))

PS : вопрос - остался..
__________________
Best Regards,
Roman

Последний раз редактировалось RVS; 28.12.2014 в 20:38.
Старый 29.12.2014, 09:36   #3  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от RVS Посмотреть сообщение
- мне, как пользователю (а программист - это тоже.. гм.. пользователь).. нафиг не нужны все эти "красЯвости", с "бОльшими гранулярностями"..
  1. Больше "гранулярность" означает что больше ситуаций, когда вместо анализа исправлений можно просто перенести новый код. "Нафиг не нужны все эти "красЯвости", с "бОльшими гранулярностями"" означает "Я, как программист, люблю сидеть в утилите сравнения, анализировать, что изменилось и вручную сливать свои изменения с изменениями в новой версии" - но это свойство скорее новой версии AX, а не моделей, как таковых. Например, если вы сделали добавление кнопки на форме, безо всяких новых моделей, при накатывании изменений она также появится на измененной форме сама.
  2. Модели так же получили неофициальное название "параллельные слои". Так как можно сделать несколько независимых моделей на одном слое. Теоретически можно совместить на одном слое два партнерских решения - правда это требует отказа от изменения кода - использования только точек расширения (события и т.д.).
  3. Проекты Visual Studio, которые в AOT нельзя надежно перенести в каком-то виде, кроме как в модели. При экспорте в XPO может получится файл, который нельзя загрузить.
Моделям также присущи определенные недостатки:
  • при импорте модели возникает проект обновления, предлагающий перекомпилировать все приложение (чего можно избежать, но все-таки)
  • модели чрезвычайно чувствительны к номеру версии, на которых их делают. Часто, на более старую версию нельзя установить модель, сделанную на более новой версии.

Если работать с кодом только при помощи контроля версий, то можно совместить достоинства моделей с достоинствами XPO.

Добавил статью на erpkb - дополняйте

Последний раз редактировалось belugin; 29.12.2014 в 09:44.
За это сообщение автора поблагодарили: Logger (3).
Старый 29.12.2014, 11:09   #4  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1853 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от belugin Посмотреть сообщение
Проекты Visual Studio, которые в AOT нельзя надежно перенести в каком-то виде, кроме как в модели. При экспорте в XPO может получится файл, который нельзя загрузить
C чего бы это вдруг ?
__________________
-ТСЯ или -ТЬСЯ ?
Старый 29.12.2014, 11:13   #5  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от Vadik Посмотреть сообщение
C чего бы это вдруг ?
Мне непонятен смысл вашего вопроса - вы говорите, что такого не бывает, или вам непонятны причины этого?
  • Если первое, то попробуйте перенести через XPO проект отсюда http://axcoder.blogspot.ie/2014/11/s...sing-xlnt.html
  • Если второе, то мне багу закрыли с формулировкой "юзайте модели"
Старый 29.12.2014, 11:17   #6  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1853 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Первое. До сих пор не сталкивался. Попробую
__________________
-ТСЯ или -ТЬСЯ ?
Старый 29.12.2014, 11:40   #7  
lvan is offline
lvan
Участник
Аватар для lvan
Лучший по профессии 2014
 
858 / 82 (4) ++++
Регистрация: 15.04.2011
Записей в блоге: 1
Цитата:
Сообщение от RVS Посмотреть сообщение
Остался вопрос : "- чем перенос проекта (а-ля "старая", до 2012, Акса) реально грозит.. переносящему?"
смотря в каком ключе на вопрос посмотреть
если про "реальную" угрозу, то зависит от босса, IT админа (который бакапит базу), но в общем случае, думаю, вплоть до летального исхода.
Старый 29.12.2014, 12:10   #8  
RVS is offline
RVS
Сенбернар
Аватар для RVS
Злыдни
 
696 / 130 (6) +++++
Регистрация: 27.02.2003
Адрес: Королев МО
Цитата:
Сообщение от lvan Посмотреть сообщение
смотря в каком ключе на вопрос посмотреть
если про "реальную" угрозу, то зависит от босса, IT админа (который бакапит базу), но в общем случае, думаю, вплоть до летального исхода.
Боюсь-боюсь-боюсь..

А на серьезе если - представьте, чисто умозрительно, что есть 2012-я, в которую новые доработки пытаются (и небезуспешно.. может быть - пока небезуспешно) переносить именно проектами.

Вопрос : чем это потенциально грозит. Ну, не переносящему, конечно, а самой Аксапте..
__________________
Best Regards,
Roman
Старый 28.12.2014, 20:44   #9  
RVS is offline
RVS
Сенбернар
Аватар для RVS
Злыдни
 
696 / 130 (6) +++++
Регистрация: 27.02.2003
Адрес: Королев МО
Цитата:
Сообщение от gl00mie Посмотреть сообщение
Как минимум, это чревато невозможностью легко и просто перенести затем рабочую базу в тест, потому что в тесте будут совершенно другие ID-шники в SqlDictionary и в полях типа RefTableId. Сразу скажу, что модели тоже не решают эту проблему - надо переносить базу модели целиком.
Как максимум - это решается ежедневным обновление Test <<-- Prod, со спасением проектов.. "кто не спрятался - никто не виноват".

У меня так вот сейчас пока.. Вооот.. ))

ЗЫ : "Мелочь" а-ля что-то там поправить или отчет нарисовать - "разрабатывается" на Test. Отсюда и приколы типа "не уходи с работы, пока не спас проект.. в папку, блин.."

Повторяю : архитектура сделана.. уродами, и плохо документирована. Почему плохо - а потому, что они сами не знают, ЧТО из этого.. вырастет ))
__________________
Best Regards,
Roman

Последний раз редактировалось RVS; 28.12.2014 в 20:49.
Теги
ax2012, cil, xpo, модель, модель данных, полезное

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Dynamics AXBR: AX2012 – Common Intermediate Language (CIL) – (Parte I) Blog bot DAX Blogs 0 04.04.2013 09:11
X++ to CIL Blog bot DAX Blogs 0 01.04.2013 14:11
X++: X++ Arrays Behave Differently in .NET CIL, in Dynamics AX 2012 Blog bot DAX Blogs 0 17.09.2012 23:11
emeadaxsupport: In Microsoft Dynamics AX 2012, compiler output setting of Message Window may cause errors when generating (incremental) CIL Blog bot DAX Blogs 0 16.03.2012 23:12
X++: X++ Function num2Str: Difference in .NET CIL Mode Blog bot DAX Blogs 0 09.03.2012 07:45
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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