Dokument mittels LotusScript öffnen?

  • Hi,


    wie kann ich ein Dokument mittels LotusScript öffnen (z.B. Button in einer Maske soll ein anderes Dok öffnen)? So etwas wie ThisDoc.Open gibt´s leider nicht und in der Hilfe bin ich auch auf nichts in dieser Hinsicht gestossen...


    Grüsse

  • Hi vielleicht könntet ihr kurz meinen Code ansehen...



    Sub Click(Source As Button)

    Dim ws As New NotesUIWorkspace
    Dim dbSCC As New notesdatabase("BOEDOM1","ide\security\SecComCh.nsf")
    Dim viewSCC As NotesView
    Dim machinedoc As NotesDocument

    Set viewSCC = dbSCC.getview("User\Host name")
    Set machinedoc = viewSCC.GetFirstDocument
    Call ws.EditDocument (False, doc)

    End Sub


    Wenn ich den Code so stehen habe kommt die obige Fehlermeldung. Gehe ich richtig in der Annahme, dass er keine Dokumente in dem View findet, oder habe ich sonst irgendeinen Fehler drin?

  • Du hast vergessen die DB zu öffnen. Das würde u.a. so gehen:


    Sub Click(Source As Button)


    Dim ws As New NotesUIWorkspace
    Dim dbSCC As New notesdatabase("BOEDOM1","ide\security\SecComCh.nsf")
    Dim viewSCC As NotesView
    Dim machinedoc As NotesDocument

    call dbSCC.open("","")

    Set viewSCC = dbSCC.getview("User\Host name")
    Set machinedoc = viewSCC.GetFirstDocument
    Call ws.EditDocument (False, doc)


    End Sub


    Desweiteren empfehle ich dir bei Ansichten mit Alias-Bezeichnern zu arbeiten. Ansonsten hast du ggf. irgendwann das Problem daß ein User meint die Ansicht müsse doch ganz anders heißen und schon funktioniert das Script nicht mehr.

  • Dann änder das Script nochmal so daß geprüft wird ob die DB bereits geöffnet ist. Außerdem hat deine vorletzte Zeile einen Fehler, du willst doc öffnen hast aber das Dokument in der variable machinedoc. Sollte eigentlich auch ne entsprechende Fehlermeldung kommen...!


    Sub Click(Source As Button)


    Dim ws As New NotesUIWorkspace
    Dim dbSCC As New notesdatabase("BOEDOM1","ide\security\SecComCh.nsf")
    Dim viewSCC As NotesView
    Dim machinedoc As NotesDocument

    If Not (dbSCC.IsOpen) Then
    call dbSCC.open("","")
    End If

    Set viewSCC = dbSCC.getview("User\Host name")
    Set machinedoc = viewSCC.GetFirstDocument
    Call ws.EditDocument (False, machinedoc)


    End Sub

  • Die Zeilen zum Oeffnen der DB erscheinen mir unsinnig.
    Wenn ich ein Datenbankobjekt erzeuge und die Datenbank existiert, dann ist die DB open. (mit Dim dbSCC As New notesdatabase("BOEDOM1","ide\security\SecComCh.nsf")


    Wenn sie danach nicht open ist, wird auch ein db.open sie nicht oeffnen, soweit ich weiss.
    Man koennte hoechstens abbrechen, wenn db.isopen fasle liefern wuerde, damit keine Fehlermeldung bei
    Set viewSCC = dbSCC.getview("User\Host name")
    aufkommt.