Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: MrMagoo am 17.06.03 - 14:25:13

Titel: Doc und UIDoc
Beitrag von: MrMagoo am 17.06.03 - 14:25:13
Hallo zusammen,

ich habe folgendes Problem (sehe wahrscheinlich den Wald vor lauter Bäumen nicht)

Also ich Frage nach einen bestimmten Kriterium ab und lasse dann eine entsprechenden DB öffnen. Vorher habe ich subj mit einer ID belegt. Jetzt soll er in der neuen DB das Dokument mit der entsprechenden ID bearbeiten. Aufgrund meiner mangelden Script Kenntnisse bringe ich ihn nicht dazu in uidoc das in doc ausgewählte Dokument zu nehmen.

If item.Contains(  "Kriterium"  ) Then
         
Call workspace.OpenDatabase ( "Server", "DB", "","Current", False, False )         
Set doc = db.GetDocumentByID( subj( 0 ) )
Set uidoc = ws.EditDocument   
uidoc.document.FeldName="NO"
End If
Set doc = collection.getnextdocument(doc)

Danke
Titel: Re:Doc und UIDoc
Beitrag von: ata am 17.06.03 - 14:58:18
... dein Code ist sehr rudimentär, mir fehlen da noch die Deklarationen, wie du was dimensioniert und initialisierst...

... ich male mal das Szenario:
Du befindest dich in einem bereits gespeicherten Dokument
In einem Feld "Kriterium" soll als Wert "Genau das" als Wert hinterlegt sein.
In deiner Maske hast du ein Feld "Server" und "DB" hinterlegt, in denen die DB-Daten liegen, dessen Dokument du öffnen möchstest
In einem Feld "Subj" liegt die DocID des Dokumentes der fernen Datenbank

Zitat
Dim ws As New NotesUIWorkspace
Dim session As New NotesSession
Dim db As NotesDatabase
Dim docThis As NotesDocument
Dim sServer As String
Dim sDb As String
Dim sCrit As String
Dim sDocID As String


Set docThis = ws.CurrentDocument.Document
sServer = docThis.Server(0)
If Lcase(sServer) = "local" Then sServer = ""
sDB = docThis.DB(0)
sCrit = docThis.Kriterium(0)
sDocID = Cstr( docThis.Subj(0) )

If sCrit = "Genau das" Then
   Set db = session.GetDatabase( sServer , sDB )
   If Not db.Isopen Then
      MsgBox "Datenbank konnte nicht geöffnet werden"
      Goto EndeDesScripts
   End If

   Set doc = db.GetDocumentByUNID( sDocID )
   If doc Is Nothing Then
      MsgBox "Dokument konnte nicht gefunden werden"
      Goto EndeDesScripts
   Else
      Call ws.EditDocument( True , doc  )
   End If
Else
   Print "Kriterium nicht erfüllt"
End If


EndeDesScripts:

... so auf die schnelle...

ata






Titel: Re:Doc und UIDoc
Beitrag von: MrMagoo am 18.06.03 - 11:27:00
Ja stimmt, war noch ziemlich am Anfang, hat sich aber dank deiner Hilfe erledigt, danke