Using Repository with other Synergy/DE components
Using Repository as the center of your software development environment has the following benefits:
- Increased productivity. Developers know where to find the data definitions, which can be accessed from your Synergy DBL source code.
- No duplication of information. Data is defined only once, and can be shared by all components of your application. Data is easier to maintain without potential loss of integrity.
- Easy maintenance. Modifications to one definition can update all the elements of your application executable.
1. Repository provides a centralized location for data definitions.
Synergy DBL
You can use the REPOSITORY qualifier with the .INCLUDE compiler directive to instruct the compiler to include structures from your repository. You can either generate a definition file that contains structure definitions and .INCLUDE that file, or you can include directly from the repository, in which case the Synergy compiler creates structures that contain elements from the repository and includes them in your program.
When you are working in Professional Series Workbench, the language-sensitive visual editor enables you to select fields from repository structures that have been .INCLUDEd in your routine.
When you work in Synergy DBL Integration for Visual Studio, you can create a Repository project, which can be referenced from your Synergy .NET or traditional Synergy project.
UI Toolkit
Repository is fully integrated with UI Toolkit, enabling you to define all input field qualifiers in your repository. As a result, not only are data definitions consistent from one application to another, but the user interface is consistent as well. In addition, you don’t need to duplicate information from your repository in a Toolkit window script.
The fields you define in Repository can also be read into Composer as predefined input fields.
ReportWriter
Repository supplies information to ReportWriter for creating reports. When defining fields for use with ReportWriter, you can also define the way the field will be used and displayed in a report, the keys that determine the relationships between files, how those keys will be linked with keys from other structures, and which files use which structures. See ReportWriter User’s Guide for more information.
xfODBC
xfODBC uses repository definitions to generate system catalogs, which provide the information needed by the xfODBC driver to provide third-party ODBC access to Synergy data files. Repository includes a number of xfODBC-specific settings that enable you to control what is stored to the system catalog. For example, you can exclude or provide an alternate name for a field. See Setting up a repository for more information.
xfNetLink and xfServerPlus
xfNetLink Java and xfNetLink .NET clients can pass repository structures defined as parameters, including structures with embedded structures (that is, groups or struct data types) or embedded arrays, as well as arrays of structures. In addition, you can pass enumerations defined in the repository as parameters or return values, as well as include them as fields in structures passed as parameters. See Passing structures as parameters and Passing enumerations for more information.
Your application
Any information stored in Repository can be used by your application and accessed through the Repository subroutine library. (See Subroutine Library.)