New in the Community? Get started here

Schneider Electric Exchange Community

Discuss and solve problems in energy management and automation. Join conversations and share insights on products and solutions. Co-innovate and collaborate with a global network of peers.

Register Now
Geo SCADA Expert Forum
Make the most of your remote operations with end-to-end solutions with Process Automation’s SCADA and Telemetry Solutions. With the challenges that remote sites present, reliable communications for remote operation, monitoring & management are vital in enhancing productivity and ensuring profitability.
Showing results for 
Show  only  | Search instead for 
Did you mean: 

DataType Enumerations

Where can one find the enumerations for the DataType OPC property?  I feel like this used to be on the resource center or in the Schema, but it's nowhere to be found anymore.  I ran a query to get what I needed but was curious where else we can look to find all enumerated values. 


Re: DataType Enumerations

Interestingly enough it is in the resource centre, just the draft content (since 2009!) so not public 🙂


Copy and paste as below, may well be outdated though (especially given Proteus, BMS and TMX are no longer core drivers):


The DataType property, found in the CDBPoint table, details the automation VARTYPE of the point's value.

DataType Value VARTYPE Name Point Type(s)
3VT_I4Integer (SNMP), Meter Period (BMS)
4VT_R4Analogue, Counter, Minimum, Maximum, Mean, Rate of Change, etc.
5VT_R8Analogue, Counter
17VT_UI1Digital, Demand Buffer (Proteus)
19VT_UI4Cardinal (SNMP), Runtime (Proteus/BMS/TMX)

The property is read-only, so you cannot change the point type by changing it.

A common misconception is that this allows queries, logic and other parts of ClearSCADAto determine a point type easily rather than using TypeName or TypeDesc with a list of possible classes of each type, however this will rarely work as several types of point share each data type.

Re: DataType Enumerations

Awesome, thank you!   This should make for some more efficient processes, rather than comparing string values of TypeNames.


I could've sworn these were previously enumerated somewhere.  Either way -- thanks again!