Post by Joachim ArraszWeiterhin suche ich einfach mal Tutorial, wie man z.B einen Agenten
schreibt, der meinetwegen Kalenderdaten updated, ausliesst oder
einträgt.
Die Kalenderdaten sind in der persönlichen Mail Datenbank; innerhalb
dieser würdest du einen Agenten erstellen. Du öffnest deine Mail
Datenbank im Domino Designer; dort kannst du direkt einen Java Agenten
programmieren oder auch importieren (falls du außerhalb des Designers
entwickelst). Ein Datensatz/Record/Zeile ist in einer Notes DB ein
Document, wobei dieses wiederum Items - Spalten/Felder/Eigenschaften -
enthält. Nicht jedes Dokument enthält alle Felder, wie das klassisch
tabellarisch der Fall wäre - in der DB sind eben auch andere Dokumente,
E-Mails z.B. Was jetzt einen Kalendertermin ausmacht, kann ich nicht
genau sagen - schau dir dazu die Eigenschaften eines Dokuments an. Z.B
hat eine Einladung zu einem Termin andere Dokument Eigenschaften.
Anbei häßlich formatierter Beispielcode, der alle Dokumente anfasst.
import lotus.domino.*;
public class DemoAgent extends DebugAgentBase {
/**
* The code in NotesMain() executes when the agent is launched.
*
* @see lotus.domino.AgentBase#NotesMain()
*/
public void NotesMain() {
try {
// your code start
Session session = getSession();
AgentContext agentContext = session.getAgentContext();
Database db = agentContext.getCurrentDatabase();
//DocumentCollection dc = agentContext.getUnprocessedDocuments();
DocumentCollection dc = db.getAllDocuments();
Document doc = dc.getFirstDocument();
while (doc != null) {
String form = doc.getItemValueString("Form");
if ("Appointment".equals(form)) {
System.out.println("Dies ist womöglich ein Kalendertermin.")
}
doc = dc.getNextDocument();
}
// your code end
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* Runs the agent with Domino AgentRunner tool. (Notes will not use
* the <code>main</code> method.)
*
* @param args the command line arguments.
*/
public static void main(String[] args) throws Exception {
lotus.domino.AgentRunner.main(new String[] { "DemoAgent",
"C:\\Programme\\lotus\\notes\\data\\dev\\devmail.nsf",
"Local" });
}
}
Gruß Kai-Uwe