Solved

problem with dates

Posted on 2001-06-18
7
162 Views
Last Modified: 2013-12-18
hello experts,
  i put textbox and change the field properties as datetime.when i run this in notes client its working fine.the same when i run this on web calender type is not coming.i dont want to user should select the dates from the control not by typying manually. and one more thing is i want to calculate difference in dates.if it is greater than 21 days it should give message that diff should be less than 21 days.how to do this.is there any inbuilt control is there.


waiting for answer.
0
Comment
Question by:shaikhidayat
7 Comments
 
LVL 4

Expert Comment

by:sloeber
Comment Utility
Shaikidayat,

You can't use the popup calendar screen on the web.
If you want to use a popup calendar tool for selecting dates, you must write it down in Java.


About the time difference.
Do you want the formula for calculating the difference or do you want the formula for the popup or both ?
When must it check the dates, on the moment the user enter a date or every day?
Do you have on your form two date fields, or do you have one time field and the other time field is today.

For showing a message screen on the web you use alert("text")

Greets,
Sloeber

0
 
LVL 4

Expert Comment

by:sloeber
Comment Utility
0
 
LVL 4

Expert Comment

by:sloeber
Comment Utility
This is the formula for calculating the days
<body>

<form name=exf1>
D1 <input name=d1 type=text value="01">
M1 <input name=m1 type=text value="01">
Y1 <input name=y1 type=text value="2000">
<BR>
D2 <input name=d2 type=text value="03">
M2 <input name=m2 type=text value="05">
Y2 <input name=y2 type=text value="2000">
<BR>
Delta Days <input type=text name=delta value="<?>">
<BR>
Business Days <input type=text name=bizdelta value="<?>">
<BR>
<input type=button onclick="compute()" value="compute!">
</form>
<script type=text/javascript>
function compute() {
  var date1 = new Date();
      date1.setYear  (document.exf1.y1.value);
       date1.setMonth (document.exf1.m1.value);
       date1.setDate  (document.exf1.d1.value);
  var date2 = new Date();
      date2.setYear  (document.exf1.y2.value);
       date2.setMonth (document.exf1.m2.value);
       date2.setDate  (document.exf1.d2.value);
  var delta = date1.getTime() - date2.getTime();
      delta = delta / ( 1000 * 60 * 60 * 24 ); // units are now days.
      if (delta < 0) delta = -delta;
       delta = Math.round(delta);
       
         
  document.exf1.delta.value = delta;
     if (delta > 21) alert("Data difference should be less then 21 days")
         

}
</script>


0
Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

 
LVL 4

Accepted Solution

by:
sloeber earned 30 total points
Comment Utility
This is the formula for calculating the days
<body>

<form name=exf1>
D1 <input name=d1 type=text value="01">
M1 <input name=m1 type=text value="01">
Y1 <input name=y1 type=text value="2000">
<BR>
D2 <input name=d2 type=text value="03">
M2 <input name=m2 type=text value="05">
Y2 <input name=y2 type=text value="2000">
<BR>
Delta Days <input type=text name=delta value="<?>">
<BR>
Business Days <input type=text name=bizdelta value="<?>">
<BR>
<input type=button onclick="compute()" value="compute!">
</form>
<script type=text/javascript>
function compute() {
  var date1 = new Date();
      date1.setYear  (document.exf1.y1.value);
       date1.setMonth (document.exf1.m1.value);
       date1.setDate  (document.exf1.d1.value);
  var date2 = new Date();
      date2.setYear  (document.exf1.y2.value);
       date2.setMonth (document.exf1.m2.value);
       date2.setDate  (document.exf1.d2.value);
  var delta = date1.getTime() - date2.getTime();
      delta = delta / ( 1000 * 60 * 60 * 24 ); // units are now days.
      if (delta < 0) delta = -delta;
       delta = Math.round(delta);
       
         
  document.exf1.delta.value = delta;
     if (delta > 21) alert("Data difference should be less then 21 days")
         

}
</script>


0
 

Author Comment

by:shaikhidayat
Comment Utility
hai  sloeber,
   thanks for sending me very fast reply.one of solutions what u send is working means the datepicker control is working fine on the web.
  the other to calculate the differnce i cut the code and put one
button  onclick  javascript

i paste the code.but i am getting syntax error the curson is at <body> .

so what i have to do.

i want to calculate the difference between the two date fields  from which i select from the datepick code.
i think u might have understand my problem.

0
 
LVL 8

Expert Comment

by:Jean Marie Geeraerts
Comment Utility
Hello,
Put the following JavaScript code in the onSubmit event of your form :

  var date1 = new Date();
  date1.setYear(document.forms[0].year1.value);
  date1.setMonth(document.forms[0].month1.value);
  date1.setDate(document.forms[0].day1.value);

  var date2 = new Date();
  date2.setYear(document.forms[0].year2.value);
  date2.setMonth(document.forms[0].month2.value);
  date2.setDate(document.forms[0].day2.value);
 
  var delta = date1.getTime() - date2.getTime();
  delta = delta / ( 1000 * 60 * 60 * 24 ); // units are now days.
  if (delta < 0) delta = -delta;
  delta = Math.round(delta);
  if (delta > 21)
    {
     alert("Difference is more than 21 days!");
     return false;
    }
  else
     return true;

This code supposes the following :
On your form you have seperate fields for day, month and year to enter the dates :
Date 1 is build from year1, month1 and day1 fields.
Date 2 is build from year2, month2 and day2 fields.
If the check fails an error message is displayed and the form is not submited. If the check is OK, the form is submitted.

If you have your dates in one field, you need to substract the seperate parts of the date from that field using the substring method in JavaScript.
If you need help with this, I can give you the code, but you need to specify how dates are entered in your form. (dd/mm/yyyy or mm/dd/yyyy or any other way?)
0
 
LVL 1

Expert Comment

by:anuu
Comment Utility
Hi,

Regarding the error,
it appears as though it is an error due to js or the HTML used... Include all js functions that you would like to use in the <Head> tag.

anu
0

Featured Post

Better Security Awareness With Threat Intelligence

See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
Creating a bat file fo Note.ini 4 183
Work Space in Lotus Notes cannot found 6 160
Email Forward: Get Around Relay Issue 3 91
@Mailsend 3 19
This is an old article, please see an updated version of this article, located here: http://www.experts-exchange.com/articles/23619/Notes-8-5x-Windows-7-Notes-info-and-tips.html
Problem "Can you help me recover my changes?  I double-clicked the attachment, made changes, and then hit Save before closing it.  But when I try to re-open it, my changes are missing!"    Solution This solution opens the Outlook Secure Temp Fold…
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…
You have products, that come in variants and want to set different prices for them? Watch this micro tutorial that describes how to configure prices for Magento super attributes. Assigning simple products to configurable: We assigned simple products…

763 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

6 Experts available now in Live!

Get 1:1 Help Now