LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Why have my input Tags stopped working?

Hello,

Here is the situation: I used a VI-based server to monitor and log 3 output (write) Tags, and about 250 input (read) Tags. The system performed as I expected but then I wanted to move the whole system into a different directory in Windows2000. After adjusting all file paths, including the databse paths in the .scf, and registering the server in its new location, I restarted the new system and the input (read) Tags no longer functioned correctly.

Opening the Tag Monitor shows that the output (write) Tags are gathering data from my application correctly. I changing one of my input Tags to input/output, and then tried writing directly to it from the Tag Monitor, but the value did not change. I have also tried the follo
wing to no avail:

-removing all databases from my computer;
-recreating the scf from scratch;
-restoring the original system that worked previously (it now no longer works!)
-loading the Tag Engine with a VI-based server from the Labview examples (the example works fine), then reregistering my VI-based server.

I believe the problem might have something to do with the BVE-refnums that the VI-based server uses to determine which input (read) Tag is which. I think that the server is no longer able to obtain these refnums (the server does not require BVE-refnums for output Tags, hence they work), but I cannot be sure since it is impossible to debug the server VI while the Tag Engine is running. Missing BVE-refnums might also explain why I was unable to write to the I/O Tag in the Tag Monitor.

Does anyone know what may be going wrong, or how I might debug the server VI? I am convinced that my code is correct, since the system worked originally. It must therefore be an scf, Tag E
ngine or database configuration problem, mustn't it?
0 Kudos
Message 1 of 3
(2,484 Views)
Er, sorry for being a nuisance - I've fixed the problem: when my application starts, a global is set to the path of the system root. Of course the Tag Engine does not recognise this global change, and was still using the default root. Hence none of my Tag settings were getting loaded from their .ini's (the output Tags worked because they are hard-coded).

Oops; one day I'll bring my brain to work with me!
Message 2 of 3
(2,484 Views)

A general suggestion: it's not a good idea to use absolute paths (as things won't be same on different machines, etc.) A good way is to make paths relative to, say, your LabVIEW folder.

This info' (LabVIEW's path) can be obtained programatically using the 'Application:Directory Path' property. Please see attached diagram.

If your paths are based on such a mechanism, they would work on any machine without ANY modifications.

Hope this helps,

Khalid

0 Kudos
Message 3 of 3
(2,484 Views)