A full text index consists of string type columns. It contains location information about each significant word in a string field of a table. A full text search uses this index to make faster search on long string type fields.

Before creating a full text index on a table, it must have TableGroup property set to Main or Group. As you probably know, only one full text index per table is allowed. However, full text index can have any number of string type fields. String type in Dynamics AX 2012 can have limited length or can be of Memo type (unlimited length). This is determined by StringSize property either on extended data type or on table's field. Full text index supports both string field types.

Unfortunately, full text index cannot be used in X++ select statements. However, search on full text index can be accomplished with Query framework. The following example shows how to use full text index on the limited length string field.

If you would like to use a full text index on a Memo string field then the previous code example would not work. It would throw the error "Invalid range type". To filter on this kind of field, you should use the following code example instead.

I hope it will help you to deal with the challenges of the new Microsoft Dynamics AX 2012.

Author of the post: our former AX Upgrade Team Manager Evaldas Landauskas.