We will be experiencing the simplest example of creating a simple data entry form. And you will know how easy is to work on AX. I will let you guys know how to create table, what properties need to be set, what methods need to be created, how to define indexes, etc. After creating the table, I will create a simple form with the datasource of the table that we will create. So, lets start by creating a table having data of “Students”. To create a table open the AOT in the development environment of DAX by clicking the AOT button or by short cut key Ctl+D.
Expand the “Data Dictionary” node of the AOT, you will find the “Tables” node. Right click Tables node and click “New table”.
Now, name the table as “Student”. To add fields to the table, expand the “Student” table, right click and add fields. I am adding these fields.
The properties of fields that must be defined are, “ExtendedDataType” (for FirstName I am defining “Name” as EDT), “Label” & “HelpText” (if different from EDT selected). And The optional properties that’s depends upon requirement are “AllowEdit”, “AllowEditOnCreate”, “Visible” etc. I think the name of the property explains its use, so I am not going into details of defining the use of the property.
In AX, every table has field RecId which is the Surrogate Key which is being used as a Primary key of the table. If you see the property of the table you will find the Primary Key property and this property is set as “SurrogateKey”. You can define alternate key by creating an Index. To do this, right click the Index node of the “Student” table and add the index. Name the index and set the “AllowDuplicate” property to “No”. Right click this index and add field(s) that you want to make as alternate key. In my case I am adding only the “RegNo” on the index. You can define more indexes as well.
Other properties that need to be set of the tables are “Label”, “TitleField1”, “TitleField2”, “ConfigurationKey”, “TableGroup”. If you want to know the detail of these properties, ask me question, I will answer it.
There is also a “method” node on the table, you can define methods at table level as well. The standard methods that must be there in every tables are “find”, “exists”, “checkExists”. You can find the example of these methods in any of the table present in the DAX. There are also override-able methods of tables, like “validateWrite”, “validateField”, “insert”, “update” and so on. Right click the method node and see override method>.
So, you have created a simple table, now you can use this table as a datasource of a form. To create a form, go to AOT>Forms node and right click to add a new form. Name the new form as “Student”. Expand the form you will find these nodes.
To add the datasource you can do by dragging the table to the “Data sources “node of the form or by right click and add the table. I am dragging “Student” table on the datasource of the form. Now, the datasource has been added, its time to design the form. Expand the Designs node, and right click the design to add controls, you will have following list of controls.
In AX 6.0 we have a control “Action pane”, you can use the Action pane as an “Action pane strip” by setting the style property of “Action pane” as “strip”. On that you can add buttons and its looks like the following,
The controls I am adding in our case are, Action pane strip with command button “New” and “Delete Record”, Two tab pages “Overview” which contains grid and “General” which contains fields.
On the grid you can drag fields from datasource node of the form. Same for other controls, you can drag fields from datasource to any group control or tab page.
After all this you can open the form, and you can add or remove records. The form will look like this.
Thanks guys for reading the post. Any suggestion or question will be highly appreciated.