Let's start with basic definitions of the Business Central object types:
- Table extension: Table extensions allow for the creation of companion tables that are linked to tables defined by Microsoft in the base product or by other solutions.
- Page customization: Page customizations allow controls in existing pages to be modified and moved. As they are primarily a tool for use by end users, they are outside the scope of this book.
- Page extension: Page extensions allow controls in existing pages to be added or hidden.
- Table: Tables serve both to define the data structure and to contain the data records.
- Page: Pages are the way data is formatted and displayed appropriately for each of the client types and user roles.
- Report: Reports are provided for the display of data to the user in hard copy format, either on-screen (preview mode) or via a printing device. Report objects can also update data in processes with or without data display.
- Codeunit: Codeunits are containers for code that's been utilized by other objects. Codeunits are always structured in code segments called procedures.
- Query: Queries support extracting data from one or more tables, making calculations, and outputting them in the form of a new data structure. Queries can output data directly into charts, Excel, XML, and OData. They can be used as an indirect source for pages and reports.
- XMLport: XMLports allow for the importing and exporting of data to/from external files. The external file structure can be in XML or other file formats.
- Profile: Profiles allow the definition of Role Centers and group page customizations.
- Control add-in: Control add-in objects allow the display of HTML5 visualizations based on data from Business Central. These objects can send back events that can be used to trigger additional code.