Best way to set up multiple required fields that's user-friendly?

I've been tasked with getting two enum fields - Subsystem and Issue Type - as required prior to the issue being submitted. I built the workflows like so -

Code
rule Base requirements 
 
when <issue created or updated> { 
 
Subsystem.required("Subsystem is required");

Issue Type.required("Issue type is required");

}
prettyPrint();

But because the issue is being 'updated' every time I select a new value in either of the two fields the site hiccups and eliminates the value I just selected. The only way I was able to get this work was to put the requirements in cascading if...else statements but then the user is forced to fill out the issue in a certain order, which is bizzare.

I also tried making the issues Can not be empty but then I am forced to provide a default value in the enumeration that represents 'empty' and end up back where I started, only with


Code
assert Subsystem != {No SubSystem} : "Please select a subsystem"
prettyPrint();

But more than one of those and I get the same issue.

Any way around this?
1 comment
Comment actions Permalink
In case anyone else comes around and sees this, a workaround I've got doing pretty much what we're looking for is:

rule Base Requirements 
 
when issue.becomesReported() { 
  Related System.required(fail message); 
  summary.required(fail message); 
  Issue Type.required(fail message); 
}
prettyPrint();

This defers the errors until the user tries to create the issue, then reveals them one at a time. It's not really what I want, but it is a step in the right direction.
0

Please sign in to leave a comment.