Hallo @ all,
kann mir jemand vielleicht helfen mein script ans laufen zu bringen.
Über eine Schaltfläche möchte ich eine Berechnung der Zeiterfassung anstossen.
Leider ergibt es immer einen "Type mismatch"
Das Script hängt sich auf an der Zeile "kommt_std=Cint(Left(doc.kommt(0),2)"
Sub Click(Source As Button)
Dim ws As New NotesuIWorkspace
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument
Dim s As New NotesSession
Dim kommt_std As Integer
Dim kommt_min As Integer
Dim kommt_minuten As Integer
Dim geht_minuten As Integer
Dim zeit_ist_tag As Integer
Dim zeit_soll_tag As Integer
Dim diff As Integer
Dim kommt_ws As String
Dim geht_std As Integer
Dim geht_min As Integer
Dim geht_ws As String
Dim diff_std As Integer
Dim diff_min As Integer
Dim istzeit As Long
Dim stunden As Integer
Dim ws_feld1 As Integer
Set uidoc = ws.CurrentDocument
Set doc = uidoc.Document
If doc.art(0) = "Krank" Or doc.art(0) = "Urlaub" Or doc.art(0) = "Feiertag" Then
diff_std = 7
diff_min = 00
doc.pause = 0
doc.stunden = "7:00"
doc.uestd = ""
Goto Ende
End If
kommt_std =Cint(Left(doc.kommt(0),2))
kommt_ws = Right(doc.kommt(0),5)
kommt_min = Cint(Left(kommt_ws,2))
geht_std =Cint(Left(doc.geht(0),2))
geht_ws = Right(doc.geht(0),5)
geht_min = Cint(Left(geht_ws,2))
kommt_minuten = (kommt_std * 60) + kommt_min
geht_minuten = (geht_std * 60) + geht_min
zeit_ist_tag = geht_minuten - kommt_minuten - doc.pause(0)
zeit_soll_tag = 420
zeit_ist_tag = zeit_ist_tag + (doc.sonderstunden(0) * 60)
diff = zeit_ist_tag - zeit_soll_tag
doc.uestd = diff
stunden = (zeit_ist_tag \ 60)
ws_feld1 = (stunden * 60) - zeit_ist_tag
If ws_feld1 < 0 Then
ws_feld1 = ws_feld1 * (-1)
End If
doc.stunden = Cstr(stunden) + ":" + Right("00" + Cstr(ws_feld1),2)
Ende:
End Sub