Autor Thema: Per VB Mailversand Access nach Notes, aber voher die E-Mail Adr. (String) prüfen  (Gelesen 5796 mal)

Offline poppsy

  • Frischling
  • *
  • Beiträge: 7
Hallo Formumianer,

bin neu und habe eine Frage. Eventl. hat einer für mich was passendes....


Ich versende per Code (VB, bzw VBA) in Access2000 ein Text per E-Mail an Lotus Notes 6.5
Die Mail wird an die Empfänger Adressen, die ich per Sting vorher ausgewählt habe, prima übertragen.

Meine Frage aber nun ist. Gibt es hier auch die Möglichkeit vor dem Versenden der E-Mail, aus Access zu prüfen, ob die Empfänger E-Mail Adr. in Notes hinterlegt ist (also der Epfänger-String korrekt geschrieben ist) ?

Ich möchte vermeiden, dass beim Versenden der E-Mail dem user aus Lotos Notes dann eine Fehlermeldung erscheint, wie z.B. Empfänger unbekannt oder so.

Somit kann kann voher geprüft werden ob die e-Mail adr. korrekt ist. Dann brauch der user nicht ständig die Empfänger neu anschreiben nachdem er die Empfängeradr. korrigeirt hat.

Gruß aus Berlin
Ralf


Offline WernerMo

  • @Notes Preisträger
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.050
  • Geschlecht: Männlich
Hallo

herzlich willkommen im Forum.

Wenn ich richtig verstehe, möchtest Du auf das Adressbuch von Notes (names.nsf) zugreifen?

Als Methode von extern bietet sich hier LDAP an.
Einfach mal im Forum danach suchen.

Viele Grüße
Werner
Gruß Werner
  o                                                  o   
 /@\  Nächster @Notes-Stammtisch  /@\  online Sept. 2020?
_/_\__________________________/_\_ Details folgen.

Offline Axel

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
In welcher Datenbank ist denn der Empfängername hinterlegt?


Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline poppsy

  • Frischling
  • *
  • Beiträge: 7
Hallo Werner
Hallo Axel,

Danke schonmal vorab.


also welche Datenbank ? puhhh. Dachte ich mir schon, dass dies nicht so einfach ist.
Komisch ist nur, wenn ich per Notes ein Mail schreibe und in der CC Zeile die Empfänger eintrage, brauche ich ja auch nur auf F9 drücken und er sucht und setzt/ergänzt mir die E-Mail Adr.
Also Notes such doch automatisch die Datenbank ab.
Nur welche, und wie die heißen?
Keine Ahnung.
Ich dachte das geht auch irgendwie per VB mit einem Code. Indem dann False oder Thrue zurückgegeben wird von Notes.

Giebt es sowas?
Geht sowas?

Gruß Ralf

Offline Axel

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Je nach den Einstellungen in der Arbeitsumgebung kopmmen dafür das persönliche Adressbuch des Anwenders und/oder das öffentliche Adressbuch (Domino Directory) in Frage.

Ich dachte das geht auch irgendwie per VB mit einem Code. Indem dann False oder Thrue zurückgegeben wird von Notes.

Giebt es sowas?
Geht sowas?

Geben tut's da nix.

Gehen tut so was schon, aber nur mit Programmieraufwand


Axel

Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline poppsy

  • Frischling
  • *
  • Beiträge: 7
Axel,

genau das meine ich! Und genau sowas suche ich.

Das ist doch schon mal prima. Nur wüsste ich gerne wer hier mir da einen Ansatz geben kann wie die Prozedur in VB lauten müsste.....

Gibt es hierfür schon was im Forum? (unter welchen Suchbegriff sollte ich da schauen?)
Oder hast Du da schon etwas in Deinen Programmen eingebaut (VB technisch)

Danke schon mal vorab
Gruß Ralf
aus dem verregneten Berlin :-(

Offline koehlerbv

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Du müsstest Dich selbst auf Adresssuche begeben. Hierzu müsste auf dem Domino-Server das Domino Directory (names.nsf) instantiiert werden. Dort gibt es eine Ansicht namens "($Users)" - und dort müsste dann die Mailadresse stehen, wenn sie korrekt ist (NotesView.GetDocumentByKey (adresse, True).
Das funktioniert auf jeden Fall von VBA aus - Zugang zum Domino vorausgesetzt, sonst geht es gar nicht.

HTH,
Bernhard (im verschneiten Chiemgau)

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Ich würd auf notesSession.AddressBooks setzten, um alle für den User relevanten Adressbücher zu durchsuchen.
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline koehlerbv

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Aber nicht unbedingt aus VBA heraus, Martin ... Das kann in die Hose gehen. Die Frage ist, ob das notwendig ist.

Bernhard

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Aber nicht unbedingt aus VBA heraus, Martin ... Das kann in die Hose gehen. Die Frage ist, ob das notwendig ist.
Also laut Doku müsste die Funktion auch via COM das gewünschte Resultat ergeben.

Und ich würd drauf setzten - was wäre, wenn beispielsweise die Empfänger (Kunden) alle in einem zweiten Adressbuch stehen? Defensiv programmieren, sag ich. :)
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline koehlerbv

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Defensiv ist immer gut, Pete. Ich vermute aber, dass diese Access-VBA-Applikation auf einen ganz bestimmten Notes-Datenbestand "schielt", und irgendetwas lokales oder anderweitig eingebundenes könnte da daneben zielen.

Interessant wäre m.E. vor allem, auf was die Kiste, auf der diese Access-Applikation läuft, notesseitig Zugriff hat. Ich revidiere dann auch gerne meine Aussage wegen NotesSession.AddressBooks  ;)

Bernhard
« Letzte Änderung: 09.11.07 - 20:34:44 von koehlerbv »

Offline poppsy

  • Frischling
  • *
  • Beiträge: 7
...ach wenn's weiter nichts ist......
(schulterzuck)

Also die Adressen sind in Notes auf unseren Lokalen Server. Auf keinen Fall im persönlichen Adressbuch.

Ich kenn mich mit Notes überhaupt nicht aus (da wärt Ihr jetzt mal so gar nicht drauf gekommen)

Hat jemand von Euch ein Beispielcode den ich mal ausprobieren kann?

Fragt mich etwas bezüglich Access oder VB (VBA) aber bitte nichts was in Richtung Lotus geht...
Den Code zum Versenden von Mails an Notes habe ich (so wie viele andere bestimmt auch) - sagen wir mal "abgeleitet" übernommen und bin soweit überglücklich das es funzt.

Nur wenn dann Notes beim User auf Gesendete Mails geht und dort ist dann ein "Return" oder "Mail Dammon" oder so ähnlich, weil eine CC Empfänger Adr. nicht existiert, weil irgendein Adrmin die Schreibweise verändert hat (das kommt bei uns mal häufiger vor), ist ja jedem klar, dass dann der User sehr verärgert ist und den ganzen Versand manuell oder nochmal neu machen muss über Access oder über Notes (vorher natürlich die CC Empfänger korrigieren.).

Ihr wisst ja was ich meine, ich wiederhole mich wieder nur. Sorry.

Ich brauch nur ein Beispiel....
Wenn Ihr Fragen habt, dann gerne.....!

Gruß Ralf


Offline koehlerbv

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Ich kenn mich mit Notes überhaupt nicht aus

Schlicht und ergreifend: So wird das nichts.
Bernhard

Offline poppsy

  • Frischling
  • *
  • Beiträge: 7
Bernhard,
das ist mir zu einfach....."So wird das nichts."

Warum gibt es dann unzählig viele Beispiel Codes für VB zum versenden von Mails aus Access nach Notes?

Gruß Ralf

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Nur so eine Idee:

Du könntest doch per ODBC das Domino Directory ( Adressbuch ) des Servers als verknüpfte Tabelle in der Access Datenbank anlegen und es dem User dann ermöglichen, die Adressen von dort auszuwählen.

Kommt drauf an, wie du den Aufwand einschätzt en ODBC Treiber für Notes auszurollen.
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Allerdings ist es in VBA auch kein Hexenwerk, zu prüfen, ob ein Absender im DD vorhanden ist

Zitat
    Dim dd As Object 'The Domino Directory database
    Dim Session As Object
    Dim view As Object
    Dim doc As Object
    Dim item As Object
     
    Set Session = CreateObject("Notes.NotesSession")
    Set dd = Session.GETDATABASE("<DeinServer>", "names.nsf")
         If dd.ISOPEN = True Then
            Set view = dd.GETVIEW("($VIMPeople)")
                Set doc = view.GETDOCUMENTBYKEY("Hein Bloed/Maus/De")
                If Not doc Is Nothing Then
                      MsgBox "gefunden"
                End If
            Else
         ' dd nicht geöffnet => Fehlerbehandlung
        End If

