Module-Level Data Definitions Overview
The module level of an Agentry application project includes definitions for both data and user interface encapsulation. The data-focused definition types include business entity encapsulation, data capture, and data synchronization between the Agentry Client and Agentry Server.
Most of the data definitions at the module level have child definitions that encapsulate some aspect of the parent’s behavior that is related to the data for which it was defined. This can include the values for the parent definition, or the methodology for data synchronization.
The figure below represents the structure of the module-level data definitions within the application project. This includes the definitions within the module that are provided to encapsulate data storage or synchronization, as well as the child definitions to each. For discussion purposes only, the user interface definitions within the module are not included in the illustration. Within an application project structure, all child definitions exist at the module level with no distinction made between them in the Agentry Editor as to whether they are data or user interface definitions.
Properties often constitute child definitions for objects, transactions, and fetches. A property is a variable data value that is stored within the parent definition. Although the purpose for these values differs depending on the parent definition, the property definition type is the same among all three.
Many of the child definitions to the module-level data definitions are referred to as “step usage definitions,” which means they reference a step definition within the same module. This reference provides context to the step, specifying why and when it should be executed by the Agentry Server during synchronization. Any child definition to a module-level definition that includes the term “Step” in its name is a step usage definition. You must define steps before you can use them in step usage definitions.
Each step definition is defined for a different type of processing, and for a specific system connection within the application. The step definition type must match the system connection type, and contain a component, such as a SQL statement or Java logic, that also matches the type. HTTP-XML steps include two child definitions that define the arguments that are passed to the HTTP server with the step request, and include mappings between the data that is returned from that request to the data components of the mobile application.
The data definitions are exposed to the mobile application, for display and modification, via the module-level user interface definitions. You must create data definitions before you create user interface definitions, as the UI definitions need to reference the data definitions they show.