Using CitectSCADA > Administering Projects > Including projects

Including projects

With large systems, it might be more convenient to develop the application using a series of smaller projects, instead of one large project. For example, you could use a separate project for each section of the plant, or for each main process. This way, you can develop and test each of the smaller projects before including them in the main project.

CitectSCADA projects will not be included into the compile of any other project unless they have specifically been included into that project from within the Citect Project Editor.

Note: If a project exists remotely on the same network as the local installation and it is on a shared or network drive, it can be linked to the local Citect Explorer. This is different to including a project. Linking makes a project visible in the local Citect Explorer. Once linked, it can be selected as the current project for editing over the network.

Any linked project (visible in Citect Explorer) can be included within a local project, and is subsequently included in the compile of the local Project.

Be careful not to confuse include files with included projects:

Each CitectSCADA system is supplied with a number of include projects. These projects contains pre-defined database records.

Recommended implementation structures

There are many ways of implementing included projects. However, there are a few preferred rules for locating projects so that servers and clients function correctly on deployment. These are listed in the table below:

    Deployment
Recommendation Development Computer Server / Display Client WebClient
Good c:\user\ProjectMain d:\run\ProjectMain (<-RunPath) \temp\citect\deployname\
ProjectMain
  c:\user\ProjectInclude d:\run\ProjectInclude \temp\citect\deployname\
ProjectInclude
  c:\user\Include d:\run\Include \temp\citect\deployname\
Include
       
OK* c:\user\Dev\ProjectMain d:\runA\ProjectMain (<-RunPath) \temp\citect\deployname\
ProjectMain
  c:\user\Dev\ProjectInclude d:\runA\ProjectInclude \temp\citect\deployname\
ProjectInclude
  c:\user\Include c:\user\Include* \temp\citect\deployname\
Include
       
OK* c:\user\Dev\ProjectMain d:\run\ProjectMain (<-RunPath) \temp\citect\deployname\
ProjectMain
  c:\user\Includes\ProjectInclude c:\user\Includes\ProjectInclude* \temp\citect\deployname\
ProjectInclude
  c:\user\Includes\Include c:\user\Includes\Include* \temp\citect\deployname\
Include

* For these implementations, the client/server machine needs to already have project contents at the c:\user\Include location and the implementations won't work with the [CtEdit]RUN and [CtEdit]COPY features.