[X++] Temporary tables in AX 2012
In Ax 2012 we have 3 different types of tables. One type of temporary table is a TempDB table. We call them TempDB tables because their TableType property value is TempDB. This value comes from the TableType::TempDB
enum value. The TableType property value can be set at AOT > Data Dictionary > Tables >MyTempDBTable > Properties > TableType
.
Regular
- a standard physical tableInMemory
- the type of temporary table which existed in the previous versions of Dynamics Ax. Such tables are held in memory and written to a local disk file once they grow beyond a certain pointTempDB
- a new option in Ax 2012. They are "physical" temporary tables held in the SQL Server database.
The new TempDB tables operate in a similar manner to InMemory tables but support more features of standard physical tables:
- More powerful joins with physical tables are possible, and are properly supported by the database
- Can be per-company or global
- Support for normal tts transactions
To create a new instance link (populating data/copying reference) from one table instance variable to the other with Temporary type tables:
- For
InMemory
tables, by using the setTmpData() method - For
TempDB
tables, the linkPhysicalTableInstance() method
replaces the setTmpData() call.
For more details on TempDB capabilities, Limitations, How to use, Its lifetime please check here - http://msdn.microsoft.com/en-us/library/gg845661.aspx