js/helpdesk-sla/new-issue-sla.js (18 lines of code) (raw):

var entities = require('@jetbrains/youtrack-scripting-api/entities'); var timeOp = require('./time-operations'); // Number of business hours to reply to the new issue. var NEW_ISSUE_SLA = 3; exports.rule = entities.Issue.onChange({ title: 'New Issue SLA', guard: function(ctx) { return ctx.issue.becomesReported; }, action: function(ctx) { ctx.issue.fields.ToReply = timeOp.addBusinessHours(Date.now(), NEW_ISSUE_SLA); }, requirements: { ToReply: { type: entities.Field.dateTimeType, name: 'To reply before' } } });