2 of 2 people found this helpful
You would need to create a custom Data Reference that supports SetValue where you could embed the logic for checking the value being entered.
Or you have an application layer on top of AF where your logic is implemented for data entry.
For some cases you might be able to use an AF Enumeration Set for a predetermined number of values that could be entered. This would only capture a small number of use cases though (e.g. if the user could only enter 0, 0.1, 0.2, ..., 1 then you could do that as an AF Enumeration Set.)
Or if you upgrade your AF you could use the AF Analytics to do the range check. You have an "input" AF Attribute where the user updates the value, which doesn't need a PI Point behind it. Then your Analysis takes that as input, range checks it and either updates another AF Attribute (with a PI Point behind it) or uses NoOutput().
1 of 1 people found this helpful
These are all good suggestions. One more to add: have you considered using PI Manual Logger/PI Manual Logger Web? PIML Web is used for manually entering data from a web browser. PIML Web 2014 R3, the latest release, has exactly the functionality that you're asking about - you can set up limit checks so a warning message is generated when a limited is violated during data entry.
This is basically just Rhys's "application layer" suggestion, only it's one of our applications
Thanks for your answer. I don't know the custom Data Reference : is it possible with that to display a warning message ? Is it necessary to refresh AF after the user's input ?
3 of 3 people found this helpful
We sometimes forget that PI System Explorer was designed to be primarily a configuration tool. What you're describing, range checking and warning message to users, are more suited in a client tool and not a configuration tool. Among the standard OSIsoft client tools, PI Manual Logger is probably the best tool for your needs (see Dallas' comment above). Besides the options already described above, you may want to consider writing some simple VB code in Microsoft Excel.