The JSON Field Data Plugin is a plugin for AQTS 2018.4-or-newer which reads JSON files and created field visit activities from its contents.
Download the latest version of the JSON Field Data plugin from the releases page.
The JSON content supported by this plugin is the AppendedResults document DTO.
This is the same JSON format produced by the PluginTester.exe /Json=outputPath option.
The JSON field data plugin is tightly coupled to the specific framework version used to build it.
When you install the JSON plugin on your AQTS app server, it is recommended that you use the most recent version of the JSON plugin that matches your AQTS server version.
AQTS Version | Latest compatible plugin Version |
---|---|
AQTS 2020.3+ | v20.3.9 |
AQTS 2020.2 | v20.2.5 |
AQTS 2020.1 AQTS 2019.4 Update 1 |
v19.4.14 |
AQTS 2019.4 | v19.4.0 |
AQTS 2019.3 | v19.3.0 |
AQTS 2019.2 | v19.2.2 |
AQTS 2019.1 | v19.1.0 |
AQTS 2018.4 | v18.4.21 |
The outer JSON document contains 3 properties:
Property | Description |
---|---|
FrameworkAssemblyQualifiedName | The .NET version info of the framework used to create the JSON document. This value will be read to enable any version-specific parsing, if a breaking change is introduced into the framework. If omitted, the current framework version will be assumed. |
PluginAssemblyQualifiedTypeName | The .NET version of the plugin which originally parsed the file. The value is never read by the JSON plugin. |
AppendedVisits | A list of FieldVisitInfo objects to append into the AQTS server. |
{
"FrameworkAssemblyQualifiedName": "FieldDataPluginFramework.IFieldDataPlugin, FieldDataPluginFramework, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null",
"PluginAssemblyQualifiedTypeName": "FlowTracker2Plugin.Plugin, FlowTracker2Plugin, Version=17.4.44.0, Culture=neutral, PublicKeyToken=null",
"AppendedVisits": [
... visit 1 ...,
... visit N ...
]
}
This readme won't document all the properties of every object.
Many DTO classes in the FieldDataPluginFramework.DataModel
namespace have simple getter and setter methods, and those won't be documented here.
But some of the JSON fields written to the document are ignored by the JSON plugin, so those exceptions will be documented here.
All JSON timestamps are an ISO 8601 timestamp, with 7 fractional seconds digits (100 nanosecond resolution), with a UTC offset.
yyyy-mm-ddTHH:MM:SS.FFFFFFF+HH:MM
yyyy-mm-ddTHH:MM:SS.FFFFFFF-HH:MM
- Note the
T
separating the date and time components. - All fields are padded leading zeros as needed, and all fields are mandatory, so all timestamps are exactly 33 characters in length.
- LocationId
- FieldVisitId
- StartDate (using the FieldVisitInfo.FieldVisitDetails.FieldVisitPeriod.Start value instead)
- EndDate (using the FieldVisitInfo.FieldVisitDetails.FieldVisitPeriod.End value instead)
- Party (using the FieldVisitInfo.FieldVisitDetails.Party value instead)
- FieldVisitIdentifier
Only the LocationInfo.LocationIdentifier
string property is read by the JSON plugin.
The other properties are all ignored, as they are replaced with the true AQTS location properties during import:
- LocationId
- LocationName
- UniqueId
- UtcOffset
- StartDate (using the FieldVisitDetails.FieldVisitPeriod.Start value instead)
- EndDate (using the FieldVisitDetails.FieldVisitPeriod.End value instead)
- MeasurementStartTime (using the DischargeActivity.MeasurementPeriod.Start value instead)
- MeasurementEndTime (using the DischargeActivity.MeasurementPeriod.End value instead)
- MeasurementStartTime (using the ChannelMeasurementBase.MeasurementPeriod.Start value instead)
- MeasurementEndTime (using the ChannelMeasurementBase.MeasurementPeriod.End value instead)