Applies To:
  • CitectSCADA 5.xx
  • CitectHMI 5.xx

Tags read from the DDEDRV give random values or out of range errors. 

DDEDRV v2.1.5.0 supports blocking syntax based on both record number and Object ID (OID). Record number blocking is the old method for the driver, which has known problems when used with include projects. OID blocking is the new method in use for tag based drivers such as OPC and DDE.

A limitation of the blocking methods is that a project compiled with one method cannot be run using the other. So, a project compiled for record number blocking will not function correctly with OID blocking enabled. The compiler generates blocking information based on the contents of the DDEDRV.dbf file located in the Citect\Bin directory. If this file contains %N for the beginning of the Template fields then record number blocking is in use, while %J means OID blocking is in use.

An ini parameter has been added to control the method of blocking used by the driver. This parameter must match your DDEDRV.DBF file or you will get invalid data. So if you have %N set ODI=0 or %J set ODI=1.

    OID = 1 to use OID blocking
        0 to use record number blocking