Dynamics NAV Development for Non-Developers: Part 2 – Data Structure Basics
For some who deal with Dynamics NAV development, tables, fields, data and relationships all make perfectly good sense. For others, these data structure concepts are a bit more elusive. If you believe you may be in the latter group, you may want to scan through this entry before jumping further into the topic.
In Dynamics NAV, all data resides in records that live in tables. Much like in Microsoft Excel, each value in a record (row) is stored in its own field (column). In NAV, all tables reside in a single database. In Excel, those tables might reside in a single workbook.
Multiple companies in a single NAV database can clutter this definition a bit, but consider each company as sharing the same table definition (fields and rules), but with a segregated set of data that is housed separately from other companies.
As an example of this data structure, consider the Item List page in Dynamics NAV. On it, you will see many items, each line reflecting a different record in the table. Like Excel, the columns represent fields on the record (within the table).
Opening a specific Item Card presents you with all (most) information about a specific item record within the “Item” table. Each cell, or field, in the page, reflects a different field in the underlying “Item” table.
In a relational database like Dynamics NAV, each record must also have a unique value (or a combination of values), called the primary key. In the case of items, that unique value is stored in the “No.” field. No two item records can share the same “No.”, even though a particular “description” might be common to more than one item.
Pages in NAV are generally straight-forward in that they typically access a single table. There are certainly exceptions - document pages with a header and lines is the most obvious. Reports, on the other hand, frequently access multiple tables, related by a single common field or filter. Reports may also manipulate data before putting it to paper or screen. As such, reports present a slightly more difficult challenge when trying to isolate the location of the information they represent.
Whether you are working in the table directly, creating or updating a page, or modifying reports, it will be very helpful to understand the basics of the table structures.
More on Data Structure in NAV
If you want to dig a little deeper, you might start with some online tools and tutorials. The MSDN introduction to tables, written for Microsoft Access, is as good a starting point as any.
Read more for further exploration into whether developing in NAV as a non-developer is a good idea or not.