Ghost object in USR layer in AX 2012

Continue reading

Sometimes after compilation you can get objects marked as changed in USR layer, but when you compare them with lower layer there are no changes.

The main issue with those objects are that you cannot delete them form USR layer.

From Dynamics AX 2012 CU7 Microsoft give us nice tool to run compilation in parallel: AxBuild.exe - more details about it you can find here: https://msdn.microsoft.com/en-us/library/dn528954.aspx.

There is one undocumented parameter in AxBiuld: /layer= where you can specify in which layer you would like to do compilation.

Return to the issue – to fix it you need to:

Step 1

Create new temporary model – for example USR_To_Del.

Step 2

Move only ghost objects from normal USR model to newly created USR_To_Del.

Step 3

Stop AOS.

Step 4

Delete model USR_To_Del:

  • Run command prompt – in run field write cmd.
  • Write cd <path to AX your server folder> for example: cd “C:\Program Files\Microsoft Dynamics AX\60\Server\MicrosoftDynamicsAX\bin”.
  • Write axutil delete /model: USR_To_Del and click enter.
  • Confirm that you really want to delete model.

Step 5

Run AxBuild with new parameter:

  • Run command prompt – in run field write cmd.
  • Write cd <path to AX your server folder> for example: cd “C:\Program Files\Microsoft Dynamics AX\60\Server\MicrosoftDynamicsAX\bin”.
  • Write axutil delete /model: USR_To_Del and click enter.
  • Write AXBuild.exe xppcompileall /s=01 /altbin="C:\Program Files (x86)\Microsoft Dynamics AX\60\Client\Bin" /layer=cus /workers=6 and click enter.

Step 6

Start AOS.

This should remove ghost objects from USR layer.

More articles
Explore our blog

Let's talk about your needs!

It will take a moment to fill out the 3-step form and we will contact you to discuss the details of your project.

Thank you for inquiry, we’ve passed it to our sales department, our representative will reach you back in his earliest convenience.

Oops! Something went wrong while submitting the form.