// Dokument erstellen
portalxsp = dbPortal.createDocument();
....
JSONObject angebote = getAngebote(benutzer, datum, waehrung);
// JSON Daten in Richtextfeld speichern
if (portalxsp.hasItem("angebote")) {
portalxsp.removeItem("angebote");
}
rtItem = (RichTextItem) portalxsp.createRichTextItem("angebote");
rtItem.appendText(angebote.toString());
rtItem.update();
rtItem.recycle();
... (weitere Methoden) ...
portalxsp.save(true, false);
portalxsp.recycle();
private JSONObject getAngebote(Document docbenutzer, Calendar datum, String waehrung) {
List<JSONObject> angebote = new ArrayList<JSONObject>();
try {
Date date = datum.getTime();
// mit Berechtigungen von ausgewählten Benutzer filtern
StringBuilder suchString = new StringBuilder();
suchString.append(berechtigungsMap.get(docbenutzer.getItemValueString("Benutzer")));
String kd = "KD";
suchString.append(" AND Field Angebotsdatum = " + dfddMyyyy.format(date));
// keine Kundendienstaufträge anzeigen
suchString.append(" AND NOT (Field ProduktGruppe = \"" + kd + "\")");
viewAngeboteXSP.FTSearch(suchString.toString());
ViewEntryCollection col = viewAngeboteXSP.getAllEntries();
ViewEntry ve = col.getFirstEntry();
while (ve != null) {
JSONObject angebot = new JSONObject();
Vector colVals = ve.getColumnValues();
angebot.put("Kundenname", colVals.get(11).toString().trim());
angebot.put("Angebot", colVals.get(3));
angebot.put("DoklinkAngebot", colVals.get(8));
angebot.put("Produktgruppe", colVals.get(10).toString().trim());
BigDecimal betrag = BigDecimal.ZERO;
Object betragObj = colVals.get(7);
if (betragObj instanceof Double) {
betrag = new BigDecimal((Double) betragObj).setScale(2, BigDecimal.ROUND_HALF_UP);
} else {
betrag = BigDecimal.ZERO;
}
angebot.put("Wert", umwandelnBetrag("EUR", waehrung, betrag, date));
// aktuelle Daten zu Array hinzufügen
angebote.add(angebot);
// nächsten Eintrag lesen
ViewEntry tmpve = ve;
ve = col.getNextEntry();
tmpve.recycle();
}
col.recycle();
int len = angebote.size();
if (len > 1) {
// Sortieren nach KdNr, Angebot
angebote.sort(new ComparatorAngebot());
}
JSONObject jsonResult = new JSONObject();
jsonResult.put("data", angebote);
return jsonResult;
} catch (Exception e) {
try {
System.err.println("Fehler in getAngebote bei Benutzer " + docbenutzer.getItemValueString("Benutzer"));
} catch (NotesException e1) {
e1.printStackTrace();
}
e.printStackTrace();
}
return null;
}
Agent Manager: Agent printing: ThreadGroup UTG: JavaAgent, objid = 1751964594
Agent Manager: Agent printing: subgroups = 0
Agent Manager: Agent printing: total threads = 2
Agent Manager: Agent printing: Thread Name, ThreadID, ThreadGroup
Agent Manager: Agent printing: AS400 Read Daemon [system:ATARTW01;job:515458/QUSER/QZDASOINIT], -663952502, UTG: JavaAgent
Agent Manager: Agent printing: AgentThread: JavaAgent, 1991637412, UTG: JavaAgent
############################################################
### thread 2/131: [ nserver: 04f8: 13a8]
############################################################
[ 1] 0x7FF874F55D14 ntdll.ZwWaitForSingleObject+20 (0,7FF84EE114B6,21E32D2ED14,3ED044EE18F0D)
[ 2] 0x7FF8715C6D1F KERNELBASE.WaitForSingleObjectEx+143 (0,3FF00000000,0,608)
@[ 3] 0x7FF84EE13E89 nnotes.WaitOnNativeSemaphore+153 (ffffffff,7FF851921C28,0,0)
@[ 4] 0x7FF84EE12345 nnotes.OSWaitEvent+149 (21E30C0858C,3e8,0,3e8)
@[ 5] 0x7FF84F611414 nnotes.MQGetExtended+436 (3C00011648,3CC1DBF5C0,310,0)
@[ 6] 0x7FF84F6111E2 nnotes.MQGet+50 (0,21E2F830000,0,0)
@[ 7] 0x7FF84F5DD66D nnotes.fileWriterT+125 (21E32B30000,0,0,0)
@[ 8] 0x7FF84EDEF688 nnotes.ThreadWrapper+264 (0,0,0,0)
[ 9] 0x7FF8735B84D4 KERNEL32.BaseThreadInitThunk+20 (0,0,0,0)
[10] 0x7FF874F01791 ntdll.RtlUserThreadStart+33 (0,0,0,0)
....
############################################################
### thread 120/131: [ nserver: 04f8: 0f44] FATAL THREAD (Panic)
############################################################
[ 1] 0x7FF874F55D14 ntdll.ZwWaitForSingleObject+20 (68736100000010,0,0,3CC95F90E0)
[ 2] 0x7FF8715C6D1F KERNELBASE.WaitForSingleObjectEx+143 (10,FFFFFFFFFFFFFFF,7FF800000000,257c)
@[ 3] 0x7FF84EDDCAEA nnotes.OSRunExternalScript+1546 (5,0,179c,0)
@[ 4] 0x7FF84EDD917C nnotes.FRTerminateWindowsResources+1532 (5,0,0,1)
@[ 5] 0x7FF84EDDAB63 nnotes.OSFaultCleanupExt+1395 (0,5670,0,3CC95FD8A0)
@[ 6] 0x7FF84EDDA5E7 nnotes.OSFaultCleanup+23 (5670,0,0,0)
@[ 7] 0x7FF84EE47856 nnotes.OSNTUnhandledExceptionFilter+390 (3CC95FA820,7FF8503F62D8,3CC95FD8A0,FFFFE1E99563353)
@[ 8] 0x7FF84EDDD77A nnotes.Panic+1066 (1670,1258A4D003604C9,9,4f8)
@[ 9] 0x7FF8691023BD nserverl.CheckTheProcesses+461 (800207ea,3C00000055,1670,2)
@[10] 0x7FF8691047E0 nserverl.ProcessMonitorTask+368 (88,0,7FF8731B0000,0)
@[11] 0x7FF869101A78 nserverl.Scheduler+888 (0,0,d215005c,21E38C58BF0)
@[12] 0x7FF84EDEF688 nnotes.ThreadWrapper+264 (0,0,0,0)
[13] 0x7FF8735B84D4 KERNEL32.BaseThreadInitThunk+20 (0,0,0,0)
[14] 0x7FF874F01791 ntdll.RtlUserThreadStart+33 (0,0,0,0)