With all of the new concepts introduced into Microsoft Dynamics AX 2012, there are a number of areas where new techniques for debugging are required. Watch the blog for similar entries in the future and feel free to let me know what kind of AX 2012 debugging topics would be of interest to the community.

We recently ran across an ​issue with the Project Table form where trying to hover over the Project Purchase Orders link within the Item tasks Fact Box title would cause an error trying to execute the query instead of bringing up the quick 6 column lookup like the other hyperlinks.  So the question became - how do we decide what to show when the user hovers over one of the links?

After much trial and error, here is the summary of how to find this information:

  1. In the AOT looking at the ProjTable form, open the Parts node to see the different Fact boxes that are displayed. Then look at the properties of the ProjItemTaskTransactions part.
  2. That part leads you to the Menu Item ProjItemTaskTransactions which is pointed at the Cue Group ProjItemTaskTransactions
  3. In the AOT, go to the root node, then Parts - Cue Groups and find and expand the ProjItemTaskTransactions cue group. The item within the group that we are concerned with is the ProjPuchOrder cue.
  4. Move back to the Parts node and open the Cues list and find ProjPurchOrder. On the properties for this item, there are two items of interest - the MenuItemName (PurchTableListPageProject) points to the menu item that gets executed if you click on the hyperlink. The PreviewPartReference is the menu item that executes when you hover over the hyperlink and in our case is pointing us to the ProjPurchOrderCuePreview menu item.
  5. Looking at the display menu item ProjPurchOrderCuePreview, we can see that it points to an InfoPart ProjPurchOrderCuePreview. If we were to go to the AOT - Parts - Info Parts and looked at that info part, we could see the Layout section that determines which 6 fields show in the preview window, and it also looks like there is a query which should be used by the Info Part listed as PurchTableListPageProjectPreview.
  6. However, go back to the Menu Item for ProjPurchOrderCuePreview and notice that there is also a query property for the menu item. Also note that the query is different here and is set to PurchTableListPageProject. In our case the query attached to the menu item is overriding the query attached to the cue Info Part and is the direct cause of the error.
  7. Now there are some issues where you may or may not be able to change the query on the Menu Item (which is a separate issue). If you close everything down, and then launch AX again, open a developer workspace and immediately go to the Menu Item ProjPurchOrderCuePreview and look at the properties, you should be able to change the query to be PurchTableListPageProjectPreview. However, once you move off that field and try and come back the field is disabled. An alternate method of changing this is to export the menu item, edit the file in notepad and import it back in.

Once we changed the property of the query on the menu item, the preview window appeared normally while hovering over the field.