Applies To:
  • CitectSCADA 3.xx, 4.xx, 5.xx

Summary:
DspInfo with type 1 can return the wrong expression text or variable tag name respectively if more than one variable tag has the same address. For example, if a multistate fill, used with a graphic object, is setup as follows:

Condition       Tag Name

Condition A:    Test 1
Condition B:    Test 2
Condition C:    Test 3

and the tags resolve as follows:

Tag Name        Tag Address
Test1               D1
Test2               D1
Test3               D1

Then when DspInfo is used with that Animation number and type 1 you would expect to see:

DspInfo(hAn, 1, 0) is Test1
DspInfo(hAn, 1, 1) is Test2
DspInfo(hAn, 1, 2) is Test3

but instead see

DspInfo(hAn, 1, 0) is Test1
DspInfo(hAn, 1, 1) is Test1
DspInfo(hAn, 1, 1) is Test1

Why is this ?

Solution
This is not really a problem because the result value of any expression displayed will always be correct. In the above example, DspInfo found Test1 three times because Test1, Test2 and Test3 reference the same memory address for data storage. To save confusion, it would be better to use the same tag name where the tag references the same address, eg. in the previous example, use the following for the multistate settings:

Condition A: Test 1
Condition B: Test 1
Condition C: Test 1

 

Solution:
This is not really a problem because the result value of any expression displayed will always be correct. In the above example, DspInfo found Test1 three times because Test1, Test2 and Test3 reference the same memory address for data storage. To save confusion, it would be better to use the same tag name where the tag references the same address, eg. in the previous example, use the following for the multistate settings:

Condition A: Test 1
Condition B: Test 1
Condition C: Test 1

 

Keywords:
 

Attachments