Moving a group of Components

Moving a group of components is done with scripting using system.gui.transform. For this use case, the transform could probably be triggered using the value property of the numeric label in the propertyChange event handler.

The script would look something like this untested example:

# Made for the propertyChange event handler of a grouped numeric label
if event.propertyName == 'value':

	# Get the parent template for height calculation
	liftStation = event.source.parent.parent
	
	# Use the height of the template as the maximum scaled height
	maxHeight = liftStation.height
	
	# Get the component to be moved
	pumpGroup = event.source.parent
	
	# Define the maximum expected value
	maxValue = 100
	
	# Convert the current value to a percentage of the max value
	percentMax = event.newValue / maxValue
	
	# Use the percentage to scale the value to the height,
	# ...but since the bottom of the template is zero,
	# ...and y coordinates start at zero from the top,
	# ...the value must be inverted to correctly position the group
	groupY = maxHeight - (percentMax * maxHeight)
	
	# Move the component group to the new position
	system.gui.transform(pumpGroup, newY = groupY)

There could be a caveat to performing a transform on components within a template if the size of the template was stretched or squished in some way while positioning it in the window editor. If you run into any wierdness of this nature, this post could provide a way to fix it:
How to transform a component inside of a Vision template