As a business management application, Business Central manages and processes a considerable amount of data, all of which is stored in tables. From a technical perspective, all tables are the same because they all contain fields, keys, and triggers. From a functional perspective, different types of tables exist to serve different purposes.
Understanding the different table types in Business Central helps you to efficiently customize the existing functionality and design new application areas.
The following list describes the most common table types and their characteristics:
Master table - Contains information about the most important entities of a functional area. The primary focus of a functional area would be customers for receivables, vendors for payables, and items for inventory.
Supplemental table - Likely, you’ll want to enrich the master data with supplemental data. In supplemental tables, you can store data that is related to countries, such as country code and description. These extra tables are not as important as the master tables, but they provide additional information about the master data records. Examples of supplemental tables are the Currency and Language tables.
Setup table - When you’re creating a solution, you’ll likely need some configuration for the solution. You can set up the configuration and organize data in a setup table. Examples of setup tables include the G/L Setup and Sales & Receivables Setup tables.
Register table - Functions as a table of contents for its corresponding ledger table(s). It registers historical, transactional kinds of information. Examples of register tables are the G/L Register and Item Register tables.
Subsidiary table - Contains a combination of information from master and/or supplemental tables, like item/vendor information. Examples of subsidiary tables are the Item Vendor and FA Depreciation Book tables.
Ledger table - In ledger tables, you can find the transactional information of a functional domain. Examples of ledger tables are the Cust. Ledger Entry and Item Ledger Entry tables.
Journal table - All transactions are booked through journals, so it’s the primary transactional entry. Some examples of journal tables are the Purchase Journal and Item Journal tables.
Document table - When you enter transactions, you’ll need documents such as a sales quote and a sales order. Document tables are secondary transactional tables. These tables are always comprised of two tables: a table with the header information and a table with the line details. For example, the Sales Header and Sales Line tables contain information about documents like sales orders and sales quotes.
Document history table - These tables are the historical version of the document tables. When you post documents from the document tables, they will go through a journal table and end up in a document history table. The Sales Invoice Header and Sales Invoice Line tables are examples of document history tables.
A register table is a table of contents for its corresponding ledger table or tables. One record exists for each posting process. The register table corresponds closer to the posting routine instead of the application area.
For example, the table that contains the list of entries that are made to the Cust. Ledger Entry table is the G/L Register table because the customer ledger entries are posted from General Journal by using the general ledger posting procedures. The register table is related to its corresponding ledger table or tables.
Register table names
Register tables are named according to the posting function followed by the word register. Therefore, the register table that is updated by the general ledger posting function is named G/L Register. Users can’t change the register table.
Primary key and other standard fields
The primary key of a register table is an integer field named No. The primary key is always automatically incremented by one by the posting routine that controls the register. Other standard fields for the register table include:
From Entry No. and To Entry No. - Integer fields that are related to the corresponding ledger table.
Creation Date - Field that specifies the date when the transaction was posted.
User ID - Field that specifies which user has posted the transaction.
Source Code - Field that indicates the source of the transaction.
Journal Batch Name - Field that indicates the journal from which the transaction was posted.
Typically, register tables don’t have description fields.
Associated pages
A list page is used to view the records in the register table. The name of the page is the plural of the name of the register table. Therefore, the page that is used to display records from the G/L Register table is named G/L Registers. The list page contains action links to other list pages that display the corresponding ledger entries.
You can assign a BOM to indicate which BOM to use during production. The system will use the assigned BOM when you create a production order or when you run planning routines to calculate demand of raw materials, for example.
When you assign a production BOM to an item, the output becomes an inventory item that you can sell to your customers, transfer to other locations, and so on.
To assign a production BOM to an item, follow these steps:
Select the Search for page icon in the upper-right corner of the page, enter Items, and then select the related link.
Select the item to which you want to assign a production BOM and then open the item card.
Expand the Replenishment FastTab.
In the Production BOM No. field, enter the production BOM that you want to assign to the item.
Close the item card.
To create by production, you can create production orders and post output. This process is explained in a later module of this learning path.
Production BOMs that haven’t been assigned to items are called phantom BOMs. You can’t post output of a phantom BOM, but you can use phantom BOMs as components in other production BOMs.