Configure a plugin for data export
- Last UpdatedApr 08, 2026
- 2 minute read
Each High Performance Data Export Framework (HPDEF) plugin is configured using a JSON configuration file located in either the default install root (%DNAInstallRoot%) or the custom data root (%DNADataRoot%). The "Plugins" section of the configuration file contains information about which plugins are enabled, the tables associated with the enabled plugins, and the assemblies that provide the handler logic for each table. After a new plugin assembly has been compiled, it must be referenced in this configuration file before it can be used to export data to a target.
To configure the plugin for data export
Follow the procedure below to configure the export framework to use a new custom data export plugin.
- In the %DNADataRoot%\RealTime\config\Settings directory, either create or open the RealTime_DataExport.json file.
- In the "Plugins" section of the file, add a nested entry for the plugin.
The JSON file should take the following format:
{ "RealTime": { "DataExport": { "Plugins": { A. "ExamplePlugin": { B. "Enabled": true, C. "InitializerAssembly": "OASySDNA.RealTime.DataExport.ExamplePlugin", D. "InitializerClass":"OASySDNA.RealTime.DataExport.ExamplePlugin.Initializer", E. "DefaultAssembly": "OASySDNA.RealTime.DataExport.ExamplePlugin", F. "DefaultClass": "OASySDNA.RealTime.DataExport.ExamplePlugin.DefaultHandler", G. "Tables": { H. "analog": { I. "Enabled": true, J. "Assembly": "OASySDNA.RealTime.DataExport.ExamplePlugin", K. "Class": "OASySDNA.RealTime.DataExport.ExamplePlugin.AnalogHandler" }, "status": { "Enabled": true }, "multistate": { "Enabled": true } } } } } }Where:
- A is the name of the plugin.
- B indicates whether or not the plugin is enabled.
- C is the assembly name that contains a class with the "Initialize()" method that the system calls once for the plugin to perform an initialization required before the system can process messages.
- D is the fully qualified name of the class within the assembly that contains the "Initialize()" method that the system calls once for the plugin to perform an initialization required before the system can process messages.
- E is the name of the assembly that contains a class with the "ExportRecord()" method for the plugin that the system uses for an individual table if an override assembly is not specified.
- F is the fully qualified name of the class within the assembly that contains the "ExportRecord()" method for the plugin that the system uses for an individual table if an override assembly name is not specified.
- G is the Tables sub-section used to specify which table changes will cause the plugin to execute.
- H is the name of the table that will support the export of record changes.
- I indicates whether the plugin is enabled or disabled for the table.
- J is the name of the override assembly that contains a class with the "ExportRecord()" method for the plugin that the system uses instead of the default handler.
- K is the fully qualified name of the class within the override assembly that contains the "ExportRecord()" method for the plugin that the system uses instead of the default handler.
3. Copy the plugin DLL file to the %DNADataRoot%\RealTime\bin directory.
4. Restart the RealTime service.