# Tips for Working with DDE

General principles that apply any time you establish a DDE link are listed below.

- Creating links from a model file back into itself is not possible. All links must go through another application.

- Both the server (data originator) and the client (data recipient) files must be open for a change in the server to be registered by the client. The update occurs at the time of the change and not when the files are opened, so make sure they are both open before making any changes.

- The number of links will be limited by the amount of RAM you have on your machine. Keep the number of links as small as possible. The fragility of DDE increases exponentially with the number of links involved. Practically speaking this means that you should not use more than 30-40 links.

- One way to get data into your model while minimizing the number of links, is to use a Queue., (provided your input data does not contain zeros). Create a link into a Queue that has no inflows or outflows, then use the QELEM Builtin to pick the data from each slat of the queue. See Chapter 7 for more details on QELEM. The Queue dialog can contain up to 2000 characters (a character is an individual digit in a number or a comma).

- Another way to get data into your model while minimizing the number of links is to use an arrayed converter. See the section on Linking Data into Arrayed Variables for details.

- When the model is the server in a Windows NT/2000/XP environment, automatic updating of links in the client application is not reliable. Under Windows NT/2000/XP, you should expect to manually update links in the client application.

- When working with DDE, the client and server files keep track of the pathway from one to the other. Long, complex pathways put you at risk for losing links and thereby failing to update the client files. In addition, long, complex pathways tend not to be portable - they tend not to work when you move your files to someone else's machine. To minimize these risks, we suggest the use of short pathways. We also suggest that you don't use spaces in filenames that make use of DDE. For example, the file that is at the end of this pathway:

C:\Documents and Settings\my name\My Documents\dynamic data exchange applications\this is my model that uses DDE and is a good file.ITM

is likely to have difficulties with DDE. On the other hand, the file that is at the end of this pathway:

C:\models\sample.itm

is likely always to work.

- To further minimize the risk of lost links and failed updates, put both the client file and the server file in the same folder. Then, neither client nor server will need to look very far to update the link.