WorkFlow изменения кастомного поля String
Answered
Доброго времени суток!
Впервые столкнулся с Вашей системой и сейчас пытаюсь научиться разрабатывать в ней WorkFlow.
Имеется банальнейший скриптик, который должен при изменении инцидента поменять значение кастом поля(String).
Версия YT Standalone развернута прямо на локальном ПК.
Please sign in to leave a comment.
Метод `ctx.issue.isChanged` принимает в качестве аргумента имя свойства, которое изменено (например, `ctx.issue.isChanged('project')`. Поскольку в целом правила типа 'on-change' срабатывают на любое изменение задачи, в Вашем примере `guard` можно опустить или просто заменить тело функции на `return true;`.
Мария,
Так и не смог до конца разобраться в этом методе. Какого то структурированного описания методов свойств и т.п. не нашел. На данный момент есть такой скрипт который тоже кидает ошибку.
поля Enum Priority были переименованы.
Вы можете найти полное описание АПИ тут: https://www.jetbrains.com/help/youtrack/incloud/YouTrack-Api-Documentation.html
В случае данного скрипта необходимо внести несколько изменений:
1) `issue.isChanged(ctx.Priority) -> issue.fields.isChanged(ctx.Priority)`;
2) `var CritTime = ctx.dateTimeType;` - не требуется; даты в YT хранятся в мс, то есть это просто число, его не требуется ничем инициализировать.
3) `issue.fields.Priority == ctx.Project.Issue.Priority.Crit)` - проверка равенства значения поля чему-то требует сравнения примитивных свойств, таких как name или login (у пользователя); кроме того, значение, с которым идёт сравнение, должно быть в секции requirements:
`issue.fields.Priority.name === ctx.Priority.Crit.name` и
`Priority: {
type: entities.EnumField.fieldType,
Crit: {}
}`
4) В requirement для даты опечатка, `entities.Field.dateTimeType`.