Domino 9 und frühere Versionen > ND6: Entwicklung
!!HELP!! Version 1.0.9 released
Thomas Schulte:
--- Zitat von: Coach am 06.06.05 - 13:03:17 ---leider tut.S das auch nicht. Alle anderen Aufgaben des Agenten werden abgewickelt. Der Agent NewCall hat funktioniert. Auch ein Test des Dispatcher brachte keine Fehler.
--- Ende Zitat ---
Also als erstes. NewCall ist Deprecated. Den gibt es nicht mehr in der Version 1.09. Hast du den noch drin dann ist irgendetwas mit der Gestaltungsaktualisierung deiner Datenbank schief gelaufen.
Der Dispatch muss laufen. Schau dir das Protokoll des Agents an ob er überhaupt läuft. (Konfiguration/Agenten(Start/Stop)). da gibt es einen Punkt Last Run: Welches Datum/Uhrzeit steht da?
Dann gibt es in der Neuen Version ein Error Logging, das aber erst einmal eingeschaltet werden muss.
OpenLogEnabled = NO, LOGScriptErrors = YES, ResumeMethod = EXITPOINT. Dann werden Script Fehler in das interne LOG geschrieben.
Sonst kannst du noch in deiner Mail.box nachschauen, da dieses Script die Mails da direkt reinstellt. Vielleicht sind die einfach hängengeblieben weil Adressen falsch sind, oder der User der den Agent gestartet hat hat nicht das Recht Dokumente in der Mail.box zu erstellen. ??Geht das überhaupt??
Wenn du mit dem Debugger drauf gehst und den Agent manuell startest, dann gibt es abhängig von deinen Einstellungen zwei Punkte an denen er halten müsste.
Entweder hier:
' Check if the document should be mailed immediate
If MailInformation = "YES" Then
If MailResponseAsSummary = "YES" Then
' save the content of this document to a list. The field Asubject is used
If Iselement(documentEntryList(newdoc.Universalid)) = False Then
documententrylist(newdoc.UniversalID).doclink = newdoc.UniversalID
Set item = newdoc.GetFirstItem(GetConfigDocByKey("MailIfNewMailResponseBodyFieldName"))
documententrylist(newdoc.UniversalID).docsummary = item.Values
documententrylist(newdoc.UniversalID).doctype = newdoc.formType(0)
End If
Else
' send this document as mail
HIER
OK = Spoofmessage(GetConfigDocByKey("sendMailonBehalfof"), Strusername, Nothing,interactivemessages("msgDispatchNotificationMailSubjectSingleMail"),_
interactivemessages("msgDispatchNotificationMailBodySingleMail"),newdoc,"",GetConfigDocByKey("MailIfNewMailResponseBodyFieldName"),True)
End If
End If
oder an dieser Stelle:
' mail the information about the new documents to the users in that list in one block
If Mailinformation = "YES" And MailResponseAsSummary = "YES" Then
Forall UserstoMailto In userdclist
' Create a new document for the purpose of creating the rtitem that is needed. This document will not be saved
Set notification = New NotesDocument(db)
Set richStyle = s.CreateRichTextStyle
Set rtitem = New NotesRichTextItem( notification, "Body")
' Get the list of the documents related to that specific user
Documentslist = Split(UserstoMailTo,"~")
' gather the informations for each document from this ID
For i = 0 To Ubound(Documentslist)
' find the document that has to be used
' put the Information into the body field
Set currentnote = db.GetDocumentByUNID(Documentslist(i))
' define the weblink should be done depending on a configuration document later on
'wMailWeb = |<a href=" http://| + serverURL +|/|+ databasepath+|viwSearchDocumentsByUNID/|+ currentnote.universalid + |" target="fsaMainView">| + documententrylist(Documentslist(i)).doctype + |</a>|
'webMail =|http://| + serverURL +|/|+ databasepath+|/viwSearchDocumentsByUNID/|+ currentnote.universalid + |%20target=%22fsaMainView%22|
' append the found values for form type, status and summary
richStyle.Bold = True
Call rtitem.AppendStyle(richStyle)
Call rtitem.appendtext(documententrylist(Documentslist(i)).doctype )
richStyle.Bold = False
Call rtitem.AppendStyle(richStyle)
Call rtitem.AddNewline(1)
For j = 0 To Ubound(documententrylist(Documentslist(i)).docsummary)
Call rtitem.appendtext(documententrylist(Documentslist(i)).docsummary(j))
Call rtitem.AddNewline(1)
Next
Call rtitem.AppendDocLink (currentnote, db.Title)
'Call rtitem.appendtext(WebMail)
Call rtitem.AddNewline(2)
Next
' combine all informations and send one mail for each supporter
' send this document as mail
HIER
OK = Spoofmessagewithitem(_
GetConfigDocByKey("sendMailonBehalfof"),_
Strusername,_
Nothing,_
interactivemessages("msgDispatchNotificationMailSubjectSingleMail"),_
interactivemessages("msgDispatchNotificationMailBodySingleMail"),_
rtitem)
End Forall
Wenn du da wo jetzt HIER steht ein Stop reinsetzt dann kannst du gezielt nachschauen ob er in diesen Bereich reinspringt. Tut er das dann sollte der Rest eigentlich auch funktionieren.
Coach:
Hi,
erstmal Danke für die Hilfe, aber leider scheint nichts wirklich zu Helfen. Ich habe die Breakpoints gesetzt, aber diese werden - ohne mit der Wiper zu zucken - einfach übergangen.
Im Bereich 'send this document as mail ist die Variable Strusername leer, Wenn ich jetzt mit dem Debugger einen Schritt weitergehe (ab ' remove this specific dokument from the collection because there was an error) läuft das Script bis zum Schluß durch, ohne eine Mail zu versenden.
Der Agent NewCall ist nach dem Update nicht mehr vorhanden, unter 1.08 hat er noch funktioniert, unter 1.09 konnte ich den Agenten natürlich nicht ausprobieren. Rechtemäßig gibt es für mich auf dem auzuführenden Server keine Beschränkungen (gott sei dank).
Nils
Thomas Schulte:
--- Zitat von: Coach am 06.06.05 - 15:50:58 ---Im Bereich 'send this document as mail ist die Variable Strusername leer, Wenn ich jetzt mit dem Debugger einen Schritt weitergehe (ab ' remove this specific dokument from the collection because there was an error) läuft das Script bis zum Schluß durch, ohne eine Mail zu versenden.
--- Ende Zitat ---
OK das ist für Remote Debugging schon etwas mehr info.
Das Problem scheint hier
Forall v In founditem.Values
If Not(Trim(v)="") Then
strusername = CanonicalNameString (Cstr(v))
zu liegen.
Da wird der Wert des Feldes Supporter ausgelesen und mit den Funktion CanonicalNameString umgewandelt. Das dürfte eigentlich auf GAR KEINEN FALL einen leeren Wert zurückbekommen.
Frage eins: Was steht in der Variablen V drin bevor die Funktion CanonicalNameString aufgerufen wird?
Und die zweite Frage: hast du die Log Parameter gesetzt und mal nachgeschaut ob es da einträge in der LOG Ansicht gibt.
Dritte Frage die mir gerade eingefallen ist. hast du beim Supporter für dieses Ticket überhaupt einen Wert drin? Und wenn ja welchen? Ist das eine Gruppe oder eine Person und wenn es eine Gruppe ist hat die eine Mail Adresse?
Thomas Schulte:
Ach ja und setz mal MailIfNewMailResponseCheckNames auf "NO"l
Thomas Schulte:
Also bei mir auf den Systemen läuft das von hinten nach vorne und zurück ohne Probleme. Selbst wenn ich absichtlich Fehler verursache also z.B. Supporter Namen falsch schreibe und so.
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln