Das Notes Forum

Domino 9 und frühere Versionen => ND9: Administration & Userprobleme => Thema gestartet von: Günther Rupitz am 25.09.15 - 11:58:21

Titel: Ungelöstes Problem 2. Postfach / 2. externe Emailadresse
Beitrag von: Günther Rupitz am 25.09.15 - 11:58:21
Hallo

IBM hat mit Notes ja den Ansatz ein Benutzer - Ein Postfach. Ein Umschalten zwischen Postfächern a la Outlook ist ja nicht vorgesehen (zumindest nicht ohne Hürden).

Es gibt hier im Forum ja bereits einige Threads zu diesem Thema, gelöst ist das Problem aus meiner sicht aber nicht.

Ich möchte jetzt mal zusammenfassen welche Lösungsmöglichkeiten es zu dem Thema gibt und bitte um Ergänzungen/Korrigieren.

A. Anforderung beide Postfächer müssen am Mobiltelefon verfügbar sein.

Hier gibt es nur die Möglichkeit 2 Notes-Benutzer anzulegen die vollkommen getrennt sind.
Sofern es sich nicht um ein iPhone handelt muss ein Account über ActiveSync konfiguriert werden.

Meist muss man den sekundären Account intern "unkenntlich machen", damit interne Benutzer nicht versehentlich emails dorthin senden, wenn es nur um eine getrennte 2. externe Emailadresse gehen soll.

B. Anforderung nur das primäre Postfach muss am Mobiltelefon verfügbar sein

1. 2 externe Emailadressen laufen in ein gemeinsames Postfach.

Das Umschalten beim Senden läuft über den Wechsel der Arbeitsumgebung. 2. Emailadresse ist alias im Personendokument.
In einer der Arbeitsumgebungen muss das aktualisieren aufgrund der Serverdaten deaktiviert werden, da sonnst die Emailadresse immer wieder überschrieben wird. Außerdem ist die Gefahr groß, dass der Benutzer vor Dem Senden vergisst die Arbeitsumgebung zu wechseln und mit der falschen Emailadresse versendet.
Zusätzlich muss auch das Problem gelöst werden, dass die sekundäre Emailadresse wahrscheinlich auch eine andere Emailsignatur benötigt.

2. primäres Postfach mit Standard-Schablone, sekundäres ebenfalls.

Sekundäre Adresse muss über MailIn Datenbank konfiguriert werden.
Hier hat man das Problem, dass Notes bei gesendeten Emails als Absender die Emailadresse des Postfaches angibt, als zweiten Eintrag aber der originale Absender aufscheint. Das will man in den meisten Fällen aber nicht.

3. primäres Postfach mit Standard-Schablone, sekundäres mit OpenNTF-Teammailbox.

http://teammail.openntf.org/ (http://teammail.openntf.org/)

Sekundäre Adresse muss über MailIn Datenbank konfiguriert werden.
Problem ist, dass die TeamMailbox ein sehr altes Design hat und nur auf Deutsch und Englisch verfügbar ist. HTML Signaturen sind nicht möglich.

Titel: Re: Ungelöstes Problem 2. Postfach / 2. externe Emailadresse
Beitrag von: Tode am 25.09.15 - 13:15:17
Sehr schön zusammengefasst.

Ich habe noch eine Variante für 1.2: Ich habe für einen Kunden die Mailschablone so angepasst, dass rechts oben, dort wo die "Zustäzlichen Mailoptionen" eingeblendet werden ein Drop- Down- Feld mit möglichen Absendern ist. Der Anwender wählt hier die richtige Adresse (sieht natürlich auch immer, welche gerade gewählt ist), und das "Arbeitsumgebungswechseln" wird quasi "dynamisch" beim senden gemacht. Die Geschichte mit den zwei Signaturen ist über eine entsprechende Anpassung des Kalenderprofils geregelt, da gibt es zwei Richtextfelder für Signaturen, und natürlich auch zwei "Signatur einfügen"- Buttons...

Titel: Re: Ungelöstes Problem 2. Postfach / 2. externe Emailadresse
Beitrag von: Günther Rupitz am 25.09.15 - 13:25:16
Ich habe für einen Kunden die Mailschablone so angepasst, dass rechts oben, dort wo die "Zustäzlichen Mailoptionen" eingeblendet werden ein Drop- Down- Feld mit möglichen Absendern ist.

