Wednesday, July 28, 2010

Field in AX table is visible in AOT but not in Table browser or SQL

Question: What's going on if there is a field in an AX table that can be seen in the AOT under the table and in the intellisense, but not in the table browser or SQL tables?

Answer: This is probably due to licensing. The system you are on may not have the appropriate license to use those fields.

The following is an example for you to follow along with and confirm if needed. Lets use the 'standardPalletQuantity' field on the table InventTable:

  • Navigate out to the table in the AOT. Find the field (e.g. standardPalletQuantity), and look at the properties for the ExtendedDataType/Base Enum.
  • We will then navigate to the appropriate node for that EDT/Enum (e.g. WMSStandardPalletQuantity).
  • Look to see if it has a value in the ConfigurationKey property. If it has one (e.g. WMSPallet), we will want to navigate out to that configuration key in the AOT (AOT\Data Dictionary\Configuration Keys).
  • Look to see if the key has a value in the ParentKey property. If it does, we will want to navigate to that configuration key (e.g. WMSAdvanced). This key will be the one we want to look at if it has no value in the ParentKey property. If needed, keep going until you find the top most parent key.
  • The label for the parent configuration key (ParentKey) is 'Warehouse Management II'.
  • Go to Administration -> Setup -> System -> 'License information' -> 'Modules' tab.
  • Once there, look for the label from the parent key in the 'Code description' field. If there is not a set of '*****' in the 'License code' field or the 'Status' is not 'Ok', that is the answer.

If all the license keys looked ok, I would do the exercise above one more time to make sure I didn't get off track. If still unsuccessful, open a ticket with Microsoft. You may need to re-import your license keys as something may have gone wrong in the original import.