Evoke Data Sources
Data Sources are the data areas held within the UI, structured by the Entities, that are used by the App pages and Functionality Actions in the App. Data is populated, via a selection, from the repository (back end database) into a Data Source and can then be read, changed/manipulated, deleted, new records created, etc. prior to Evoke writing it back to the pyshical database when the datasource is saved.
Root Data Sources
You can add multiple Data Sources (also refered to as root datasources) for each Page Series and define these as follows:
Name - Each Data Source must have a name to identify it within Pages.
Entity Type - Each Data Source must have an Entity Type that defines the structure of the Data Source to match a specific Entity.
Collection - Data Sources can be singular (a single instance of the Entity structure or a single record) or a Collection (multiple instances of the Entity structure or a group of records)
Auto Saved - the Auto Saved option defines if a Data Source is connected to the automatic save/cancel buttons in the App. If this is ticked then when the Data Source is changed the tick (commit/save to physical database) and cross (reject/discard changes) options automatically are displayed.
Initialize - the initialize option sets the datasource to be a "blank version" or "proper instance" of the object, making it able to hold data, have data assigned to it, etc. As opposed to a "structure only" version or "Empty instance" that cannot hold or manipulate any data. An "Empty instance" is overwwritten with a "proper instance" when a selection or read is used to populate the datasource.
Data Paging - providing the ability to deliver data to desktop and mobile devices in one roundtrip or as a series of pages.
Using Data Sources
Data Sources are the means by which in memory data (in the App) is bound onto visible data (within the UI). Data Sources are the place where Repository Data is retrieved and stored for use by the App and the returned (saved) to the Repository.
Data Sources are populated by Selections
or UI widgets
that trigger Data Retrieval from the repository. Data is returned to the repository from the Data Source by the functions of the App Save/Cancel buttons or UI widgets
that trigger Data Saving.
Refined Data Sources
Refined Data Sources are an automatic mirror of the Data Source that they are linked to by setting a Data Source as a Refined Data Source's Root Data Source. There are two main purposes of Root Data Sources, 1) to provide the data populated in the Root Data Source in a different view i.e. Sorted or Filtered
and 2) to provide the App user with the option of sorting, searching and filtering
data displayed in the App. The options can be turned on, when a refined datasource is used, in the Template General settings
Global Data Sources
Global Data Sources are Data Sources that are available throughout the App not just in the Page Series that they are defined in. Global Data Sources are defined and described in the App Settings General DataSource