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.
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.
Thank you !
ReplyDelete