Aveva Historian I/O Server Available Tags
Aveva Historian I/O Server Available Tags
There isn't a native feature in Historian to perform user-defined calculation on "live" values and store the result back in Historian. There are ways to do this with scripting in InTouch, AppServer or Plant SCADA. Starting in Historian 2023 Advanced, there is also an ability to use expressions to perform ad hoc calculations--the results aren't stored, but can be displayed in charts and reports.
Normally with Historian, "streamed" often describes the time sequence of the data for a tag (arrives all in time ordered). "Non-streamed" covers some kind of out-of-order scenario. I think you might be using the term slightly differently, which is fine, but might be confusing for readers familiar with the other usage.
Thanks for the quick response! That is a little different than what I am asking, but maybe I can clarify. When I said streamed data I was referring to tags in System Platform that are configured to historize. For all of these tags I can read the live value from the historian using a DI Object configured for Suitelink and the aahioSvrSvc service. I attempted to insert a tag manually into the live table using SQL and then see if I could then read the value via SuiteLink, but was unsuccessful, so that is where the question stems from. I would like to know what or how tags are made available to the aaHIOSvrSvc and if that is configurable?
Got it. You can't use a SQL "INSERT" on the "Live" table, but you can do it for the "History" table. As long as you're appending newer values, this is fairly efficient (out-of-order data is much less so) if you use the "realtime" option.
However, if the calculation is being performed within an object script, it will be more straightforward to write it to a user-defined attribute on the object and set that to historize. If you need control over the timestamp, use the "SetAttributeVT()" in the script.
Got it. It sounds like what I am trying to do is not possible then. We could definitely use object scripting to achieve our goal and not need the historian at all, but this is more of a curiosity endeavor.
Establishing and managing DB connections with System Platform/OMI can be very taxing on the system so I thought it would be very powerful to use the built in Historian I/O server to read values from the Historian. If we could configure what values are exposed on the Historian I/O server we could configure event tags to perform analysis with SQL and update manual tag values and then read these values back in to System Platform/OMI over Suitelink.
I have been able to do similar by doing manual "realtime" tag updates with SQL and then using the Trend Client to display the manual tag in OMI which is close to what I am trying to do, but being able to use the Suitelink driver would provide a slightly different functionality.
I might still be missing something about your question/use case, but a "realtime" INSERT INTO History will be reported through the "aahIOSvrSvc" I/O server.
I might still be missing something about your question/use case, but a "realtime" INSERT INTO History will be reported through the "aahIOSvrSvc" I/O server.
Ah thank you so much that is all I was trying to figure out! And all the other information was very helpful too. My insert statement was incorrect. I corrected my query to be use wwVersion "Realtime" and the History table and now I can see my updates reflected over the "aahIOSvrSvc" I/O server.