What is the use of "Variable is hidden from parent processes and reports"
Discussion posts and replies are publicly visible
My understanding (and I'm prepared to be educated by those who may have a deeper insight here) is that if you were to consider a true Object Oriented language your Objects would have 'Getters' and 'Setters' through which the internal state of an Object can be determined, but that the internal state of an object should reside in 'private variables'. So you can consider setting the 'hidden' attribute of a process variable to the equivalent of a 'private variable' of an Object.
By default this attribute is NOT set, and so a new pv! is thus by default a candidate 'Getter' and/or 'Setter'.
Having said that, I've never (in my 7 years at Appian) seen this actively used.
I believe that hidden PVs are also not stored in process history, which can save some memory usage. The main downside to hiding process variables is that it's harder to troubleshoot, and I believe it also isn't possible to query their values using a process report.
There are some features like this that were more important 10-15 years ago - most machines had much less memory then, and many processes were created to run for very long time periods. However, now that servers have much more memory and we have best practices for creating short-lived processes, this is really not important any more. Like Stewart said, I have never used this myself beyond basic testing to understand what it did
thanks you peter
© 2020 Appian. All rights reserved.