Print Page | Close Window

Days calculation excluding weekends

Printed From: Foxit's Planet PDF Forum
Category: Lets Talk PDF
Forum Name: PDF Forms and FDF
Forum Description: This conference is for users of PDF Forms, JavaScript and FDF Toolkits.
URL: http://forums.planetpdf.com/forum_posts.asp?TID=3967
Printed Date: 19 May 2019 at 7:34am
Software Version: Web Wiz Forums 11.10 - http://www.webwizforums.com


Topic: Days calculation excluding weekends
Posted By: Pizush
Subject: Days calculation excluding weekends
Date Posted: 18 Mar 2018 at 3:36am
Hi



I made a pdf form in acrobat pro XI. In the file I need to calculate total days excluding weekends. I went through the community and come up with the below code. This code counts Saturday and Sunday as weekends.



// get the end date value

var Date1 = this.getField("From").value;



// get the start date value

var Date2 = this.getField("To").value;



var dDate2 = util.scand("dd/mm/yyyy H:MM:SS", Date2 + " 0:00:00");

var dDate1 =util.scand("dd/mm/yyyy H:MM:SS", Date1 + " 0:00:00");

event.value = calcBusinessDays(dDate1, dDate2);


function calcBusinessDays(dDate1, dDate2) { // input given as Date objects

    var iWeeks, iDateDiff, iAdjust = 0;

    if (dDate2 < dDate1) return -1; // error code if dates transposed

    var iWeekday1 = dDate1.getDay(); // day of week

    var iWeekday2 = dDate2.getDay();

    iWeekday1 = (iWeekday1 == 0) ? 7 : iWeekday1; // change Sunday from 0 to 7

    iWeekday2 = (iWeekday2 == 0) ? 7 : iWeekday2;

    if ((iWeekday1 > 5) && (iWeekday2 > 5)) iAdjust = 1; // adjustment if both days on weekend

    iWeekday1 = (iWeekday1 > 5) ? 5 : iWeekday1; // only count weekdays

    iWeekday2 = (iWeekday2 > 5) ? 5 : iWeekday2;



    // calculate differnece in weeks (1000mS * 60sec * 60min * 24hrs * 7 days = 604800000)

    iWeeks = Math.floor((dDate2.getTime() - dDate1.getTime()) / 604800000)



    if (iWeekday1 <= iWeekday2) {

iDateDiff = (iWeeks * 5) + (iWeekday2 - iWeekday1)

    } else {

iDateDiff = ((iWeeks + 1) * 5) - (iWeekday1 - iWeekday2)

    }



    iDateDiff -= iAdjust // take into account both days on weekend



    return (iDateDiff + 1); // add 1 because dates are inclusive

}



I need to count Thursday and Friday as weekends. I have very little knowledge in javascript.

Any help would be greatly appreciated.


Regards



Print Page | Close Window

Forum Software by Web Wiz Forums® version 11.10 - http://www.webwizforums.com
Copyright ©2001-2017 Web Wiz Ltd. - https://www.webwiz.net