End date should be greater than start date
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-05-2022 07:04 AM
HI All,
I am using below code to make end date should be greater than start date, But it is working in reverse way like Its taking lesser date .
function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
return;
}
var startDate=g_form.getValue('absence_start_date');
if(newValue <= startDate )
{
g_form.clearValue('absence_end_date');
g_form.showFieldMsg('absence_end_date', 'The last day of absence cant be before the first day.', 'error');
}
//Type appropriate comment here, and begin script below
}
Please check and update my code.
Thanks,
Raja
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-05-2022 07:10 AM
Hi
This thread should help you :
Mark my answer correct & Helpful, if Applicable.
Thanks,
Sandeep
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-05-2022 07:20 AM
Hi,
You will have to write 2 onChange in this 1 for start and 1 for end
this should work fine in onChange
function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
return;
}
g_form.hideFieldMsg('absence_end_date');
if(g_form.getValue('absence_start_date') != '' && g_form.getValue('absence_end_date')){
var start = new Date(g_form.getValue('absence_start_date')).getTime();
var end = new Date(g_form.getValue('absence_end_date')).getTime();
if(end < start){
g_form.showFieldMsg('absence_end_date', 'The last day of absence cant be before the first day.', 'error');
}
}
}
Instead of this you can use single onSubmit client script
function onSubmit(){
g_form.hideFieldMsg('absence_end_date');
if(g_form.getValue('absence_start_date') != '' && g_form.getValue('absence_end_date')){
var start = new Date(g_form.getValue('absence_start_date')).getTime();
var end = new Date(g_form.getValue('absence_end_date')).getTime();
if(end < start){
g_form.showFieldMsg('absence_end_date', 'The last day of absence cant be before the first day.', 'error');
}
}
}
regards
Ankur
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-06-2022 12:25 AM
Hi Ankur,
I have used above code ,but its returning below error to me.
function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
return;
}
g_form.hideFieldMsg('absence_end_date');
if(g_form.getValue('absence_start_date') != '' && g_form.getValue('absence_end_date')){
//alert("enter");
var start = new Date(g_form.getValue('absence_start_date')).getTime();
alert(start);
var end = new Date(g_form.getValue('absence_end_date')).getTime();
alert(end);
if(end < start){
g_form.showFieldMsg('absence_end_date', 'The last day of absence cant be before the first day.', 'error');
}
}
Kindly looksthis.
Regards,
Raja
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-06-2022 08:04 PM
image is broken
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader