Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: DAU-in am 04.06.12 - 20:40:47

Titel: Document in Subroutine erzeugen und in Haptroutine übergeben
Beitrag von: DAU-in am 04.06.12 - 20:40:47
Ich habe eine Scriptbibliothek, darin eine Funktion. Dieser Funktion werden 2 Strings übergeben, damit wird eine ANDERE DB definiert und daraus ein Notesdocument übergeben.
Ich sehe das Notesdocument
Ich sehe auch den Rückgabwert
Beim Rücksprung in die Hauptroutine verliert er das Dokument
Wie schaffe ich es, daß die Referenz auf das Dokument gültig bleibt, obwohl die erzeugenden Objekte nur in der Subroutine leben? Die session selbst ist global definiert. Ich weiß daß wir das hier schon besprochen haben, aber ich finde den Thread nicht mehr.
Kann mir bitte jemand die Tomaten von den Augen runternehmen?




Function getDocDocumentFromOtherDatbase(strAdminServer As String, strType  As String) As NotesDocument


Dim dbAdmin As NotesDatabase
Dim view as NotesView

On Error GoTo ErrorHandler

Set dbAdmin = session.GetDatabase(strAdminServer, session.currentdatabase.Filepath )
    Set view = dbAdmin.Getview("NTConfig")
    Set docAdmin = view.Getdocumentbykey(strType, True)         
               
   Set getDocDocumentFromOtherDatbase = docAdmin

               

        Exit Function
ErrorHandler:
       
       
End Function

Titel: Re: Document in Subroutine erzeugen und in Haptroutine übergeben
Beitrag von: koehlerbv am 04.06.12 - 21:14:29
Anita, Du musst auf jeden Fall die übergeordneten Objekte Deines NotesDocuments immer am Tropf haben. also mindestens NotesDatabase. Übergib sie (byReference) an Deine Routine, dann ist alles gut.

HTH,
Bernhard
Titel: Re: Document in Subroutine erzeugen und in Haptroutine übergeben
Beitrag von: DAU-in am 04.06.12 - 21:50:31
Die Db wird leider erst in einer anderen Subroutine bestimmt, und dann der String mit dem Pfad übergeben.

Hmm, dann muss ich mir was einfallen lassen.

Titel: Re: Document in Subroutine erzeugen und in Haptroutine übergeben
Beitrag von: koehlerbv am 04.06.12 - 22:39:47
Die DB musst Du dann global halten bzw. immer mit übergeben (sauberer).

Bernhard