Cool, wie überschreibst du dort die Absender-Emailadresse? Gibts hier ein Code-Snippet?
Ich muss nämlich gestehen, dass ich den Code der Mailschablone disbezüglich noch nie debuggt habe.

Günther
Titel: Re: Ungelöstes Problem 2. Postfach / 2. externe Emailadresse
Beitrag von: realbad am 25.09.15 - 13:48:39
Der Button würde uns auch helfen, da einige User für diverse Gesellschaften Mails versenden müssen. Da würde man sich die Konfig am Client schön sparen.

Titel: Re: Ungelöstes Problem 2. Postfach / 2. externe Emailadresse
Beitrag von: Tode am 25.09.15 - 16:06:29
Ja, da habe ich die Büchse der Pandorra geöffnet mit meinem Post... Der Code ist ziemlich "hässlich" um zu funktionieren (habe da lange dran rumgefeilt). Ist aber schon ein paar Jahre her, heute würde der Code wieder ganz anders aussehen. Ich binde für die Funktionen eine eigene Teilmaske ein, und da gibt es die Felder "UserIsOwner" (in diesem Beispiel darf nur der Owner einer Datenbank die Funktion verwenden) und "INetFromCustom" (das Dialoglistenfeld mit den erlaubten Absendeadressen):

Im QuerySend der Teilmaske steht folgender Code:
Code
If Continue Then	
		Call ChangeSenderAddressInPAB( source.Document )
End If
Funktion ChangeSenderAddressInPAB:
Code
	Dim ws As New NotesUIWorkspace
	
	Dim ses As New NotesSession
	Dim db As NotesDatabase
	Dim doc As NotesDocument
	Dim uidoc As NotesUIDocument
	
	Dim locationString As String
	Dim noteID As String
	
	Dim newSender As String, oldSender As String
	Dim isOwner As Integer
	
	newSender = memo.GetItemValue( "INetFromCustom" )( 0 )	
	isOwner = memo.GetItemValue( "UserIsOwner" )( 0 )	
	If newSender = "" Or isOwner <> 1 Then Exit Sub
	
	Set db = New NotesDatabase( "" , "names.nsf" )
	locationString = ses.GetEnvironmentString( "Location" , True )
	noteID = StrToken( locationString , "," , 2 )
	
	Set doc = db.GetDocumentByID( noteID )
	oldSender = doc.GetItemValue( "ImailAddress" )( 0 )
	If oldSender <> newSender Then
		Call doc.ReplaceItemValue( "CustomImailAddress" , oldSender )
		Call doc.ReplaceItemValue( "ImailAddress" , newSender )
		Call doc.Save( True , True )
		Set uidoc = ws.EditDocument( True , doc )
		Call uidoc.Save()
		Call uidoc.Close(True)
		Call ws.SetCurrentLocation( doc.GetItemValue( "Name" )( 0 ) )
	End If
	
	Call memo.ReplaceItemValue( "INetFrom" , newSender )

Dann im Postsend der Teilmaske:
Code
	Call 	ResetSenderAddressInPAB( source.Document )
Funktion ResetSenderAddressInPAB:
Code
Sub ResetSenderAddressInPAB( memo As NotesDocument )
	Dim ws As New NotesUIWorkspace
	
	Dim ses As New NotesSession
	Dim db As NotesDatabase
	Dim doc As NotesDocument
	Dim uidoc As NotesUIDocument
	
	Dim locationString As String
	Dim noteID As String
	
	Dim newSender As String, oldSender As String
	Dim isOwner As Integer
	
	isOwner = memo.GetItemValue( "UserIsOwner" )( 0 )	
	
	If isOwner = 1 Then Exit Sub
	
	Set db = New NotesDatabase( "" , "names.nsf" )
	locationString = ses.GetEnvironmentString( "Location" , True )
	noteID = StrToken( locationString , "," , 2 )
	
	Set doc = db.GetDocumentByID( noteID )
	oldSender = doc.GetItemValue( "CustomImailAddress" )( 0 )
	If oldSender <> "" Then
		Call doc.RemoveItem( "CustomImailAddress" )
		Call doc.ReplaceItemValue( "ImailAddress" , oldSender )
		Call doc.Save( True , True )
		Set uidoc = ws.EditDocument( True , doc )
		Call uidoc.Save()
		Call uidoc.Close(True)
		Call ws.SetCurrentLocation( doc.GetItemValue( "Name" )( 0 ) )
	End If	
End Sub