|
![]() |
#1 |
Злыдни
|
Удаление устаревших свойств таблицы из AOT
При переходе на AX 2012 для таблиц с включенными свойствами createdtime и modifiedtime в AOT остаются столбцы для таблицы с префиксами del_.
Существует ли способ избавится от них?
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании. |
|
![]() |
#2 |
Злыдни
|
Оказалось, что этот артефакт для всех таблиц остался
![]()
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании. |
|
![]() |
#3 |
Участник
|
отрубить ключи SysDeletedObjects*
|
|
|
За это сообщение автора поблагодарили: axotnik88 (0). |
![]() |
#4 |
Участник
|
В Axapta 2009 такая интересная штука...
Если в таблице имеется поле, например DEL_MODIFIEDTIME, то штатно отключить его нельзя. Более того : если вы захотите отключить поле MODIFIEDDATETIME (установить это свойство в NO в свойствах таблицы АОТ) - то сделать это не получится. После сохранения изменения, синхронизации таблицы после любой компиляции этой таблицы поле всякий раз будет возвращаться (в значение Yes) Но способ избавится от полей DEL_ все же есть 1. Делаем экспорт таблицы в файл XPO 2. Открываем файл блокнотом и исправляем в нем эти поля Exportfile for AOT version 1.0 or later Formatversion: 1 ***Element: DBT ; Microsoft Dynamics AX Table : SOMEOLDTABLE unloaded ; -------------------------------------------------------------------------------- TABLEVERSION 1 TABLE #SOMEOLDTABLE Id 50001 PROPERTIES Name #SOMEOLDTABLE Label #Имя таблицы TitleField1 #Field1 TitleField2 #Field2 SecurityKey #InventTables CacheLookup #Found TableGroup #WorksheetLine ModifiedDateTime #No DEL_modifiedTime #No CreatedDateTime #Yes DEL_createdTime #No CreatedBy #Yes ENDPROPERTIES 3. Загружаем файл назад в приложение 4. Синхронизируем 5. Enjoy. Получить список таблиц с полями DEL_ можно например так X++: SELECT * FROM [SQLDICTIONARY] d where exists (select 'x' from [SQLDICTIONARY] where SQLNAME in('DEL_modifiedTime', 'DEL_CREATEDTIME') and TABLEID = d.TABLEID) and d.FIELDID = 0; |
|
|
За это сообщение автора поблагодарили: Logger (1), gl00mie (3). |
![]() |
#5 |
Участник
|
Цитата:
Сообщение от someOne
![]() В Axapta 2009 такая интересная штука...
Если в таблице имеется поле, например DEL_MODIFIEDTIME, то штатно отключить его нельзя. Более того : если вы захотите отключить поле MODIFIEDDATETIME (установить это свойство в NO в свойствах таблицы АОТ) - то сделать это не получится. После сохранения изменения, синхронизации таблицы после любой компиляции этой таблицы поле всякий раз будет возвращаться (в значение Yes) Но способ избавится от полей DEL_ все же есть 1. Делаем экспорт таблицы в файл XPO 2. Открываем файл блокнотом и исправляем в нем эти поля Exportfile for AOT version 1.0 or later Formatversion: 1 ***Element: DBT ; Microsoft Dynamics AX Table : SOMEOLDTABLE unloaded ; -------------------------------------------------------------------------------- TABLEVERSION 1 TABLE #SOMEOLDTABLE Id 50001 PROPERTIES Name #SOMEOLDTABLE Label #Имя таблицы TitleField1 #Field1 TitleField2 #Field2 SecurityKey #InventTables CacheLookup #Found TableGroup #WorksheetLine ModifiedDateTime #No DEL_modifiedTime #No CreatedDateTime #Yes DEL_createdTime #No CreatedBy #Yes ENDPROPERTIES 3. Загружаем файл назад в приложение 4. Синхронизируем 5. Enjoy. Получить список таблиц с полями DEL_ можно например так X++: SELECT * FROM [SQLDICTIONARY] d where exists (select 'x' from [SQLDICTIONARY] where SQLNAME in('DEL_modifiedTime', 'DEL_CREATEDTIME') and TABLEID = d.TABLEID) and d.FIELDID = 0; |
|