Domino 9 und frühere Versionen > ND6: Administration & Userprobleme
Rechnen mit Uhrzeiten - Hilfe
LukasSChl:
hi
ich hab ma nen Zeitrechner in VB geschrieben und wollte den jetzt in Notes mal umsetzen.
Doch leider bekomm ich einfachste Mathematische Operationen nicht auf die Kette...
(Lotus Notes 6.5.1)
--- Code: --- Dim oUIDoc As NotesUIDocument
Set oUIDoc = oWorkspace.CurrentDocument
Dim oDoc As Notesdocument
Set oDoc = oUIDoc.Document
Dim pausenanfang As NotesDateTime
Dim pausenende As NotesDateTime
Dim pause As NotesDateTime
Set pausenanfang = Cdat(oDoc.pausenanfang)
Set pausenende = Cdat(oDoc.pausenende)
Set pause = pausenende - pausenanfang
oDoc.Pause_1 = pausenende
--- Ende Code ---
Einfach den Variablen Pausenanfang und Pausenende die Werte aus den entsprechenden Felder zuweisen, in der Variable pause dann das eine vom anderen abziehn und in das Feld Pause_1 schreiben.
Immer wieder bekomm ich Fehler, das da doch ein "Set" vorgehört, dann wieder nicht, und wenn nicht kommt "type missmatch".
Wie macht man per LS einfache Mathematische Operationen mit Uhrzeit Werten??^^
Könnte mir jmd. vllt. mal eine einfache Addition zeigen (variablendefinition etc)??
bin mit meinem Wissen und dem was ich so im Internet gefunden hab nicht weitergekommen.
mfg
Lukas
Axel:
Schau dir mal in der Designer-Hilfe die Klasse NotesDateTime an, insbesondere die Methode New
Syntax
Dim variableName As New NotesDateTime( dateTime$ )
or
Set notesDateTime = New NotesDateTime( dateTime$ )
Dann sollte dir klar werden wo dein Problem liegt.
Axel
LukasSChl:
vielen dank ich guck ma, falls ich net weiterkomm meld mich mich nochma^^
mfg Lukas
EDIT:
gut ich komm doch net weiter, muss dazusagen ich hab so gut wie 0 Ahnung von Lotus Script.
Ganz vergessen hab ich, das der Code hinter einem Button liegt, also beim anklicken, soll berechnet werden.
Es sieht jetzt so aus, bekomme aber immernoch den "Type mismatch" Fehler bei der Zeile:
Set pause = pause + (pausenende - pausenanfang)
--- Code: ---Dim oUIDoc As NotesUIDocument
Set oUIDoc = oWorkspace.CurrentDocument
Dim oDoc As Notesdocument
Set oDoc = oUIDoc.Document
Dim pausenanfang As NotesDateTime
Set pausenanfang = New NotesDateTime (oDoc.pausenanfang)
Dim pausenende As NotesDateTime
Set pausenende = New NotesDateTime (oDoc.pausenende)
Dim pause As NotesDateTime
Set pause = New NotesDateTime ("")
Set pause = pause + (pausenende - pausenanfang)
oDoc.Pause_1 = pausenende
--- Ende Code ---
mfg
Lukas
ascabg:
Hallo,
Dann schau Dir einmal genau an, was Dir die Klasse NOtesDateTime noch zur Verfuegung stellt.
siehe
NotesDateTime.TimeDifferenceDouble
und
NotesDateTime.TimeDifference
Andreas
LukasSChl:
hi
das mit dem TimeDifference leuchtet mir ein, muss man die Sekunden nachher nur umrechnen, aber mit der Syntax hab ich nen Problem.
Die Meldungen kommen schon beim speichern (Fehler in Lotusscript), also komm ich nichtmal soweit das zu testen ob es denn funktioniert.
Set pause = pausenende.TimeDifference( pausenanfang )
"Set may only be used on class instance assignments"
lasse ich das Set weg, also:
pause = pausenende.TimeDifference( pausenanfang )
"Set required on class instance assignment"
also irgendwas kann da noch net, leider bietet das Beispiel in der Hilfe da keine Lösung.
mfg Lukas
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln