Domino 9 und frühere Versionen > Entwicklung

Dokumente mit einem Titel einzigartig?

<< < (2/2)

JD:
Okay danke werde mal sehen was Performancemäßig und Realisierungstechnisch am besten für meinen Fall ist.

JD:
Hmmmm wie müsste das denn aussehen wenn das Dokument nicht gelöscht werden soll, sondern erneuert, damit die DB sich nicht unnötig aufbläht???Krieg da immer Probleme mit den Dokumenten.

DIe Lösung sollte dann so aussehen, dass wenn es vorhanden ist nur upgedated wird und wenn nicht vorhanden neu erstellt wird.

Hier mein code der das Dokument löscht (auszug)


--- Code: ---Database database = agentContext.getCurrentDatabase();
DocumentCollection docCollection = agentContext.getUnprocessedDocuments();
Document doc = docCollection.getFirstDocument();
 
View view = database.getView(nameOfView);
Document searchdoc = view.getDocumentByKey(shownName);
               
             
 if (searchdoc != null) //Wenn Dokument schon vorhanden dann..
    {
       searchdoc.remove(true);    
     }
Document joineddoc = database.createDocument(); //Hier wird das neue Dokument erstellt
joineddoc.appendItemValue("JoinName", shownName);
joineddoc.appendItemValue("Form", form);
RichTextItem anzeige = joineddoc.createRichTextItem("anzeige");
RichTextItem rti = joineddoc.createRichTextItem("docfield");        
   
              while (doc != null) {
                  doc.renderToRTItem(rti);
                    anzeige.appendRTItem(rti);
                    doc = docCollection.getNextDocument(doc);
                   
               }  
                                     
                joineddoc.save(true, false);    
                   
      } catch(Exception e) {
         e.printStackTrace();
      }
   }
}

--- Ende Code ---

So funktioniert es wunderbar, erstelle halt nur bei jedem Durchgang ein komplett neues Dokument, was ich ja eigentlich nicht will.

JD:
Das Problem welches ich bei der anderen Lösung hatte, war das ich dem Dokument dass durch getDocByKey erstellt wurde nicht mit dem neuen vertäglich war ich konnte keine Zuweisung vornehmen. Und das erstellen (anhängen) von Werten an die Felder bracht auch nur ärger! Also wenn jemand mal was ähnliches gecodet hat, immer rüber damit  ;D

JD:
Mhhh keiner???? Ich wäre auch schon über einen Ansatz in Lotusscript erfreut, dann könnte ich das quasi nach Java portieren.

Also, altes Dokument soll nicht gelöscht werden, sondern nur die Feldwerte sollen völlig erneuert werden. Wenn das Dokument allerdings noch nicht vorhanden ist, dann soll es es erstellt werden.

Daaanke

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln