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)
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();
}
}
}
So funktioniert es wunderbar, erstelle halt nur bei jedem Durchgang ein komplett neues Dokument, was ich ja eigentlich nicht will.