Loading...

Microsoft Dynamics AX Interview Questions | Part-2

1.  Differentiate refresh(),reread(),research(),executequery()  

refresh() will not reread the record from the database.  It basically just refreshes the screen with whatever is stored in the form cache.

reread() will only re-read the CURRENT record from the DB so you should not use it to refresh the form data if you have added/removed records.  It's often used if you change some values in the current record in some code, and commit them to the database using .update() on the table, instead of through the form datasource.  In this case .reread() will make those changes appear on the form.

research() will rerun the existing form query against the data source, therefore updating the list with new/removed records as well as updating existing ones.  This will honour any existing filters and sorting on the form.

executeQuery() is another useful one.  It should be used if you have modified the query in your code and need to refresh the form.  It's like
research() except it takes query changes into account.

Interview Questions - Dynamics AX

2.  Define AOT

The Application Object Tree (AOT) is a tree view of all the application objects within Microsoft Dynamics AX. The AOT contains everything you need to customize the look and functionality of a Microsoft Dynamics AX application

3.  Define AOS  

The Microsoft Dynamics AX Object Server (AOS) is the second-tier application server in the Microsoft Dynamics AX three-tier architecture.

The 3-tier environment is divided as follows:

• First Tier – Intelligent Client • Second Tier – AOS • Third Tier – Database Server
In a 3-tier solution the database runs on a server as the third tier; the AOS handles the business logic in the second tier. The thin client is the first tier and handles the user interface and necessary program logic.

4.  Difference between temp table and container.

1. Data in containers are stored and retrieved sequentially, but a temporary table enables you to define indexes to speed up data retrieval.

2. Containers provide slower data access if you are working with many records. However, if you are working with only a few records, use a container.

3. Another important difference between temporary tables and containers is how they are used in method calls. When you pass a temporary table into a method call, it is passed by reference. Containers are passed by value. When a variable is passed by reference, only a pointer to the object is passed into the method. When a variable is passed by value, a new copy of the variable is passed into the method. If the computer has a limited amount of memory, it might start swapping memory to disk, slowing down application execution. When you pass a variable into a method, a temporary table may provide better performance than a container

5. What is an EDT, Base Enum, how can we use array elements of an EDT?

EDT - To reuse its properties. The properties of many fields can change at one time by changing the properties on the EDT. Relations can be assigned to an edt are known as Dynamic relations.

EDT relations are Normal and Related field fixed.

Why not field fixed – field fixed works on only between two tables 1- 1 relation. And Related field fixed works on 1- many tables.so edt uses related field fixed.

BaseEnum - which is a list of literals. Enum values are represented internally as integers. you can declare up to 251 (0 to 250) literals in a single enum type. To reference an enum in X++, use the name of the enum, followed by the name of the literal, separated by two colons . ex - NoYes::No.

6. Definition and use of Maps, how AddressMap (with methods) is used in standard AX?

Maps define X++ elements that wrap table objects at run time. With a map, you associate a map field with a field in one or more tables. This enables you to use the same field name to access fields with different names in different tables. Map methods enable to you to create or modify methods that act on the map fields.

Address map that contains an Address field. The Address map field is used to access both the Address field in the CustTable table and the ToAddress field in the CustVendTransportPointLine table

7.What is the difference between Index and Index hint?
 
Adding the "index" statement to an Axapta select, it does NOT mean that this index will be used by the database. What it DOES mean is that Axapta will send an "order by" to the database. Adding the "index hint" statement to an Axapta select, it DOES mean that this index will be used by the database (and no other one).

8.How many types of data validation methods are written on table level?

validateField(),validateWrite(),validateDelete(),aosvalidateDelete(),aosvalidateInsert(),
aosvalidateRead(),aosvalidateUpdate().

9.How many types of relations are available in Axapta, Explain each of them.

Normal Relation: enforce referential integrity such as foreign keys. For displaying lookup on the child table.

Field fixed: works as a trigger to verify that a relation is active, if an enum field in the table has a specific value then the relation is active. It works on conditional relations and works on enum type of data.

Ex- Dimension table

Related field fixed: works as a filter on the related table.it only shows records that match the specified value for an enum field on the related table.

10.When the recid is generated, what is its utility?

when the record is entered in the table the recid is generated by the kernel.it is unique for each table.

11. Difference between Primary & Cluster index.

Primary index: It works on unique indexes. The data should be unique and not null. Retrieve data from the database.

Clustered Index: It works on unique and non unique indexes.retrieve data from the AOS.

The advantages of having a cluster index are as follows: 

  • Search results are quicker when records are retrieved by the cluster index, especially if records are retrieved sequentially along the index. 
  • Other indexes that use fields that are a part of the cluster index might use less data space. 
  •  Fewer files in the database; data is clustered in the same file as the clustering index. This reduces the space used on the disk and in the cache.
The disadvantages of having a cluster index are as follows:
  •  It takes longer to update records (but only when the fields in the clustering index are changed). 
  •  More data space might be used for other indexes that use fields that are not part of the cluster index if the clustering index is wider than approximately 20 characters).
12.How many kind of lookups can be made and how.

              By using table relations
              Using EDT relations.
              Using morphx  and using X++ code(Syslookup class).

13. How many types of Delete Actions are there in Standard Ax and define the use of each

              None
              Cascade
              Restricted
              Cascade+Restricted.

14.  What is the function of super()

This method calls the system methods to execute.
It is used to instantiating the variables at the parent class. Used for code redundancy.

15.  Utility and use of find method.

All the tables should have at least one find method that selects and returns one record from the table that matches the unique index specified by the input parameters. The last input parameter in a find method should be a Boolean variable called for update or update that is defaulted to false. When it is set to true, the caller object can update the record that is returned by the find method.
virtualnuggets 9183614242436226005

Post a Comment Default Comments

emo-but-icon

Home item

Popular Posts

Random Posts

Flickr Photo