0
У меня есть требование для того, чтобы несколько полей устанавливались всякий раз, когда создавалась проблема.Создание нескольких обязательных полей в рабочем потоке
Я попробовал этот
rule Mandatory
when <issue created or updated> {
Swimlane.required("Must have a swimlane");
UtgmsVehicleName.required("Must be attached to a vehicle ");
Subsystem.required("Subsystem must be set");
Assignee.required("Assignee must be set");
Fix versions.required("Fix versions must be set/");
}
Что происходит, что он постоянно запрашивает все поля должны быть установлены. Каков наилучший способ выполнить это требование.
на основе предположения Алекса я получил это
rule MandatoryFields
when !isReported() {
var assigneeSet = Assignee != null;
var subSystemSet = Subsystem != null && Subsystem != {No subsystem};
var fixedVersionSet = Fix versions != null;
var assigneeValue = Assignee.oldValue;
var messageValue = "Mandatory fields:";
if (!assigneeSet) {
messageValue = messageValue + " Assignee";
}
if (!subSystemSet) {
messageValue = messageValue + " Subsystem";
}
if (!fixedVersionSet) {
messageValue = messageValue + " FixedVersion";
}
assert (assigneeSet && subSystemSet && fixedVersionSet): messageValue;
if (assigneeSet) {
Assignee = assigneeValue;
}
}
Привет Алекс, спасибо за идею, я старался делать то же самое, но он не признает + = так я изменил это на messageValue = "" + messageValue + ", Subsystem"; и до сих пор нет радости? Cheers – Bernard
Не уверен, что я понял вашу мысль. В чем была проблема с messageValue = "" + messageValue + ", Subsystem"; ? –
Alex, спасибо, что я получил код, работающий в конце, проблема в том, что если вы заполняете поле, например, утверждение уничтожает установленное вами значение, поэтому я думал, что могу хранить каждое значение поля, а затем повторно назначать на конец после утверждения? Кажется, не работает. Я добавил код к вопросу. Еще раз спасибо – Bernard