The application module provides baseline functionality for all other classes.
Features include:
AbstractObject: the base class for all data-centric QBO modules
GenericObject: the base class for all generic classes that use Object/ID to indicate parent records
SqlPattern: creates SQL statements dynamically using patterns perfected over the past decade
HttpHander: provides late-binding wiring between RESTful calls and QBO modules
BusinessRule: configure business rules via the front-end
Matrix: use weighted logic (inference engine) to choose a path
Interfaces:
IPerson: defines a contract for implement security
IQboObject: defines a WFC ServiceContract for all AbstractObject-derived classes
IQueue: defines a contract for implementing queuing
IService: defines a contract for invoking custom DLLs, typically to interface with third party systems
IMethodListener: defines a contract for calling plugins wired in the application tier
ITemplate: defines a contract for template-driven classes
IValidator: defined a contract for a validation engine
IXsltExtension: defines a contract for XSLT extension objects
Configuration classes (see qbo.Application.Configuration namespace) include:
BaseConfiguration: a base class that other QBO3 configuration classes derive from; handles near-real-time updates of configuration data in a server farm
ObjectConfiguration: handles the configuration of all AbstractObject-derived classes
DbStatement: defines a data operation (equivalent of a stored procedure)
DbFilter: defines reusable data filters
DbDimension: defines custom dimensions
Script: defines a javascript component to be used in the application
StyleSheet: defines a stylesheet component to be used in the application
XsltExtension: defines Xslt Extension objects to be used in the application
Data modules include:
BusinessRule: table containing power-user-defined business rules that are enforced in the application tier
Calendar: table containing power-user-defined calendars - working days, holidays, etc.
Holiday: table containing holidays that apply to a specific calendar
ConfigurationEntry: table containing power-user-defined extensions to standard configuration (listed in the section above)
Matrix: table containing power-user-defined rules that are enforced through power-user configuration, such a workflows and processes
MatrixDimension: an input to a Matrix
MatrixMeasure: an output of a Matrix
MatrixFact: a 'cell' in a Matrix
ObjectLink: table used to represent a connection between two object
ObjectQueue: table containing future and failed queued messages
ObjectStatus: table containing allowed Status values for a given table
ObjectType: table containing allowed Type values for a given table
ObjectSubscription: table used to track external foreign keys for a given row
Schedule: table containing power-user-defined schedules (E.g. 'Daily at 3:15 am')
SearchIndex: table containing power-used-defined attributes to another object