Technical information and architecture

Civil Pro Architecture diagram

Windows Application

Civil Pro’s windows application is a Microsoft .NET application (currently 4.5.1) . Civil Pro will work on any version of windows that supports the .NET framework, but we recommend at least Windows 7 due primarily to Microsoft’s ongoing support of these platforms.

Databases

Civil Pro can work in two modes;

  • Standalone – designed for single users, or multiple non-simultaneous access
  • Server – an SQL server or SQL express database for multiple synchronous access

Once a connection is made to one of these database types, Civil Pro is identical in its database management and end user experience.

Standalone

In standalone mode, Civil Pro works analogously to a program such as Microsoft Word or Excel in that you open a file (in the case of civil pro, a .cdb file instead of xlsx or docx) on your local drive. This file can be copied, backed up etc. just like any other file. This is a suitable way of using Civil Pro if;

  • Only one person is accessing the data
  • Multiple people are accessing the data, but not at the same time
  • You have unreliable communications to a server
  • You do not need to use Civil Pro mobile

Server

In server mode, the data is stored in an SQL database. This database can be anywhere to which the client computer can make a connection;

  • On the local machine
  • On any networked PC
  • On a server

Civil Pro can operate in a terminal services environment. Please contact us to discuss if you require this.

NOTE: If you are using Civil Pro Mobile, then you must use a server based install, as the mobile site accesses this database.

Database schema creation and update

Regardless of which database type you use (SQL Server or standalone [SQLCE]), Civil Pro manages database creation and schema updates. The only administrative step is the connection to the server from the client which is performed through a straight forward wizard. Refer to the help topic on database creation for more information.

Connecting to databases from clients

Connecting the clients to database is easily managed using a GUI. Refer to the help topic on connecting to an existing civil pro database. From an administrative perspective, the only requirements relate to the SQL server:

  • Users need read/write data permissions. You can either do this with domain level user control in SQL Server, or you can create SQL users. Civil Pro can work with either
  • The SQL server port must be accessible through the firewall – both incoming and outgoing

File Storage

Civil Pro maintains links to files for a specific subset of records. If you are not using these record types, then you do not need to configure a file store. Files are stored for;

  • Related external document links (Lot Docs and Test Docs)
  • Photographs

In accordance with best practice, civil pro stores does NOT store its files in the database. The file store is a simple setting in Civil Pro. The file store:

  • Must be accessible from client computers
  • Can be UNC or mapped. If mapped, the drive lettering must be consistent across the domain.

Civil Pro Mobile

The mobile site is served through two applications running in IIS 7.5+. Both applications are usually installed on the same instance. We call these applications the Store and the App:

  • Store: A WCF Entity Framework oData data service providing all CRUD operations
  • App: A pure HTML5/JS application providing responsive layout on phone, tablet or desktop for iOS, Android and Windows.

As Civil Pro mobile is a complement to the desktop application, not a replacement, the store must have access to the SQL server used by the desktop client.

Installation of civil pro mobile is performed by Blue Sky Contracting on your hardware (or we can provide a virtual environment if you need one). For this we require;

  • SSL certificates for the two sub-domains (or a wildcard) – Let’s Encrypt provide these for free
  • Access to your IIS server – usually through a remote desktop session
  • Configuration of firewalls to allow access to the SQL server and https
  • Access to a local file store – this is usually small and is under the site directory on the IIS server.