Lotus Notes / Domino Sonstiges > Help-Desk Applikation !!Help!!
Übernahme von Mails aus anderen als der eigenen Mailbox
(1/1)
pur_berger:
So - keine Angst - ich beschäftige mich eh schon selber damit ...
Also - ich habe mal versucht das zu tun (und zu verstehen) was mir so erklär wurde ...
-> die Function wird im lib.appl.functions aufgerufen - unter "InsertFullEmail"
-> Orginal heißt es
Set dbMail = New NotesDatabase("","")
Call dbMail.OpenMail
If Not dbMail.IsOpen Then Error 1001, "Could not open user's mailfile"
-> wenn ich es richtig verstehe müßte ich lediglich New Notes Database ("","") gegen New Notes Fabase ("","unser Pfad zum File") tauschen
So - zum testen hab ich das mal direkt versucht - in der Annahme das dann der Button schon diese Funkzion ausführt ... nada.
Dann hab ich mal versucht den BUtton zu finden - sind das die "Transform Mail" Button?
Um ein neues Object in die Library einzufügen - reicht es da z.B. den Inhalt aus InsertFullEmail in zum Beispiel Terminate zu kopieren, einen neuen Namen zu geben und zu sichern (so hab' ich es zumindest versucht)
Pfrrrr - ich find nicht mehr weiter ...
Also - konkret:
Bitte
- wo in welcher View sind die Mail >> Ticket Buttons definiert?
- lauf ich komplett falsch in meinem Vorgehen?
- die alte IT Support Datenbanl arbeited mit standardViews und $Inbox
Ich weiß ist nervig - nur für uns ist das wirklich wichtig umd die Datenbank vernünftig zu benutzen ...
Besten Dank
eknori (retired):
Hier ein QuickHack:
Fuege folgenden Code in die Lib LS.Ticket hinter der letzten Funktion ein.
--- Code: ---Public Function CreateFromMailOther ( strView As String ) As Boolean
CreateFromMailOther = False
Dim uiws As New NotesUIWorkspace
Dim s As New NotesSession
Dim dbThis As NotesDatabase
Dim item As NotesItem
Dim rtitem As NotesRichTextItem
Dim dbMail As NotesDatabase
Dim docMail As NotesDocument
Dim docTicket As NotesDocument
Dim collMail As NotesDocumentCollection
Dim namesfield As Variant
Set dbThis = s.CurrentDatabase
Set dbMail = Nothing
Set dbMail = New NotesDatabase("[b]DeinServer[/b]","[b]DieDatenbank[/b]")
'Call dbMail.OpenMail
If Not dbMail.IsOpen Then Error 1001, "Could not open user's mailfile"
Set collMail = uiws.PickListCollection ( PICKLIST_CUSTOM, False, dbMail.Server, dbMail.FilePath, _
strView, "Transform Mail To Ticket", "Please select an e-Mail: ")
If collMail.Count = 0 Then Exit Function 'No document selected
Set docMail = collMail.GetFirstDocument
Set docTicket = Me.Create
Set item = docTicket.ReplaceItemValue ( "TransformMail", "1" )
Set item = docTicket.ReplaceItemValue ( "EnteredBy", "0" )
Set item = docMail.GetFirstItem( "Subject" )
Set item = docTicket.ReplaceItemValue ( "Problem", item.text )
Set item = docMail.GetFirstItem( "From" )
Set item = docTicket.ReplaceItemValue ( "user", item.text )
' build the reader and the authors field if necessary
If Ucase(Me.GetConfiguration("LockDocumentsgeneral"))="YES" Then
' create the readers field
namesfield = CreateNamesField(docTicket,"LockDocumentsTicketReaders")
If Isarray( namesfield) = True Then
Set item = docTicket.ReplaceItemValue("AReaders",namesfield)
item.IsReaders = True
End If
' create the authors field
namesfield = CreateNamesField(docTicket,"LockDocumentsTicketAuthors")
If Isarray( namesfield) = True Then
Set item = docTicket.ReplaceItemValue("AAuthors",namesfield)
item.IsAuthors = True
End If
End If
Dim AppendMailAsReponse As Boolean
AppendMailAsReponse = False
If Me.GetConfiguration ( "CREATE_FROM_MAIL_APPEND" ) = "YES" Then
' CREATE_FROM_MAIL_APPEND ( DEFAULT = NO )
AppendMailAsReponse = True
End If
If docMail.HasItem ( "Body" ) And Not AppendMailAsReponse Then
Set rtItem = New NotesRichTextItem (docTicket, "Body" )
Call rtItem.AppendRTItem (docMail.GetFirstItem( "Body" )) ' Get Mail Body
Call docTicket.Save (True, True )
Else
Call docTicket.Save (True, True )
Dim newmaildocUNID As String
newmaildocUNID = MoveToOtherDocument( dbthis, docMail, docTicket.UniversalID )
End If
CreateFromMailOther = True
End Function
--- Ende Code ---
Set dbMail = New NotesDatabase("DeinServer","DieDatenbank")
an den fett markierten Stellen must du entspechende Werte eintragen.
Dan aenderst du den Aufruf in der ShearedAction "TransformMail" in
--- Code: ---Sub Click(Source As Button)
Dim ok As Boolean
Dim t As New Ticket ' Create BE Ticket Object
ok = t.CreateFromMailOther ( "($inbox)" )
End Sub
--- Ende Code ---
Fertig ...
pur_berger:
Jo - Du bist mein Hero ;) - ich geh' heut in den Stephansdom und spende Dir ein Kerzerl - hat auf anhieb geklappt!
Danke Danke Danke!
Navigation
[0] Themen-Index
Zur normalen Ansicht wechseln