Servicenow

HARSHA GOWDA R
Tera Contributor

Can anyone help me with this code , the end date is coming one day prior to selected effective date , below i have attached copy of that.
Script Include-
var iamServiceAccountOnboardingUtils = Class.create();
iamServiceAccountOnboardingUtils.prototype = Object.extendsObject(global.AbstractAjaxProcessor, {
    calculateEndDate: function() {
        var effectiveDate = this.getParameter('sysparm_effective_date');
        var end_date = new GlideDateTime();
        end_date.setNumericValue(effectiveDate);
        end_date.addMonthsLocalTime(12);
   
        return end_date.getDate();

    },

    type: 'iamServiceAccountOnboardingUtils'

});

Client Script-
function onChange(control, oldValue, newValue, isLoading) {
    if (isLoading || newValue == '') {
        return;
    }

    var ga = new GlideAjax('iamServiceAccountOnboardingUtils'); //scriptinclude name
    ga.addParam('sysparm_name', 'calculateEndDate'); //function name
    var date_number = getDateFromFormat(newValue + ' 00:00:00', g_user_date_time_format);
    ga.addParam('sysparm_effective_date', date_number);
    ga.getXML(answerCallback); // Define the callback function
}

function answerCallback(response) {
    var answer = response.responseXML.documentElement.getAttribute("answer");

    if (answer) {
        // Set the calculated end date in the end date field
        g_form.setValue('end_date', answer);
    }
}

1 REPLY 1

Siddhesh Gawade
Mega Sage
Mega Sage

Hello @HARSHA GOWDA R 

 

What is the expected output here? let me know.