Ich denke, damit solltest du klarkommen.
In Notes muss man sich nur von Object zu Object abseilen. Also ausgehend von der Session über die Datenbank, vorbei an der Ansicht bis zum Document.
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Axel

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Bernhard,
das ist mir zu einfach....."So wird das nichts."

Warum gibt es dann unzählig viele Beispiel Codes für VB zum versenden von Mails aus Access nach Notes?

Das hat nichts damit zu tun, dass es nicht funktioniert. Das siehst du auch an den Beispielcodes. Das kann schon was werden.

Aber, dafür muss du auch Ahnung haben, wie Notes grundlegend funktioniert und programmiert (in deinem Fall besonders die Script-Klassen) werden will. Dir nutzt das beste Beispiel nichts, wenn du nicht verstehst warum was passiert und vorallem, warum was nicht funktioniert so wie du es dir vorstellst.

Genau das ist das was Bernhard gemeint hat. 

Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline poppsy

  • Frischling
  • *
  • Beiträge: 7
Hi Ulrich,

das ist doch mal ne tolle Idee.!

Also mit:
 "If dd.ISOPEN = True Then"   
         (davon geh ich ja mal aus)
wird:
 "Set view = dd.GETVIEW("($VIMPeople)")"     
         (was macht dieser Code? Ist das "Getview" eine Art Ansicht der "People-Datenbank" in Notes lt.  Session.GETDATABASE("<DeinServer>", "names.nsf") ???)
dann ist:
  "Set doc = view.GETDOCUMENTBYKEY("Hein Bloed/Maus/De")"  wohl True oder eben nicht....
Das find ich klasse!!!!

Also Ulrich....
wenn das funzt, ja dann, ja... freu ich mich ....

Schade nur, dass ich privat kein Notes habe....(daher auch so wehnig ahnung, sonst würde ich sicherlich hier auch mehr ausprobieren können)
Aber morgen versuch ich es direkt mal In Office.

Ulrich, ich gebe dann Bescheid ob es klappt....(dann kannste Dich mitfreuen... :-))

@Axel und Bernhard
Ätsch! :-)       

Offline koehlerbv

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
@Axel und Bernhard
Ätsch! :-)

Schauen wir mal!  ;)
Wenn dieser Zustand
Ich kenn mich mit Notes überhaupt nicht aus
eine Wendung nimmt, dann würde sicherlich nicht nur ich es wieder als lohnenswert empfinden, "poopsy" zu helfen.

By the way: Die oben genannte Ansicht dürfte sehr wenig hilfreich sein. Um die Notes-Funktionalität der Adressensuche und -überprüfung zu nutzen - und das "von aussen"! - braucht es schon etwas mehr. Ulrich hat da nur einen Hinweis gegeben. Diesen zu nutzen, braucht man eben doch wenigstens "etwas" Notes-KnowHow.

Wie werden denn überhaupt die Mails aus Access gesendet? Per Notes-Mail oder per SMTP? Auf jeden Fall müsste man zu dem per Überprüfung gefundenen Namen aus einer Ansicht (ich präfereriere hier weiterhin "($Users)") aus dem zugehörigen Dokument die wirkliche Adresse eruieren.
Beispiel:
Wenn man die von Ulrich als Beispiel genannte Ansicht verwenden würde, müsste man mich in der Access-Applikation als "Bernhard Koehler/BKNotes/DE" adressieren. Das würde aber nichts nützen, wenn man via SMTP sendet (via Notes pur schon). Aber wer mag diesen langen String schon eintippen ... *)
Via "($Users)" würde es ausreichen (um bei meinem Beispiel zu bleiben), "bkoe" einzutippen. Das findet sich in der Ansicht. Im Dokument findet sich dann die richtige Adresse (je nach Bedarf: Die Notes-Adresse oder die via SMTP erreichbare).

"poopsy", es gibt also noch viel zu lernen. Und das lohnt sich, sagt meine persönliche Erfahrung. Sehr viele helfen hierbei gerne, aber die Form der Zusammenarbeit muss dann auch stimmen. Da sehe ich derzeit noch eklatante Defizite.

Bernhard

*) Richtig elegant würde es, wenn man das gesammelte KnowHow benutzt, um dem Access-User gleich die Adress-Auswahl aus dem Domino Directory anzubieten ...

Offline Axel

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
@Axel und Bernhard
Ätsch! :-)       

Mit solchen Aussagen sinkt die Bereitschaft hier zu helfen ganz gewaltig.


Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz