Skip to main content
Version: 8.1

system.tag.getConfiguration

This function is used in Python Scripting.

Description​

Retrieves tags from the Gateway as Python dictionaries. These can be edited and then saved back using system.tag.configure.

note

The configurations returned by this function can only contain properties that are not using their default values. Thus, if a property on a tag has not been modified from its default value, then it will not be included in the returned list.

Should you need to read the value of a tag property, regardless of whether it's using the default value or not, use system.tag.readBlocking instead:

system.tag.readBlocking(["[default]path/to/tag.engUnit"])

Client Permission Restrictions​

This scripting function has no Client Permission restrictions.

Syntax​

system.tag.getConfiguration(basePath, recursive)

Parameters​

TypeParameterDescription
StringbasePathThe starting point where the tags will be retrieved. This can be a folder containing, and if recursive is true, then the function will retrieve all of the tags in the folder.
BooleanrecursiveIf true, the entire tag tree under the specified path will be retrieved.

Returns​

List - A List of tag dictionaries. Nested tags are placed in a list under the tags key in the dictionary.

Scope​

Gateway, Vision Client, Perspective Session

Code Examples​

Example #1 - Access a Single Property on a Single Tag
# This example will look up the name property on a Tag.

path = '[default]My_Folder/My_Tag'

config = system.tag.getConfiguration(path, False)

# While the call above was directed at a single Tag, the function
# still returns a list, so we access index 0 to examine the properties
# (hence the "[0]").
#
# Additionally, we can access the name property in a similar manner
# to accessing a key in a Python Dictionary.

print config[0]['name']
Example #2 - Get All Properties for a Single Configuration
# This example will get the configuration of a single Tag

# Update the path here with the Tag path you're trying to reach
path = '[default]Sine/Sine0'

# Get the configurations
tags = system.tag.getConfiguration(path)

for tagDict in tags:

# Iterate over the dictionary with the iteritems function
for key, value in tagDict.iteritems():

# Do something with the keys and values
print key, ' : ', value
Example #3 - Return an Entire Folder of Tag Configurations
# This example will get the configurations of Tags under a folder.

# Update the path here with the folder you want to start at
folder = '[default]Folder/Another_Folder'

# Get the configurations. We'll specify True for the second parameter to search
# recursivly
nodes = system.tag.getConfiguration(folder, True)

# Iterate over the results
for item in nodes:

# Through the results, search each dictionary
for key, value in item.iteritems():

# ...looking for a 'tags' key
if key == 'tags':
print '#######Found some tags!#######'

# iterate over the Tag configurations we found
for tagConfig in value:

# Do something with the results.
print tagConfig["name"]
Example #4 - Get UDT Information
# This example gets information from a UDT called "tagNumber" and prints it out to the console.

# Declare a variable and get the UDT path for the basePath parameter
path = "[default]_types_/tagNumber"

# Run the system function and assign the value to a variable
tagDict = system.tag.getConfiguration(path, False)

# Print the results
print tagDict