I have a use case where I also am in need of a method to update a lot of data values for PI points. I am currently doing this recursively one Point at a time and it takes about 10 minutes. I would love to speed this up and make far fewer calls to the PI Server.
My use case is:
Pull hourly 48 hour weather forecast data from source and store values in PI future tags. The weather data consist of various attributes like temperature, humidity etc... 16 total. I have created an AF model to manage the Locations where the weather data is desired. Currently I have about 15 locations configured. Run an application each hour and update the PI values with the latest forecast values.
An application in C# scrapes the AF model to get the PI tags for each Element (location). The forecast data is mapped to the correct PI tag and the forecast timestamp is added to the AFValue. Each location has 16 attributes with 48 hours of data = 768 updates per Location.
With 15 location (and growing) I am making 11,520 updates per hour.
I thought I could create a list like this :
IEnumerable <PIPoint> pitag_oEnum = new List<PIPoint>()
and then send the list all at one time but It look like I go through the same recursion to build the PIPoint list.
Message was edited by: Rick Davin. Removed first sentence from another thread so that this thread stands on its own.