From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Components

cancel
Showing results for 
Search instead for 
Did you mean: 

Current Value Table (CVT)

Where are you seeing this error?

 

This error just means the parser failed. This can happen for many, many reasons. For example if you are trying to scan an enum but the strings don't match, or potentially there is an issue with case sensitivity in the same situation. The appropriate way to set up a good scan string is to right click on Scan From String and select Edit Scan String. This, along with the help documentation, should help you set up the scan string for your application.

0 Kudos
Message 121 of 164
(4,642 Views)

Oh yes I have found it. The values in the "direction" field of the table was empty and not "<none>". Now it works.

0 Kudos
Message 122 of 164
(4,635 Views)

Hello,

 

after it I get another error. If I clear the table I get the error "CVT data type does not match expected data type." And without clearing it "An input tag already exists."

Can someone says me what goes wrong?

 

Thank your very much

 

Christian

 

 

 

 

Download All
0 Kudos
Message 123 of 164
(4,631 Views)

Sounds like you have two tags being instantiated with the same name, but with different types.

 

The "source" field of the error code should identify which tag is the problem.

0 Kudos
Message 124 of 164
(4,625 Views)

Yes I have checked this but I create the tags with the attached csv-file and the error appears simple with the first tag in the file. And it's only one time in the list.

The error don't appear if I clear the table before creating it. But then the other error comes "CVT data type does not match expected data type."

Also disappear the error if Idelete the ClientClose.vi

But thats not correct?

 

Christian

 

 

0 Kudos
Message 125 of 164
(4,609 Views)

Tried to post this on friday but unfortunately the forums were being maintained:

 

Ah, I didnt realize the image was a snippet. Also, in general you should be sure to post the error code and full error string. For example, "537161: Error 537161 occurred at Tag Memory.vi Possible reason(s): An input tag already exists. Tag 'GrafitOfenUnten'". This information is critical to helping you debug the code.

 

This first error is actually correct behavior. Because the CVT is an FGV, if you run a VI twice without clearing the CVT, you will get this error. You can either (a) clear the cvt or (b) ask the cvt to ignore and overwrite duplicates. This is expected behavior and will not change. If you use init in multiple locations, you can use the "clear CVT" subVI once in your code and then set all of the other VIs to not clear it.

 

The second error is not in the CVT, it is in the CCC. This is why the full code is important -- each error range is dedicated to a particular component. Taking a look, the "bound address" field has an empty string, which is why you are encountering this error. The bound address is the name of the tag on the server. So for example, if you had the server running on the same machine as the client, "name" and "bound address" would be identical. When you initialize the client it is actually asking the server to look up a set of tags, and those tags are the "bound address" strings.

0 Kudos
Message 126 of 164
(4,594 Views)

Oh nice,

that means I need on the client under bound address the name of the server followed by the tag  name on ther server?

 Where can I set or found this name?

In the example is that a name followed by slash and tag-name.

And this mean that I don't need a bound string on ther server-table?

 

Thanks,

Christian

0 Kudos
Message 127 of 164
(4,574 Views)

Sorry, didnt get a notification on this for some reason.

 

The name format is just the CVT name on the server. So lets say you  have two machines, A and B.

On A you initialize the CVT with tags 1,2,3

On B you initialize the CVT with tags X,Y,Z.

 

You want to read values X,Y,Z on B as tags 1,2,3 on A.

On A, you would initialize the CVT with 1,2,3, and initialize CCC with the IP address of B and the bound addresses X,Y,Z. Because each API instance is for a specific target (B in this case), you don't need to specify the address on every "bound address" item. Thats why I say if you have the same variable names on both A and B, then the tag name and bound address name are going to be the same.

 

An example may be found here:
<LabVIEW>\examples\CCC

Message 128 of 164
(4,558 Views)

Oh yes, it's working, thank you very much.

Now I must begin...

 

Christian

 

 

0 Kudos
Message 129 of 164
(4,544 Views)

How works the "direction" flag? It's possible to use one variable for reading AND writing? For example, I have a boolean tag for switching a valve. In normal cases I need on the client only the actual value. The state will be controlled programmatically. But in some cases I will control the valve from the outside, from a HMI. Do I need special variables for reading and writing or is it possible to read or write the same Tag in some cases?

 

Thanks,

 

Christian

 

 

0 Kudos
Message 130 of 164
(4,540 Views)