cjrancur

Looping through outputs in ACE

Discussion created by cjrancur on Oct 2, 2009
Latest reply on Sep 3, 2013 by Gregor

I have been using the SDK within ACE to loop through multiple tags.  I set the tag names up with a consistent naming convention that I could build in a loop, like TAGXXX.PV, where XXX is an integer.  Then I used the SDK to loop through points by setting a variable to a new pipoint for each iteration.  For example, mypipoint =pisdk.pipoint("TAGXXX.PV"), where mypipoint is re-assigned for each loop iteration.

 

I wanted to do this as a substitute for setting up module database entries for each tag, because there are many tags involved in this calculation, and I don't want to use a huge chunk of my PI server licensed tagstream count on this. 

 

This solution has been working fine, except that sending outputs via SDK is not HA aware, so it does not play nice with OSIsoft's HA collectives.  In order to get the same functionality, while adding HA redundancy to the PI server, I'd like to come up with another idea.

 

Does anyone have an idea for looping through multiple outputs in an ACE program, without resorting to the SDK functions?  The ACE outputs work with HA, so I'd like to figure out a way to use them similarly to the way I used the SDK point functions.

Outcomes