Skip to main content

CAD Connector - NexGen

Reads closed NexGen incidents, notes and responders from a SQL Server database through four govworx stored procedures.

Written by Kevin Biegert

Capabilities

Capabilities

Supported

Connector Capabilities

Read

Yes

Backfill

Yes

Bidirectional Capabilities

Incident Create

No

Incident Update

No

Narrative Update

No

Customers of this CAD may be able to use bidirectional capabilities through IntelliComm. See Bidirectional CAD Integrations.

Overview

The Data Agent reads NexGen incident data from a SQL Server database. It runs four stored procedures in the govworx schema: govworx.Incidents, govworx.Notes, govworx.Responders, and govworx.Responders_Status_Changes. Each procedure takes one time value, @last_refresh.

On the first run, the Data Agent looks back the number of hours in the initial lookback setting. Later runs continue from the last position saved. The Data Agent uploads an incident when it has a valid close time. It keeps open incidents on hold and checks them again until they close. A fixed date and time backfill is also available.

To do this we need a user to connect to the database. You should create a read only user.


Source Timezone

The Source procedure timestamps are UTC setting tells the Data Agent which timezone the NexGen procedures use. Turn it on (the default) when the procedures use UTC. Turn it off when they use local time.

When the setting is off, the Data Agent uses the timezone of the computer that runs it. That timezone must match the timezone of the NexGen times. For example, a site in Eastern time needs the Data Agent computer set to Eastern time.

The setting applies to the @last_refresh value the Data Agent sends to all four procedures. It also applies to every incident, note, responder and status change time that the procedures return. A time that includes an offset or a Z keeps that offset.

The Data Agent converts all times to UTC before upload. Keep the UTC Timestamps setting in GovWorx on in both modes.

Before you turn the setting off, confirm which time the procedures compare with @last_refresh. Also confirm which timezone the procedures return.

Daylight saving time: The timezone rules include daylight saving time. When clocks fall back, one hour repeats. A time in that hour without an offset reads as standard time. The Data Agent can hold an incident that closes in that hour until the time passes. That incident can upload up to one hour late. A time in the hour that clocks skip in spring is invalid.


Incident Delivery

The Data Agent uploads an incident when it has a valid close time. An empty close time means the incident is still open. The Data Agent holds the incident and checks it again on later runs. An open incident does not cause an error.

The Data Agent checks a held incident for the number of hours in the held incident retry setting. After that, it stops checking.

Notes and responders upload with their incident, even when some of their optional dates are empty. A malformed optional date becomes empty. The rest of the note or responder still uploads.

An incident with no notes or responders still uploads. If a procedure call fails, the Data Agent tries the run again later.

Each incident uploads once. The Data Agent does not add data to an uploaded incident later.

Recover missed incidents: The saved position and the backfill start and end are always UTC. A change to the timezone setting does not change the saved position. If an earlier setting used the wrong timezone, run a UTC backfill for that time range. An incident that closes after its retry window ends can also need a backfill. Backfill does not change incidents that already uploaded.


SQL Server Configuration Notes

To ensure a successful and secure connection, verify the following:

  • Firewall Access: Ensure the server hosting the GovWorx Data Agent can reach the SQL Server over the appropriate network and port (typically TCP 1433).

  • Minimum Permissions: The provided database user must have read-only access to relevant tables, views, or stored procedures. Write access is not required or recommended.

  • Instance Visibility: If using a named instance, confirm SQL Server Browser service is running, or explicitly provide the port number.


Troubleshooting Tips

  • Login Failed? Verify the SQL user is enabled and not locked out.

  • Timeout Errors? Check network routes and firewall rules.

  • Invalid Database? Ensure the database field in the config matches the actual schema name.

Network Requirements: The server running the Data Agent should be able to connect to the CAD Reporting server over port 1433. This can be tested using PowerShell.

PowerShell Command:

Test-NetConnection -ComputerName {CAD Reporting Server name or IP} -Port 1433

Standard Data Fields

These are the standard data fields the Data Agent reads from NexGen. The tables below show each GovWorx field and the column the NexGen procedure returns for it. Incident fields come from govworx.Incidents, notes from govworx.Notes, and responders from govworx.Responders and govworx.Responders_Status_Changes.

Note: Additional fields are considered enhancement requests.

Incident fields

GovWorx field

NexGen source

Notes

Incident ID

SysId

CAD record key.

Incident Number

Number

Uses IncidentNumber when Number is empty.

Case Number

CaseNumber

Uses CaseId when CaseNumber is empty.

Incident Type

IncidentType

Uses IncidentTypeActual when IncidentType is empty.

Initial Incident Type

InitialIncidentType

Uses IncidentTypeInitial when InitialIncidentType is empty.

Initial Location

InitialLocation

Caller Number

CallerNumber

Caller Name

CallerName

Agency

Agency

Agency Type

AgencyType

Incident Date

IncidentDate

Disposition

Disposition

Priority

Priority

Location

LocationName, StreetNumber, StreetName, Apartment, Building, Floor, City, Municipality, State, Zip, Subdivision, CrossStreet1, CrossStreet2, MapPage, County

The Data Agent sends each part. GovWorx builds the Location text from the location format set for your organization.

Latitude

Latitude

Longitude

Longitude

Call Position

CallPosition

Call Taker ID

CallTakerId

Call Taker Name

CallTakerName

Call Source

CallSource

Call Received Time

CallReceivedTime

The earliest CAD note timestamp setting replaces this with the earliest note time.

Call Pickup Time

CallPickupTime

Call Hangup Time

CallHangupTime

Closed At

ClosedAt

The Data Agent uploads an incident only after it has a valid close time. An open incident stays on hold until it closes.

Dispatch Queue At

DispatchQueueAt

Radio Channel

RadioChannel

Response Area

ResponseArea

Additional Context

AdditionalContext

Notes

GovWorx field

NexGen source

Notes

Note ID

NoteId

Note Text

Note

Note By

NoteBy

Uses NoteByLastChanged, then NoteByCreated, when NoteBy is empty.

Note Time

NoteAt

Uses NoteAtChanged, then NoteAtCreated, when NoteAt is empty.

Responders and units

GovWorx field

NexGen source

Notes

Unit Name

UnitName

A row needs UnitName or PersonnelId.

Personnel ID

PersonnelId

Dispatched By

DispatchedBy

With a Dispatched status change, LastChangedBy fills this when the status change is the earliest.

Dispatched At

DispatchedAt

The earliest of the responder row and the Dispatch status change.

Enroute At

EnrouteAt

The earliest of the responder row and the Enroute status change.

Arrived At

ArrivedAt

The earliest of the responder row and the Arrive or On Scene status change.

Cleared At

ClearedAt

The earliest of the responder row and the Clear status change.

Data Agent Settings

To prepare for this connection, we need the following details. These are settings in the GovWorx Data Agent configuration for this connector. A toggle is an on/off switch in that configuration.

Setting

Type

Explanation

Host*

Text

Host of the database

Use Integrated Security**

Toggle

Toggle will enable the use of a domain service account that is configured to run the agent service as authentication to SQL server

Username**

Text

Database user

Password**

Password

Database password

Database*

Text

Database that holds the govworx stored procedures

Initial lookback window in hours

Number

Hours back to look on the first run. Default: 2. After the first run, the saved position takes precedence.

Maximum held incident retry window in hours

Number

How long the Data Agent keeps checking an open incident for its close time. Default: 48. Maximum: 168.

Source procedure timestamps are UTC

Toggle

Toggle on means the procedures return UTC times. Toggle off means they return the local time of the computer that runs the Data Agent. That computer's timezone must match the NexGen times. Keep the UTC Timestamps setting in GovWorx on in both modes. Default: on.

SQL command timeout in seconds

Number

Leave blank for the default of 30 seconds

Enable a fixed UTC date/time backfill

Toggle

Toggle will query a fixed UTC date and time range instead of rolling polling, for backfilling historical data. Turn it off to return to rolling polling.

Backfill start (UTC)

Text

Beginning time of the backfill (yyyy-MM-dd HH:mm, UTC). Shown when the backfill toggle is on.

Backfill end (UTC)

Text

End time of the backfill (yyyy-MM-dd HH:mm, UTC). Shown when the backfill toggle is on.

Use earliest CAD note timestamp for Received At

Toggle

Toggle will use the earliest CAD note time as Call Received Time. Use it when the first note marks the start of the call better than the CAD pickup time. Call Pickup Time does not change. When no note has a time, Call Received Time stays as read from CAD. Default: off. This setting is on every CAD connector.

Note: *: Required. **: Either Integrated Security or (Username and Password) is required.

Did this answer your question?