Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: gfunkus am 04.08.04 - 15:44:30
-
Hi,
habe nen Agenten der ein neues doc erzeugen soll:
set ddoc = new notesdocument(db)
ddoc.form="TEST"
call ddco.save(TRUE,TRUE)
call ws.EditDocuemtn
aber bekomme obigen fehler... ????
Danke für Hilfe..
-
Abgetippt oder kopiert ?
call ddco.save(TRUE,TRUE) <-- ddco <> ddoc
und ws.EditDocument muss man das Dokument mitgeben, dass man öffnen will...
call ws.EditDocument( True, ddoc )
Wie ist der Agent getriggert ?
Wie ist die Dokumentenauswahl ?
Gruß
Tode
-
Tippfehler jetzt mal c&p:
Set DDoc = New NotesDocument( Db )
DDoc.Form = "FU001_DbLink"
Call ddoc.ComputeWithForm(True,True)
Call ddoc.Save(False,True)
Call ws.EditDocument(True, DDoc)
so ist es...
-
und in welcher Zeile kommt der Fehler ? Was sagt der Debugger dazu ?
Und: WO / wie läuft der Agent / das Script
Tode
-
Der Fehler liegt darin, das man das erzeugte Dokument noch nicht mal aus der View heraus öffnen kann. Dann bekommt man nämlich die obige Fehlermledung ebenfalls. Das Doc lässt sich nicht öffnen... aber was läuft da falsch bei der erstellung???
-
Mehr Infos ! Beantworte Todes Fragen.
Gibt es noch mehr Code ?
Wie sieht es mit den Rechten aus ?
Bernhard
-
Dim session As New notessession
Dim ws As New notesuiworkspace
Dim Db As notesdatabase
Dim DefView As notesView
Dim DDoc As notesdocument
Set Db = session.currentdatabase
Set DefView = Db.GetView("VU000_Ws3Con")
Call Defview.Refresh()
Set DDoc = DefView.GetFirstDocument
' Erster Aufruf => dann anlegen
If DDoc Is Nothing Then
Set DDoc = New NotesDocument( Db )
DDoc.Form = "FU001_DbLink"
Call ddoc.ComputeWithForm(True,True)
Call ddoc.Save(False,True)
End If
Call ws.EditDocument(True, DDoc)
Aufruf erfolgt über ne Outline.
-
woran kann es liegen das beim öffnen eines Dokumentes der obige fehler erscheint???
-
Mal ne andere Frage :
Wenn Du das Dokument neu erzeugen und dann quasi leer öffnen willst, warum benutzt Du dann nicht einfach ComposeDocument ?
Set DDoc = ws.ComposeDocument("", "", Form)
-
wenn ich das Doc damit erstellen will bekomme ich dieselbe Fehlermeldung. auch mit einem @command([compose... geht es nicht. es muss wohl an der form liegen??? Ich kann mir das nicht erklären ???? Bin ratlos??? HILFE!!!!
-
Das
Set DDoc = ws.ComposeDocument("", "", Form)
erzeugt ein NotesUIDocument, kein NotesDocument!
Ausserdem hast Du dann ein leeres Dokument, Du müsstest erst über das Backend die Felder setzen.
Dann noch was: Du solltest bei der Programmierung darauf achten, alles case sensitive zu programmieren. D.h. entweder DDoc oder ddoc.
Versuche das mal:
Dim session As New notessession
Dim ws As New notesuiworkspace
Dim Db As notesdatabase
Dim DefView As notesView
Dim DDoc As notesdocument
Set Db = session.currentdatabase
Set DefView = Db.GetView("VU000_Ws3Con")
Call Defview.Refresh()
Set DDoc = DefView.GetFirstDocument
' Erster Aufruf => dann anlegen
If DDoc Is Nothing Then
Set DDoc = Db.CreateDocument
DDoc.Form = "FU001_DbLink"
Call DDoc.Save(True,True)
Call DDoc.ComputeWithForm(True,True)
Call DDoc.Save(True,True)
End If
Call ws.EditDocument(True, DDoc)
Mit New hat man ab und zu Problemchen...
Andreas
-
OK! Fehler gefunden. Entwarnung. In der Form war ein Frameset eingetragen welches es nicht gab. Grr. Egal hauptsache jetzt läufts.
Danke für eure Beiträge.
-
Das
Set DDoc = ws.ComposeDocument("", "", Form)
erzeugt ein NotesUIDocument, kein NotesDocument!
Ist klar, aber so wie das oben im Beispielcode aussieht, soll das Dokument ja eh im UI geöffnet werden, dann kann ich auch gleich ein UIDocument erzeugen und damit dann weiterarbeiten.