Change request planned start date and change task due date validation

Mani Polisetty2
Tera Contributor

Hi ServiceNow Folks,

 

We have a requirement, We have two fields on change request 1) Planned start date 2) Planned End date

and we have one field on change task - Due Date

 

Qus1:  -- Whenever the planned start date(change_request field) is less than Due date(change_task field) Show an errorBox message under planned start date('planned start date should be before due date');

 

Qus 2: -- Whenever the Due date is less than Planned start date show an errorBox message under due date field('Due date should be after planned installed date').

 

Can some one help me please.

 

Thanks

Mani Polisetty

1 ACCEPTED SOLUTION

Hi @Mani Polisetty2 

Use below Updated Script Include :-

var getCallerDetails = Class.create();
getCallerDetails.prototype = Object.extendsObject(AbstractAjaxProcessor, {

    getDetails: function() {
        var currentNumber = this.getParameter('sysparm_sysId');
        var currentDate = new GlideDateTime(this.getParameter('sysparm_date'));

        var gr = new GlideRecord("change_task");
        gr.addQuery("change_request.number", this.getParameter('sysparm_sysId'));
        gr.query();
        while(gr.next()) {

            if (currentDate > new GlideDateTime(gr.planned_start_date).getDisplayValue() ) {
                return false;
            } else {
                return true;
            }
        }
    },

    getTaskDetails: function() {
        var currentSysId = this.getParameter('sysparm_sysId');
        var currentDate = new GlideDateTime(this.getParameter('sysparm_date'));

        var gr = new GlideRecord("change_request");
        gr.addQuery("sys_id", currentSysId);
        gr.query();
        if (gr.next()) {
            gs.info("FoundRecord=" + gr.planned_start_date);
            if (currentDate < new GlideDateTime(gr.start_date).getDisplayValue()) {
                return false;
            } else {
                return true;
            }
        }
    },

    type: 'getCallerDetails'
});

 Replace with your field values. 


Please Mark My Response as Correct/Helpful based on Impact
Regards,
Gunjan Kiratkar
2X ServiceNow MVP
Community Rising Star 2022
Youtube : ServiceNow Guy

View solution in original post

6 REPLIES 6

Musab Rasheed
Tera Sage
Tera Sage

Hello,

Looks like you can do this with UI policy, read this article.

https://www.servicenow.com/community/developer-articles/no-code-date-validations-through-catalog-ui-...

Please hit like and mark my response as correct if that helps
Regards,
Musab

James Murdy
Giga Contributor

not directly related,  but process wise how are people handling it if a change misses a cab meeting and the start and end dates are before the next cab?

currently our setup is such that it is rejected and people have to do the full approval cycle (chg, itmgr,fbot, cab) again