Record Action Table module example

I am new to building modules and I am trying to show some data in record action table. But I am struggling with making such a table. I would be glad if someone have an example on how to make the table. I wold like to get a table like this: [attachment=0]Selection_036.png[/attachment]

Yeah, I took me a while to gather all of the pieces from hints in samples and examination of the classes. Necessary steps:

  1. Create a class extending PersistentRecord. RecordActionTable expects your data to live in the internal database. Use SFieldFlags.SDESCRIPTIVE on the fields you wish to include in the table view. Don’t forget to create containing field.Name= and field.Desc= text for each field. The .Name will become the column headings, the .Desc will be shown under the field in the edit page.

  2. Create a class extending RecordActionTable. Override getRecordMeta() to return MyConfigRecord.META. Override getMenuPath() to return the array of string keys for your left pane menu entry. For the example below, that would be return new String[] { "database", "myMenuKey" };Override getTitleKey() and getNoRowsKey() to customize bundle lookup of the page title and empty list text.

  3. Register your new config page in the gateway hook’s setup() method like so:context.getConfigMenuModel().addConfigMenuNode(new String[] { "database" }, new LinkConfigMenuNode("myMenuKey", "myBundleKey.panels.Config.Tabname", MyRecordTable.class));

  4. Add bundle strings under “myBundleKey” (or wherever) to get rid of any missing text, shown inside ¿? pairs.

First of all thank you for your reply. But I still have some issues. I did everything just like you described but whenever I want to reach the page on the Ignition Gateway I get blank page with Internal error and return to home page written on it.
And in console I get this error:
Do you know where could be the problem?

Here is code of my project:

You are supplying ‘Agent’ as your title key for the config page. All keys for resources in bundles have at least one period, separating the bundle name/class from the rest of the key. It’s trying to find a bundle named ‘Agent’ instead of a string within named ‘Agent’. I think you should have “testTable.nav.table.title” there. It’ll probably blow up on your no rows key, too.