Cicode Programming Reference > Cicode Function Categories > Dynamic Data Exchange Functions

Dynamic Data Exchange Functions

The Cicode DDE (Dynamic Data Exchange) functions permit you to exchange data between CitectSCADA and other Windows applications running on the same computer in real time, continuously, and with no operator intervention. For example, you can send your run-time data to a DDE compliant spreadsheet or word processing application, either by posting the data to memory for DDE access by other applications, or by writing the data directly into another application. Conversely, you could read data from a DDE compliant application like a spreadsheet or document directly into a CitectSCADA variable. 

You could also run processes in any DDE compliant Windows application running on the same computer by using the Cicode DDEExec() function to send commands to that application. Similarly, you can call any Cicode function (built-in or user-written) in CitectSCADA from any Windows application (running on the same computer), that supports a DDE Execute command.

The DDERead(), DDEPost(), DDEWrite(), and DDEExec() functions each perform a single exchange of data. Each of these functions starts a DDE conversation with the external application, sends or receives the data (or command), and ends the conversation - effectively treated as one operation.

The DDE handle (DDEh...) functions return a handle to the conversation - a DDE channel number. You should use the DDE handle functions for Network DDE, in particular for Access DDE.

Note:CitectSCADA runtime automatically behaves as a DDE Server and makes its variable tag database available for DDE Client applications to link with.