Skip to Main Content
AVEVA™ PI System™ Feedback Portal

Welcome to our feedback site!


We created this site to hear your enhancement ideas, suggestions and feedback about AVEVA products and services. All of the feedback you share here is monitored and reviewed by the AVEVA product managers.

To start, take a look at the ideas in the list below and VOTE for your favorite ideas submitted by other users. POST your own idea if it hasn’t been suggested yet. Include COMMENTS and share relevant business case details that will help our product team get more information on the suggestion. Please note that your ideas and comments are visible to all other users.


This page is for feedback specifically for AVEVA PI System. For links to our other feedback portals, please see the tab RESOURCES below.

Status No status
Created by Guest
Created on Aug 20, 2022

Add a string array function to extract all items into a string result

Our process is writing an array of strings into an AF attribute of the same type. This AF attribute may receive information of different size (index) in time. We need to extract all the information contained in the string array (all the items) and store it in a PI tag of type string so it can be viewed in PI Vision or any other client. Since there is no For-Loop function in ABA, we need a new array operation (for example GetStringContent()) to based on an event or periodically store this complete string in a PI tag.
  • Attach files
  • Brent Bregenzer
    Reply
    |
    Jun 9, 2023

    Currently, the String() function provides the requested functionality, but comes with a serious limitation. When the String() function is applied to an array, if the array has more than three items, the result of String(Array) is something like [Value1,...,ValueN], where ArrayLength(Array) = N. That is to say only the first and last values are shown in the function's output string, and the rest are replaced by an ellipsis.
    Why is this the behavior of the String() function, and can it be changed to make it much more useful? I could see that perhaps this is done to protect the Analysis Service from giant strings that could kill performance, but could there at least be an option to control the behavior, and raise the number of array items that get translated to the string to a more reasonable number than three?

    The only official documentation I can find on this limit is in the KB article: Is it possible to output an analysis to a PI Point Array or AF Attribute?