Type mismatch

  • Hallo zusammen,


    was stimmt da nicht? die Fehlermeldung: Type mismatch
    Laut meinem schlauen Buch muss der Code aber stimmen.


    Sub pruefen()

    Dim session As New NotesSession
    Dim db As NotesDatabase
    Dim doc As NotesDocument
    Dim view As NotesView

    Set db=session.CurrentDatabase
    Set view = db.GetView ("Nach_Tage")
    Set doc = view.GetFirstDocument

    Do Until doc Is Nothing
    If doc.tag= "Montag" Then
    Msgbox("gefunden")
    End If
    Set doc = view.GetNextDocument (doc)
    Loop

    End Sub

  • kleiner Nachtrag:


    Jetzt möchte ich den Wert eines Feldes ändern.
    Mit:
    doc.status="OK"
    passiert zur Laufzeit gar nix.


    Mit:
    doc.status(0)="OK"
    Fehlermeldung zur Laufzeit: Illegal Use of PROPERTY


    Der Debugger konnnte mir nicht wirklich helfen.

  • hi,


    Danke für die schnelle Antwort.
    Speichern? Muss ich das? Denke ich schreibe über das Backend direkt in die Datenbank. Wusste ich nicht.
    Funzt über:
    Call doc.Save( False, False )
    (die Hilfe hats hergegeben)


    Danke!

  • nur noch mal so als hinweis ob mit oder ohne (0)


    jedes feld wird in script als array behandelt. daher muss, auch wenn ihr z. b. über die maske kein 'mehrfachwert' zulasst, das ganze als solche abgefragt werden.


    also z. b.
    if doc.feld1(0) = "wert" then ...


    macht ihr eine zuweisung geht das natürlich direkt auf das feld über
    doc.feld1 = "wert"


    nur einen einzelnen wert des arrays austauschen geht nicht (so einfach).
    dim array (2) As String
    array(0) = "1"
    array(1) = "2"
    array(2) = "3"


    doc.feld1 = array


    und nicht vergessen: der erste wert ist (zu 99%) immer (0)

    bunt ist das dasein und granatenstark. volle kanne hoshi's!


    IBM Certified Advanced System Administrator (R5, D6, D7)
    IBM Certified Advanced Application Developer (R5, D6, D7, D8)