Ich habe hier eine ND6 - Datenbank, die R5 - kompatibel werden muss. (nicht Web)
Es gibt da 2 Datumsfelder:
* DateFrom
* DateTo
Beispiel für den Onchange-Event des "DateFrom" - Feldes:
| Sub Onchange(Source As Field) |
| |
| Dim uiws As New NotesUIWorkspace |
| Dim uidoc As NotesUIDocument |
| Set uidoc = uiws.CurrentDocument |
| Set doc = uidoc.Document |
| |
| If doc.DateFrom(0) > doc.DateTo(0) Then |
| doc.DateTo = doc.DateFrom(0) + 1 |
| End If |
| |
| End Sub |
Wenn also das eingegebene Startdatum größer als das Enddatum ist, wird das Enddatum angepasst (Startdatum + 1 Tag).
Jetzt muss das auch in R5 gehen.
Da steht mir aber nur JavaScript im OnChange-Event zur Verfügung.
Im R5-Mailfile in der Kalendermaske passiert eigentlich ähnliches, da hab ich mal den Code rauskopiert:
| if (window.location.protocol.indexOf('Notes:')==-1) |
| { |
| |
| thisform = document.forms[0]; |
| newstart = new Date(translateDate(thisform.StartDate.value)); |
| newend = new Date(translateDate(thisform.EndDate.value)); |
| |
| |
| xxBadDateString = "This date (" + thisform.StartDate.value + ") is an invalid date. Please re-enter Start Date." |
| |
| |
| if (newstart.toString() == "Invalid Date" || newstart.toString() == "NaN") |
| { |
| alert( xxBadDateString ) |
| thisform.StartDate.value = thisform.EndDate.value |
| thisform.StartDate.focus() |
| } |
| |
| else if (newend.getTime() < newstart.getTime()) |
| { |
| thisform.EndDate.value = thisform.StartDate.value |
| } |
| } |
Ich habe leider keine Ahnung was das Script alles macht. Da ist wohl auch eine Validierung drin.
Was mir aber Hoffnung macht ist der letzte Part, dort wird ja wohl sowas ähnliches gemacht wie ich in meinem LS habe.
Wie muss ich denn das JS anpassen für meine Situation?
Jeder Tipp ist willkommen
