There are several places in our process phases where a user is prompted for string input, and that input needs to match an entry in a named set. In one case, there are over 40 possible legitimate responses, so a drop-down is not practical. So far, we've been doing essentially:
'^/NAMED_SET.CVS' := '^/USER_RESPONSE_STRING.CV';
and then verify the CVI isn't zero. While this does weed out any string input that isn't in the list, we recently discovered that entering an integer is silently accepted! Looks like, despite assigning to the .CVS component of the named set, a string made up of integer characters (like "44") is silently converted to an integer data type and assigned, even if that integer doesn't have an entry in the named set.
What is a good way of weeding out integer input (which will always be invalid, as named sets can't contain integer-character names)?
In reply to Matt Stoner: