Autor Thema: RT-Feld wird im UIDoc ohne Speichern des Backends angezeigt  (Gelesen 2597 mal)

Offline Flox

  • Frischling
  • *
  • Beiträge: 11
  • Geschlecht: Männlich
Hallo Notes-Forum,

ich werde aus folgenedem Notes-Verhalten einfach nicht schlau.

Hier kurz die Fakten:

Ich möchte nach dem Speichern eines neuen Dokuments den im Dokument genannten zuständigen Mitarbeiter informieren. Der bekommt dann eine Info-Mail mit DocLink zu dem entsprechenden Eintrag. Dieser Mailversand läuft im Backend und funktioniert solange der User nicht Einträge aus dem NAB ins PAB kopiert hat und somit Fehler 4295 auftritt ("Nicht eindeutiger Name...." oder so ähnlich).
Diesen Fehler fange ich jetzt explizit in der Fehlerbehandlung ab und verschicke die Mail in dieser im Frontend. Wundersamerweise verschickt er das Dokument nach Auswahl des korrekten Adressaten ohne Probleme inklusive Richtext-Feld, obwohl das Backend-Dokument vorher nicht gespeichert wurde.
Wenn der Code für den Mailversand im FrontEnd direkt in der Prozedur aufgerufen wird alternativ zum Versand im Backend ist das Richtext-Feld leer, weil ich ja das Backend-Dokument vorher nicht gespeichert habe.

Der Mailversand in der Fehlerbehandlung ist mir halt nicht ganz geheuer geschweige denn das ich die Logik von Notes nachvollziehen kann, aber es funktioniert.

Vielleicht hat ja schon jemand Erfahrungen mit diesem Verhalten gesammelt oder kann mich auf meinen Denkfehler hinweisen. Habe halt keine Lust irgendwann einen Berg von verwaisten Dokumenten in meiner DB zu haben die ich im Augenblick gerade übersehe.

Vielen Dank schon mal im voraus

Florian

Hier der Code der entsprechenden SUB:

Code
Sub MemoSend(doc As notesdocument)
	
	Dim ns As New notessession
	Dim ws As New notesuiworkspace
	Dim db As notesdatabase
	Dim MemoDoc As notesdocument
	Dim ErrUIDoc As notesuidocument
	Dim body As NotesRichTextItem
	Dim msg As String
	
	On Error Goto ErrMemoSend
	
	Set db=ns.currentdatabase
	Set MemoDoc =db.createdocument
	Set body=memodoc.createrichtextitem("Body")
	
	msg="Testmail"
	
	
	memodoc.sendto="Florian Benedix"
	memodoc.subject=msg
	
	'Erstellung des Body-Felds inkl. DocLink-----------------------------------------------------------------------------------------------------
	
	Call body.appendtext("_____________________________________________")
	Call body.addnewline(2)			
	Call body.appendtext(msg)
	Call body.addnewline(2)
	Call body.addnewline(2)
	Call body.appendtext("Für weitere Details benutzen Sie den folgenden Link:")
	Call body.addnewline(2)
	Call body.appendtext("---> ")
	Call body.appenddoclink(doc,"Verknüpfung zum neuen Eintrag")
	Call body.appendtext(" <---")
	Call body.addnewline(2)
	Call body.appendtext("Sollten Sie noch keinen Zugang zu der entsprechenden Datenbank haben, können Sie diesen über den folgenden Link einrichten.")
	Call body.addnewline(2)
	Call body.appendtext("---> ")
	Call body.appenddoclink(db,"Verknüpfung zur Datenbank einrichten")
	Call body.appendtext(" <---")
	Call body.addnewline(2)
	Call body.appendtext("Diese Mail wurde automatisch erstellt")
	Call body.addnewline(1)
	Call body.appendtext("_____________________________________________")
	
	'---------------------------------------------------------------------------------------------------------------------------------------------------------------
	'Mailversand Backend
	memodoc.send(False)
	Exit Sub
	
ErrMemoSend:
	If Err=4295 Then
		'Mailversand im Frontend
		Set ErrUIDoc=ws.editdocument(False,memodoc)
		Call ErrUIDoc.Send
		Call ErrUIDoc.Close(True)
	Else
		Msgbox "Beim versenden einer Benachrichtigungsmail ist folgender Fehler aufgetreten:" & Err,48,"Fehler beim Mailversand"
	End If
	Resume ErrExit
ErrExit:
	Exit Sub
End Sub
« Letzte Änderung: 31.03.06 - 09:45:40 von Flox »

Offline diali

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.023
  • Geschlecht: Männlich
Re: RT-Feld wird im UIDoc ohne Speichern des Backends angezeigt
« Antwort #1 am: 29.03.06 - 15:41:26 »
das Dokument Memodoc wurde ja auch noch nicht gespeichert.

Diese Variante Backend-Dokument erstellen (nicht speichern ) und dann im FrontEnd öffnen funktioniert bei Notes 4.x, 5.x und 6.x unterschiedlich.
Gruß
Dirk

Offline Flox

  • Frischling
  • *
  • Beiträge: 11
  • Geschlecht: Männlich
Re: RT-Feld wird im UIDoc ohne Speichern des Backends angezeigt
« Antwort #2 am: 29.03.06 - 15:48:54 »
Danke für die schnelle Antwort,

mein Problem ist aber das Richtext-Feld "Body", wenn ich den Code umschreibe und das

Code
memodoc.send(False)

durch

Code
Set ErrUIDoc=ws.editdocument(False,memodoc)
Call ErrUIDoc.Send
Call ErrUIDoc.Close(True)

erstze also direkt in der Prozedur das Dokument über das Frontend versende bleibt das Richtext-Feld leer.

Aus der Fehlerbehandlung heraus ist das Richtext-Feld gefüllt.

In beiden Fällen ist das Backend-Dokument nicht gespeichert.

Florian

Offline Ralf_M_Petter

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.879
  • Geschlecht: Männlich
  • Jeder ist seines eigenen Glückes Schmied
    • Ralf's Blog
Re: RT-Feld wird im UIDoc ohne Speichern des Backends angezeigt
« Antwort #3 am: 30.03.06 - 13:00:33 »
Nun die Erklärung ist wahrscheinlich ganz einfach. wenn du eine Mail sendest, dann wird das Dokument auch in irgendeiner Form gespeichert. Also auch wenn du die Methode senden aufrufst, sind offensichtlich die fraglichen Codeblöcke die das aktivieren des Rtitems machen bereits durchlaufen worden und obwohl dann danach ein Fehler auftritt, hast du den Rich Text bereits in deinem doc, so dass er auch im Frontend angezeigt werden kann. Das ist aber sicher nicht supported. Ich würde dir daher empfehlen, das Problem an der Wurzel zu packen und den Fehler 4295 zu verhindern. Dazu muss die lokale Arbeitsumgebung richtig konfiguriert werden. Nämlich die Einstellung Empfänger nachschlagen auf Stopp nach der ersten Übereinstimmung setzten. Dann hast du das Problem gar nicht.

Grüße

Ralf
Jede Menge Tipps und Tricks zu IT Themen findet Ihr auf meinem Blog  Everything about IT  Eine wahre Schatzkiste sind aber sicher die Beiträge zu meinem Lieblingsthema Tipps und Tricks zu IBM Notes/Domino Schaut doch einfach mal rein.

Offline Flox

  • Frischling
  • *
  • Beiträge: 11
  • Geschlecht: Männlich
Re: RT-Feld wird im UIDoc ohne Speichern des Backends angezeigt
« Antwort #4 am: 30.03.06 - 20:31:37 »
@Ralf

Du hast sicher Recht mit deinem Einwand. Kann nicht im Sinne des Anwenders sein, dass ihm das Konstrukt nach dem nächsten Update des Clients um die Ohren fliegt. Ich werde mich bezüglich der richtigen Konfiguration der lokalen Arbeitsumgebung wohl mal mit unseren Admins auseinandersetzen.

In jedem Fall vielen Dank für den Hinweis. Ich werde das Thema damit mal als erledigt kennzeichnen.

Flo

Offline Flox

  • Frischling
  • *
  • Beiträge: 11
  • Geschlecht: Männlich
Re: RT-Feld wird im UIDoc ohne Speichern des Backends angezeigt
« Antwort #5 am: 31.03.06 - 09:17:52 »
Muss doch nochmal nachhaken.

Die Einstellung in der lokalen Arbeitsumgebung hat den Nachteil, dass wirklich nicht eindeutige Eingaben ebenfalls an den ersten gefundenen Eintrag versendet werden. Ich erachte es aber durchaus als hilfreich, dass eine Mail an "Bauer" nicht an den erstbesten Bauern versendet wird,  sondern das Notes mich fragt welcher Bauer es denn sein soll.
Meine automatischen Mailbenachrichtigungen werden an den vollständigen Notesnamen adressiert (also eindeutig). Der Fehler 4295 tritt also nur auf bei identischen Einträgen im PAB und NAB auf (leider sieht Notes diese Einträge offensichtlich nicht als identisch an).
Lässt sich diese Problematik wirklich nur organisatorisch lösen, indem ich die Nutzer darauf Hinweise diese doppelten Einträge zu vermeiden oder kennt jemand noch eine andere Lösung?

Florian

Offline Ralf_M_Petter

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.879
  • Geschlecht: Männlich
  • Jeder ist seines eigenen Glückes Schmied
    • Ralf's Blog
Re: RT-Feld wird im UIDoc ohne Speichern des Backends angezeigt
« Antwort #6 am: 31.03.06 - 09:24:38 »
Hallo Florian!

Also was du da erzählst, halte ich nicht für ganz richtig. Wenn keine exakte Übereinstimmung gegegen ist, fragt Notes sehr wohl welchen Bauer du haben willst. Wenn aber eine exakte Übereinstimmung gefunden wurde, warum willst du dann noch weitersuchen. Das du 2 Leute mit exakt dem selben Namen angelegt hast, das kann doch nicht dein Ernst sein. Wie unterscheidest du diese dann in der Auswahlliste.

Ein Beispiel

Du hast in deinen Adressbüchern

Wolfgang Bauer
Herbert Bauer
Walter Bauer

Bei der Einstellung, die ich dir gesagt habe sollte es so sein, dass wenn du Bauer eingibst dann sollte die Auswahlbox kommen. Wenn du Wolfgang Bauer eingibst, sollte keine Auswahlbox kommen sondern er nimmt gleich den richtigen Eintrag.

Wenn du natürlich 2 verschiedene Leute beidemale mit Wolfgang Bauer hast, dann würde ich schon mal die Anlage des Adressbuchs überdenken. Wie gesagt 2 mal der selbe Wolfgang Bauer sollte kein Problem sein.

Grüße

Ralf
Jede Menge Tipps und Tricks zu IT Themen findet Ihr auf meinem Blog  Everything about IT  Eine wahre Schatzkiste sind aber sicher die Beiträge zu meinem Lieblingsthema Tipps und Tricks zu IBM Notes/Domino Schaut doch einfach mal rein.

Offline Flox

  • Frischling
  • *
  • Beiträge: 11
  • Geschlecht: Männlich
Re: RT-Feld wird im UIDoc ohne Speichern des Backends angezeigt
« Antwort #7 am: 31.03.06 - 09:40:54 »
Sorry, mein Fehler!

Ich hatte wirklich einen namentlich identischen Eintrag im persönlichen Adressbuch angelegt um den Fehler 4295 bewußt zu provozieren und habe mit dem Namen auch deinen Tip getestet.

Du hast Recht die Auswahlbox erscheint wie gewünscht bei nicht eindeutigem Namen.

Bin wohl noch nicht ganz wach, brauche offensichtlich dringend Koffein  :)

Also vielen Dank nochmal für die prompte Hilfe

Florian

Offline Ralf_M_Petter

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.879
  • Geschlecht: Männlich
  • Jeder ist seines eigenen Glückes Schmied
    • Ralf's Blog
Re: RT-Feld wird im UIDoc ohne Speichern des Backends angezeigt
« Antwort #8 am: 31.03.06 - 10:00:19 »
Keine Ursache, finde es nett wenn sich auch mal jemand für die Hilfe bedankt. Ist leider nicht immer selbstverständlich.

Grüße

Ralf
Jede Menge Tipps und Tricks zu IT Themen findet Ihr auf meinem Blog  Everything about IT  Eine wahre Schatzkiste sind aber sicher die Beiträge zu meinem Lieblingsthema Tipps und Tricks zu IBM Notes/Domino Schaut doch einfach mal rein.

Offline Flox

  • Frischling
  • *
  • Beiträge: 11
  • Geschlecht: Männlich
Re: RT-Feld wird im UIDoc ohne Speichern des Backends angezeigt
« Antwort #9 am: 31.03.06 - 10:15:53 »
Habe jetzt meinen Kaffee getrunken und noch ein bischen herumprobiert und bin leider immernoch nicht restlos glücklich.

Folgendes Problem ist mir bei meinen Tests aufgefallen.
Wenn der Eintrag im PAB eindeutig ist wird das NAB nicht herangezogen und er versendet die Mail ohne Auswahlbox auch wenn im NAB Adressen existieren, die mit den Namen übereinstimmen.
Wenn der Eintrag im PAB nicht eindeutig ist bekomme ich die Auswahlbox, aber lediglich mit den in Frage kommenden Einträgen aus dem PAB.
Erst wenn Notes im PAB nicht fündig wird komme ich an die Einträge im NAB.

Ich hoffe dieses Verhalten ist nachvollziehbar und nicht wieder Folge einer Fehlerhaften Einstellung meinerseits.

Es reicht also in meinem persönlichen Adressbuch eine z.B. externe Mail-Adresse für einen x-beliebigen "Bauer" gespeichert zu haben und die Vielfachen Einträge im NAB sind nicht mehr zu erreichen.

Florian

Offline Ralf_M_Petter

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.879
  • Geschlecht: Männlich
  • Jeder ist seines eigenen Glückes Schmied
    • Ralf's Blog
Re: RT-Feld wird im UIDoc ohne Speichern des Backends angezeigt
« Antwort #10 am: 31.03.06 - 10:20:23 »
Hm muss ich jetzt passen. Da ich momentan gerade mitten in einer anderen Fehlersuche. Hätte eigentlich angenommen, dass er trotzdem weitersucht. Aber gut, da wir das auch verwenden, muss ich da mal irgendwann nächste Woche suchen. Wäre auch gut, wenn du falls du was rausfindest es hier postest.

Grüße

Ralf
Jede Menge Tipps und Tricks zu IT Themen findet Ihr auf meinem Blog  Everything about IT  Eine wahre Schatzkiste sind aber sicher die Beiträge zu meinem Lieblingsthema Tipps und Tricks zu IBM Notes/Domino Schaut doch einfach mal rein.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz