Data management is represented through the AppBase Business Object Model (BOM).
It starts with the definition of the business objects that constitute a BOM, and these are core components of any solution to be used to represent the structure of the business data entities that form the building blocks of the Solution. For example, in a typical case management system, there are cases, case managers, agencies, clients, applicants, and documents, to name a few. Once a business object is created, you can specify the relationships that exist between various business objects and set cardinality rules such as one-to-one and one-to-many type relationships. Additionally, you can also create attribute types to determine how the data fields of a business object are stored, presented to the user, and the possible values for its type. Finally, the Data Management section of AppStudio provides the ability to create saved queries that retrieve data from business objects, system tables, and database tables in the form of Views.
You will then be presented with the additional functions used to manage the data model of your application:
- Business Objects - business objects represent an application data entity. Each business object can have multiple data fields(attributes) of various data types. The system already has predefined business objects which can be used as templates to create custom business objects.
- Relationships - Are associations of business objects with other business objects.
- Attribute Types - An essential property of each attribute. Attribute type determines how data is stored, how it is presented to the user, and possible values for this type. An attribute type is assigned when creating a new business object attribute.
- Views - Saved queries that retrieve data from Business Objects, system tables, and database tables. Though a View doesn't store data. Some refer to views as "virtual tables," you can query a view like you can a table. A view can combine data from two or more tables using joins and contain a subset of information. In AppBase, SQL for a view can be developed separately and then saved into AppBase so it is accessible to other functions of the Solution (i.e., pages, rules, etc.).