Показать сообщение отдельно
Старый 23.05.2014, 13:11   #1  
Blog bot is offline
Blog bot
Участник
 
25,644 / 848 (80) +++++++
Регистрация: 28.10.2006
emeadaxsupport: AX 2012, a TableMap object turns to be a Table
Источник: http://blogs.msdn.com/b/axsupport/ar...e-a-table.aspx
==============



Issue description:



We have seen some scenarios while deploying Models/ModelStore among multi environments,

that a TableMap object turns to be a Table.

Cause:

Unknown, no consistent repro pattern has been spotted

Resolution suggestion:

We take e.g. that the affected object is the 'CustVendInvoiceTrans' table map.

Run the following SQL script in order to correct the object type:

-- Assumption: Script works against dev model store

-- Assumption: Clean baseline model store is named: axdbdev_model_id_baseline (can be replaced by own naming)



-- Check existence affect object in dev environment

SELECT m.ElementType, m.Name, m.AxId, md.LayerId, manifest.DisplayName, md.Properties as Metadata

FROM [dbo].ModelElement AS m

INNER JOIN [dbo].ModelElementData AS md

ON m.ElementHandle = md.ElementHandle

INNER JOIN [dbo].ModelManifest AS manifest

ON md.ModelId = manifest.ModelId

AND m.ElementType = 44 AND m.Name = 'CustVendInvoiceTrans'



-- Check existence affect object in baseline environment

SELECT m.ElementType, m.Name, m.AxId, md.LayerId, manifest.DisplayName, md.Properties as Metadata

FROM axdbdev_model_id_baseline.[dbo].ModelElement AS m

INNER JOIN axdbdev_model_id_baseline.[dbo].ModelElementData AS md

ON m.ElementHandle = md.ElementHandle

INNER JOIN axdbdev_model_id_baseline.[dbo].ModelManifest AS manifest

ON md.ModelId = manifest.ModelId

AND m.ElementType = 44 AND m.Name = 'CustVendInvoiceTrans'



-- Replace corrupted metadata on dev environment from baseline environment

Update md Set md.Properties = md_base.Properties

FROM [dbo].ModelElement AS m

INNER JOIN [dbo].ModelElementData AS md

ON m.ElementHandle = md.ElementHandle

INNER JOIN axdbdev_model_id_baseline.[dbo].ModelElement AS m_base

ON m.ElementType = m_base.ElementType AND m.Name = m_base.Name

INNER JOIN axdbdev_model_id_baseline.[dbo].ModelElementData AS md_base

ON m_base.ElementHandle = md_base.ElementHandle

AND m_base.ElementType = 44 AND m_base.Name = 'CustVendInvoiceTrans' AND md_base.LayerId = 0




Источник: http://blogs.msdn.com/b/axsupport/ar...e-a-table.aspx
__________________
Расскажите о новых и интересных блогах по Microsoft Dynamics, напишите личное сообщение администратору.