Dears,
for request we need to add a "due date". (by when they want something to be done)
Depending on the request we can already say that the earliest can be today + X days.
How can this be done?
Kind regards,
Matt
@Matthew Van Kuyk, let me restate what I think you are asking for to be sure I am following. In the end I think you will need something like Scriptrunner or maybe Automation for JIRA to make this work.
You want to create a custom 'due date' field and you want to automatically set the default to "today + x days" based upon Issue Type.
example:
Task = today +5d
Bug = today +2d
Hi Jack,
Thanks you doe your reply. It is not the field itself that should be x + 5days. It should be the date picker which should make all days available from x+5days on. Additionaly a script should be ran to check if the value entered is indeed in the correct range (that I can do with script runner).
Kind regards,
Matt
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Ok so you want to restrict the first date of a date picker?
So if i create an issue on 9/1/2017 the first date I can pick for this field should be 9/6/2017?
If so, I’m unsure how to accomplish. I’m unsure if there is an addon that could do this. It might mean changing the code, creating a specialize date picker. Hopefully someone w/ more knowledge could chime in here. @Nic Brough (Adaptavist), any thoughts on this one?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I don't think even Behaviours (part of Scriptrunner) can get into the display at that depth. You could default the value and do the validation on create/transition with Behaviours and Scripts, but limiting the calender would require dedicated code I think.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thanks for chiming in Nic. this was what I was expecting but unsure.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Nic, Jack,
thank you for your valuable input. As a workaround I have created a validation script which will check if the selected date is in the correct range.
import com.opensymphony.workflow.InvalidInputException;
import com.atlassian.jira.component.ComponentAccessor;
try{
//set the value of the customer request type of Request Internal Move
def requestInternalMove= "sd/d28a8b4a-343c-453c-9e87-68a1f7b2710d"
def issueManager = ComponentAccessor.getIssueManager()
def customFieldManager = ComponentAccessor.getCustomFieldManager()
def cf = customFieldManager.getCustomFieldObjectByName("Customer Request Type")
def cFieldValue = issue.getCustomFieldValue(cf)
log.error "Customer Request Type: " + cFieldValue;
if(cFieldValue.toString().equals(requestInternalMove)){
//Set de amount of dates needed
int noOfDays = 14; //i.e two weeks
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DAY_OF_YEAR, noOfDays);
Date date = calendar.getTime();
//Check if the due date is later than the 2 weeks
if (issue.dueDate?.before(date)) {
invalidInputException = new InvalidInputException("2 weeks are required to provide this service, please provide a date after " + date)
}
}
}catch(Exception ex){
invalidInputException = new InvalidInputException("An error ocured please contact the helpdesk")
log.error ex.getMessage()
}
Kind regards,
Matt
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
A validator script can be placed on the disk on the server (usually under <jira home>/scripts), and then referred to in the workflow validator function, or written directly inside the validator function.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
It would be quite handy if the date picker itself (the calendar) could be limited to only show dates after today() or today(+2d).. I dont think that's possible.. but we simply enforce the date being >=today() in a validator. We ran into an issue with that and the users timezone. Basically at 9:30pm the user could not set the date to today. The validator thought it was already tomorrow..
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Has your idea been realized? I also want to realize that the optional range of date picker can be controlled, and the maximum selection time is the current time + 30 days
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.