It is important to turn Action Log Off: each SETVAL writes to Action Log file and possibly to Action Log ODBC database. Turn off Action log to make scripts faster.
# text10 is screen tag displays start time
set startime [clock seconds]
SETVAL text10=$startime
# important to turn Action Log off
SETVAL %DALOGSTATUS=0
# This reads tags from TextArryB and writes tags to TextArryA
# of 1000 elements, 70 characters each element
for {set Z 0} {$Z<$1000s} {incr Z} {
SETVAL "TextArryA($Z)=[GETVAL TextArryB($Z)]"
}
# text11 & txt12 are screen tags to display stop time and elapsed time for this script
set stoptime [clock seconds]
SETVAL text11=$stoptime
set delta [expr $stoptime - $startime]
SETVAL text12=$delta
The time to process is about 2 seconds, about ΒΌ the time as 200 tags. This is because the there are only 2 tag ids that must be found with the two text arrays and there are 200 tag ids that must be found for the 200 individual tags.