In Microsoft Dynamics AX, the X++ language provides more than 100 system functions that are not part of any class. The two types of functions are as follows:
- Run time – functions that are executed during run time.
- Compile time – functions that are executed during compile time.
Run time functions used for data type conversions, mathematical operations, and so on. Some common run time functions are as follows:
str2Int – creates an int value from a str value.abs – creates a positive real value from a real value that is either positive or negative.
conFind – retrieves the location of an element in a container.
Call Runtime Functions from .Net
The logic of the X++ run time functions is also implemented in the following .NET assembly:
Microsoft.Dynamics.AX.Xpp.Support.DLL
Inside the previous assembly, the X++ run time functions are implemented as static methods of the following class:Microsoft.Dynamics.AX.Xpp.PredefinedFunctions
Compile time functions are executed early in the compile of X++ code. Most of these functions retrieve metadata about items that are in the Application Object Tree (AOT). Some common compile time functions are as follows:
classNum – retrieves the ID of a class.
classStr – verifies during compile time that a class by that name exists. This is better than discovering the error later during run time.
evalBuf – evaluates the input string of X++ code, and then returns the results as a string.
literalStr – retrieves a label ID when given the string representation of a label, such as the string "@SYS12345". For example, myLabel.exists(literalStr("@SYS12345"));
Note:
1) Compile time functions are sometimes called intrinsic functions.
2) X++ compile time functions cannot be called from a .NET program.
No comments:
Post a Comment