Domino 9 und frühere Versionen > ND8: Entwicklung
manuell gehts, auf Server gehts nicht ???
Alexander 28:
Ich Versuchs nochmal! Es muss doch jemand eine Idee haben!? ???
Ich habe in einer MailIn-Datenbank einen periodischen Agenten, der eingehende E-Mails in Supportcalls wandelt. Hierfür liest er aus den eingegangenen E-Mails einige Felder aus und legt anschließend neue Supportcalldokumente an und überträgt dorthin die ausgelesenen Informationen. Das klappt soweit auch wunderbar. Lediglich beim Feld BODY habe ich ein Problem. Das Feld wird nicht in den Supportcall in das Zielfeld "SC_Langbeschreibung" übertragen. Das phänomenale daran ist, dass es einwandfrei funktioniert, wenn ich den periodischen Agenten im Frontend von Hand starte. Lasse ich den Agenten allerdings vom Server ausführen, bleibt das Feld schlicht leer. Das Problem ist erst aufgetreten, nachdem der Server auf 8.5.1 FP2 umgestellt wurde. Vorher war es ein 7er Server und es gab nie Probleme.
Hat jemand eine Idee woran das liegen kann?
Dim zielitem As NotesRichTextItem
Dim newcallbody As NotesRichTextItem
Set newcallbody = New NotesRichtextItem(newcall,"SC_Langbeschreibung")
Forall i In doc.Items
If i.Name = "Body" Then
If ( i.Type = RICHTEXT ) Then
'wenn BODY ein RTF ist alles inkl. Anhänge in den neuen Call kopieren
Set zielitem = i
Call newcallbody.AppendRTItem( zielitem )
Else
'wenn Body kein RTF dann nur das Textfeld kopieren
Call newcallbody.AppendText( doc.GetItemValue( i.name )(0) )
End If
End If
End Forall
Es werden auch keinerlei Fehlermeldungen auf der Konsole ausgegeben. Die Protokolldatei gibt ebenfalls nichts her. Eine Fehlerabfangroutine ist implementiert. Es muss also eine andere Ursache geben.
Ralf_M_Petter:
Hallo!
Es ist halt mühsam, zu antworten, wenn du essentielle Informationen einfach weglässt, z.B. welches ServerOS du verwendest. Ob du schon mal versucht hast, das ganze zu debuggen und und und.
Grüße
Ralf
P.S. Wobei dein Code mir ein absolutes Rätsel ist. Warum gehst du alle Items durch. Ein einfaches doc.getFirstItem("Body") sollte deinen Code doch etwas vereinfachen.
atbits:
Willst Du uns vera****
Den gleichen Post hast Du gestern schon gemacht hier in diesem Forum gemacht ???
http://atnotes.de/index.php/topic,48727.msg312864.html#msg312864
Das ist nicht die feine englische Art - das ist gar keine
botschi:
Ich denke auch, dass in dem ersten Post schon viele hilfreiche Antworten enthalten sind.
Abgesehen von den fehlenden Infos (OS? Leserfelder? Autorenfelder? Rollen?), hast Du uns auch nicht den ganzen Kot gezeigt- wenn wirklich eine Fehlerabfangroutine enthalten sein sollte.
Einige der Tipps hast Du ja auch sogar schon umgesetzt. Wenn Du jetzt auch noch an den richtigen Stellen ein "Print" setzt und Sachen und Dinge ausgeben lässt, siehst Du auch auf der Serverkonsole etwas.
Matthias
Alexander 28:
@atbits
Ich will überhaupt niemanden verarschen. Danke für den konstruktiven Hinweis. >:D
@Ralf_M_Petter
Damit habe ich es deshalb nicht gemacht, da in der Hilfe des Designers folgender Text steht: "Given a name, returns the first item of the specified name belonging to the document." Da ich allerdings natürlich sehr häufig mehr als nur ein BODY-Feld habe, ergibt sich dann natürlich ein Problem.
@Infos ===>
Als Betriebssystem setzen wir ein: Windows 2008 Server, Enterprise, 64 Bit
Ich habe schon jede Menge Prints in den Code eingebaut. Allerdings passiert da gar nichts. Was genau soll ich denn Printen? Die Fehlerabfangroutine lautet:
ErrorHandler:
Print "Eingänge, Prozedur: 'Hauptcall', Fehler in Zeile: " & Erl & " (Error" & Str(Err) & ": " & Error$ & ")"
Resume Next
Da aber offensichtlich kein Fehler entsteht, kommt diese Routine gar nicht zum Tragen und somit wird auch nichts im Protokoll gelistet.
Es gibt keinerlei Leser- oder Autorenfelder in den Quelldokumenten. Diese werden erst in den neu erstellten Supportdokumenten gesetzt, nachdem alle Informationen ausgelesen und übertragen wurden.
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln