Domino 9 und frühere Versionen > ND8: Entwicklung

neue Dokumente erstellen

<< < (5/6) > >>

tooot:
Hey,

also ich habe es jetzt so gelöst:

1. habe ich eine View erstellt die mir nur die Dokumente mit den flag true anzeigt
2. habe ich den Agenten erstellt:


Sub Initialize
   
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Set db=session.CurrentDatabase
   Dim view As NotesView
   
   Dim doc As NotesDocument
   Dim newdoc As NotesDocument   
   
   Set view=db.GetView("View")
   
   Set doc = view.GetFirstDocument
   
   Do Until doc Is Nothing
      Set newdoc = New NotesDocument (db)
      newdoc.Form="Form"
      
      newdoc.Feld2 = doc.FeldA
                newdoc.Feld3 = doc.FeldB
                newdoc.Feld4 = doc.FeldC
                newdoc.Feld5 = doc.FeldD
      Call newdoc.Save(True,True)
      
      doc.feld="false"
      Call doc.Save(True,True)
      'wieder zum ersten Dokument da der Zeiger false das erste Dokument "weg nimmt"
      Set doc=view.GetFirstDocument
   Loop
   
End Sub


Nochmals vielen Dank für eure Hilfe

Christoph

TRO:

--- Zitat von: samWare am 27.08.09 - 11:39:46 ---Für ne history dauernd neue Dokumente anlegen? Warum dass den? Du kannst doch einfach Felder mit Mehrfachwerten machen. Eins für das Datum, eins für den Änderungs-Author und eins für die Action.
...
Vllt. ist das ja auch eine Lösung :) (also ich würde das so machen)


--- Ende Zitat ---

Du rennst mit dieser Lösung aber m.E. mit großer Wahrscheinlichkeit in ein Replizierkonfliktproblem:
Maske ist auf "Mischen RepKonflikte" gesetzt (-> $ConflictAction = 1)
jetzt bearbeiten zwei Leute in jeweils einer Replik-Instanz das selbe Dokument, aber in unterschiedlichen Feldern. Ergebnis nach dem Replizieren (ohne Deine Historie): alles paletti, die Dokumente werden sauber gemerged.
Jetzt mit Deiner Historien-Variante: obwohl unterschiedliche Felder bearbeitet wurden ist doch in beiden Instanzen das/die Historien-Felder geändert ... und das knallt dann beim Replizieren!

Die einzig saubere Variante so etwas abzufangen ist wirklich mit separaten Historien-Dokumenten. Die können dann ja durch einen Nacht-Agenten (nur eine Instanz!) im Haupt-Dokument gesammelt werden.


Thomas

samWare:
Mal ne blöde Frage, aber sind Do Schleifen nicht dafür bekannt dass sie ihr Run-Statement am Ende tragen?

Bsp:

Do
...
...
...
Loop while true

-----------------------

Du hast hier eher die While Syntax angewandt. Sauberer wärs also folgendermaßen:

While (irgendwas=true)
...
...
...
Wend

-----------------------

Kann natürlich sein dass ich mich irre, ich bin mir aber ziemlich sicher ;)
Noch ne Sache: bist du sicher dass er den Document Index neu aufbaut? Müsstest du dazu nicht erst die View refreshen, oder geht dass auch so? :-: Sauberer wärs glaubich mit ner "NotesDocumentCollection" bzw. "NotesViewEntryCollection". Schaus dir doch mal an!

(Kann natürlich sein dass ich mich überall Irre, aber dann hätte ich wenigstens wieder was neues dazugelernt ;))

tooot:

--- Zitat von: samWare am 04.09.09 - 08:58:08 ---Mal ne blöde Frage, aber sind Do Schleifen nicht dafür bekannt dass sie ihr Run-Statement am Ende tragen?
-----------------------

Noch ne Sache: bist du sicher dass er den Document Index neu aufbaut? Müsstest du dazu nicht erst die View refreshen, oder geht dass auch so? :-: Sauberer wärs glaubich mit ner "NotesDocumentCollection" bzw. "NotesViewEntryCollection". Schaus dir doch mal an!
(Kann natürlich sein dass ich mich überall Irre, aber dann hätte ich wenigstens wieder was neues dazugelernt ;))

--- Ende Zitat ---

Hey, also das mit der Do Schleife stand so in der Literatur...

Also die View wird automatisch aktualisiert... habe mich da auch gewundert mein erster Ansatz sah da auch anders aus^^...

Die NotesDocumentCollection usw. schau ich mir natürlich noch an...

samWare:
Hab auch eben noch in der LS-Hilfe nachgeschaut... Krank^^

Hier damit du verstehst warum ich das nicht verstanden habe: Die Do-While Schleife (eig. überall das selbe)

Bitte nicht böse sein, ich habs nur gut gemeint  :knuddel: :love:

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln