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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 27.01.2024, 14:53   #1  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,936 / 3229 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Защита от повреждения типа таблицы в Аксапте 2012 R3
Привет всем.

Вот здесь я описал идею как можно было бы защититься от повреждений типа таблиц в аксапте 2012 R3
После инсталяции Map вдруг cтал Table?!

Попробовал реализовать. Похоже все получилось.
https://github.com/KozlovPavel677/AxTableTypeChangeFix

Идея фикса.
1. Пишем в базе модели функцию (aMRC_axTableType), которая разбирает бинарное поле ModelElementData.Properties и определяет по нему тип табличного объекта. Результат функции:
0 - Unknown
1 - Table
2 - View
3 - Map

2. На табличке ModelElementData в базе модели пишем триггер, который проверяет не поменялся ли для обновляемой таблички результат функции aMRC_axTableType. Если поменялся, то ругаемся и откатываем транзакцию (реально пришлось рубить текущее соединение)

Примерно неделю триггер живет на деве и тесте. Проблем не заметили.
Как тестировали.
Класс ViewTableProps_MRC перебирает все таблички в приложении и для каждой определяет тип таблицы через распаковку бинарного свойства ModelElementData.Properties и сравнивает результа с тем что вернул DictTable.isView() и DictTable.isMap(). Если выявлено несоответствие то пишет в инфолог "ERROR !!!".

Просьба к участникам форума поучаствовать в тестировании, прогнать этот проверочный класс на своих приложениях. Вдруг выявится ошибка в определении типа таблицы. Но мне кажется, что все должно быть нормально. Мы проверяли всеми способами.
За это сообщение автора поблагодарили: sukhanchik (10), Manner (1), Dron AKA andy (5), gl00mie (10).
Теги
ax2012, ax2012r2, ax2012r3, map, modelelementdata, table, view

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Sumit Potbhare: AX 2012 R3 | Statement Posting| Part IV: Hotfixes Blog bot DAX Blogs 0 23.06.2017 14:11
stoneridgesoftware: Part I: Configuring the Dynamics AX 2012 R3 Entity Store Blog bot DAX Blogs 0 27.04.2017 12:11
dynamicsaxse: Announcing Cumulative Update 12 for Microsoft Dynamics AX 2012 R3 Blog bot DAX Blogs 0 22.11.2016 13:11
axsa: Extensibility in Dynamics AX 2012 R3 CU8 (CRT, RetailServer, MPOS) Part 2 – New data entity Blog bot DAX Blogs 0 21.05.2015 01:19
amer-ax: It was a great day! Blog bot DAX Blogs 3 29.12.2012 01:02

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

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

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