Autor Thema: N&A aus externen Apps aufrufen  (Gelesen 3379 mal)

Driri

  • Gast
N&A aus externen Apps aufrufen
« am: 17.02.04 - 14:59:14 »
Hallo,

weiß jemand, ob es möglich ist, aus einer externen Applikation (in diesem Fall ein Tool, welches mit PowerBuilder entwickelt wurde) das N&A aufzurufen ?

Also z.B. über die Notes-API die Personeneinträge auslesen und in einem eigenen Dialog zur Auswahl anbieten.


Driri

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:N&A aus externen Apps aufrufen
« Antwort #1 am: 17.02.04 - 16:33:41 »
Das Directory ist eine ganz normale Datenbank und kann natürlich über die API, aber bei entsprechender Konfiguration auch über ODBC ausgelesen werden. Aber auch über die Mail-Schnittstelle MAPI kann man drankommen oder (weil Lotus den Standard mitbgegründet hatte) auch über die alternative VIM-Schnittstelle.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Driri

  • Gast
Re:N&A aus externen Apps aufrufen
« Antwort #2 am: 17.02.04 - 16:55:55 »
Hi,

danke erstmal für die Antwort.

Ich schildere mal gerade das Problem, vielleicht hat ja jemand eine konkrete Idee  :)

Also, wir nutzen eine im Auftrag entwickelte Warenwirtschaft, bei der der Client mit PowerBuilder programmiert wurde.
Aus diesem Client heraus können Mails, Aufgaben oder Kalendereinträge erstellt werden.
Der Clou dabei ist, daß an das Notes-Dokument ein Art Doclink zu einem Artikel, Kunden, Endkunden, Auftrag, etc. pp. angehängt wird, der dann aus Notes heraus aufgerufen werden kann.
Man kann sich vorstellen, daß das eine gern genutzte Funktion ist.

Dummerweise neigt diese Funktion zu Abstürzen, d.h. der Notes-Client crashed hin und wieder. Wir haben RIP-Files untersucht, konnten aber nichts feststellen.
Wir vermuten, daß das Problem auftritt, wenn bestimmte Ereignisse im Notes auftreten und der Anwender dann eine entsprechende Mail erzeugt, da die Programmierung über die Frontend-Klassen erfolgt ist.

Die Idee ist nun, die Programmierung der Funktion auf Backend umzustellen, dabei ist aber das Problem, daß bei einer Mail natürlich der Empfänger eingetragen werden muß.
Eine simple Eingabemaske wäre kein Problem, aber dem Anwender sollen natürlich schon seine Adreßbücher (also Server und lokale) angeboten werden, sonst wäre das mit einem erheblichen Komfortverlust verbunden.

So, das führt mich zu den folgenden Fragen :

- ist unsere Annahme in Bezug auf die Backend-/Frontend-Problematik richtig/wahrscheinlich/nachvollziehbar oder sind wir da auf dem falschen Weg ?

- wenn wir auf dem richtigen Weg sind, ist das Umstellen auf Backend unter den Voraussetzungen machbar und sinnvoll oder ist das evtl. wieder mit anderen Problemen verbunden, die wir mangels Erfahrung mit dem Bereich nicht vorhersehen ?


Puuh, jetzt hab ich aber wunde Finger  ;D

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:N&A aus externen Apps aufrufen
« Antwort #3 am: 17.02.04 - 17:18:27 »
Was? Von den drei Buchstaben schon wunde Finger??  ;)


Sowas gibt es zwar, wie Ihr da vermutet, trotzdem würde ich jetzt mal eher zur Annahme tendieren, dass Ihr da falsch liegt.

Andererseits sind die Angaben - trotz Deiner Finger - zu wenig ergiebig, um wirklich eine fundierte Anwort zu geben. Da seid Ihr in einem recht komplexen Problem gelandet. So ganz verstehe ich auch noch nicht, was Ihr da mit Front- und Backendfunktionen genau meint, und welche Funktion der PB-Client da genau ausführt. Die Komplexität, die Ihr da aufgebaut habt und die nicht alltägliche Konfiguration mit der Custom-PB-Basierenden Erweiterung lassen es meiner Meinung nach nicht zu, eine Antwort aus dem Aermel zu schütteln.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Driri

  • Gast
Re:N&A aus externen Apps aufrufen
« Antwort #4 am: 17.02.04 - 17:34:13 »
Hehe, ich erwarte ja keine fertige Lösung, jeder Hinweis hilft schon weiter  ;)

Wir haben hier einige Anwendungen in ähnlicher Konstellation, z.B. Access-Anwendungen, aus denen heraus eine Mail in Notes generiert, eine Datei angehängt und dann verschickt wird.
Hierbei werden immer die Backend-Klassen benutzt und es hat noch nie Probleme damit gegeben. Vermutlich eben, weil der User da nicht direkt beteiligt ist.

Man kann z.B. aus VisualBasic heraus die Notes-Klassen verwenden, also z.B. ein Mail als neues NotesDocument erzeugen, wie das auch in den VB-Anwendungen gemacht wird.
In der PB-Anwendung wird aber kein NotesDocument erzeugt, sondern ein NotesUIDocument.

Und genau da vermuten wir die Schwierigkeiten, weil dabei evtl. durch andere Aktionen unter Notes der Client blockiert ist.
Darum der Test, die Funktion auf NotesDocument umzustellen und darüber eine Mail/Aufgabe/etc. zu erstellen.

Das Problem ist dann natürlich, daß ich beim Mail auch einen Empfänger übergeben muß, da der User ja vom Erstellen und Versenden des Mails gar nicht mitbekommt.

Macht das die Sache klarer ? Sonst immer her mit Fragen, ich bin für jede Hilfe dankbar  :)

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:N&A aus externen Apps aufrufen
« Antwort #5 am: 17.02.04 - 18:31:53 »
Andere Frage, wie greift Ihr denn überhaupt von PB auf Frontend zu? Sendkey? Offiziell gibt es da meines Wissens keine Schnittstelle. Und wenn das so ist, dann habt Ihr da ziemlich sicher ein Interaktionsproblem. Das lässt sich ja nicht wirklich sauber serialisieren mit anderen Prozessen, die da innerhalb des N-Clients ablaufen.

Access (dh. VBA) greift über COM auf Backend zu, die Möglichkeit, die ich oben nicht erwähnt habe (nehme ich mal an, sonst wohl über MAPI). Wie macht Ihr das denn dort, das AB auszulesen? Ich meine, das sollte von PB aus genauso zugänglich sein (kenne den PB selber nicht, es wäre aber erstaunlich, wenn der diese Standardschnittstellen nicht nutzen könnte).
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Driri

  • Gast
Re:N&A aus externen Apps aufrufen
« Antwort #6 am: 18.02.04 - 09:34:40 »
Andere Frage, wie greift Ihr denn überhaupt von PB auf Frontend zu? Sendkey? Offiziell gibt es da meines Wissens keine Schnittstelle. Und wenn das so ist, dann habt Ihr da ziemlich sicher ein Interaktionsproblem. Das lässt sich ja nicht wirklich sauber serialisieren mit anderen Prozessen, die da innerhalb des N-Clients ablaufen.

Genau. Das vermuten wir, ist ja auch das Problem. In dem Moment, wo im Notes-Client irgendeine andere Aktion läuft, scheint es zu knallen. Deswegen ja die Idee, nicht mehr übers Frontend zu gehen. Dann dürften doch Aktionen/Events wie NeuesMail-Popup oder so nicht mehr so problematisch sein.

Access (dh. VBA) greift über COM auf Backend zu, die Möglichkeit, die ich oben nicht erwähnt habe (nehme ich mal an, sonst wohl über MAPI). Wie macht Ihr das denn dort, das AB auszulesen? Ich meine, das sollte von PB aus genauso zugänglich sein (kenne den PB selber nicht, es wäre aber erstaunlich, wenn der diese Standardschnittstellen nicht nutzen könnte).

Über VB lesen wir das N&A gar nicht aus, da dort der Empfänger aus der VB-/Access-Anwendnug direkt übergeben wird. Es ging mir auch eher darum, ob das generell möglich ist und das hast Du mir ja im Grunde schon bestätigt.

Ich denke, wir werden es einfach mal probieren müssen. Wenn dann konkrete Probleme auftreten, melde ich mich nochmal.
So ist das Thema sicherlich etwas schwammig, zumal ich auch nicht unbedingt konkrete Angaben zu der PowerBuilder-Geschichte geben kann. Wie gesagt, wird von externen Programmierern entwickelt, die kennen Notes nicht, ich kenne PB nicht.

Ich setz den Thread erstmal auf erledigt.

Dank dir, Jens, für die Antworten  :)

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:N&A aus externen Apps aufrufen
« Antwort #7 am: 18.02.04 - 09:40:06 »
Also, wenn das wirklich ernsthaft jemand mit Sendkey probiert hat, dann gehört der aber ins Pfefferland geschickt .....
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Driri

  • Gast
Re:N&A aus externen Apps aufrufen
« Antwort #8 am: 18.02.04 - 09:49:07 »
Was verstehst Du denn unter Sendkey ?

Also der Code sieht fast so aus, wie in VB. D.h. die Notes-Objekte Workspace, Doc, UIDoc, etc. werden verwendet, Maildoc wird erzeugt und dann mit einem Anhang und einem Subject versehen.

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:N&A aus externen Apps aufrufen
« Antwort #9 am: 18.02.04 - 09:54:23 »
Das ist definitiv nicht Sendkey. Sendkey ist ein Win-API-Aufruf, der es erlaubt, für beliebige Fenster irgendwelche Tasten zu simulieren. In der Regel eine Notlösung, wenn kein Interface zur Verfügung steht. Das hier sieht eher nach COM aus, aber meines Wissens steht das UIDoc unter Com eigentlich gar nicht zur Verfügung, und wenn es es doch tut, dann sollte das aber auch stabil sein. Scheint mir, dass das Ding mal in die Finger von jemandem kommen müsste, der wirklich was von Inter-Application-Interfaces versteht (und nicht nur so tut wie wenn)
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:N&A aus externen Apps aufrufen
« Antwort #10 am: 18.02.04 - 11:00:50 »
Sieht das im Code etwa so aus?

Set workspace = CreateObject("Notes.NotesUIWorkspace")

Wenn ja, dann handelt es sich um OLE, dort ist FrontEnd verfügbar. OLE ist allerdings eine etwas delikate Technologie und das könnte die Instabilitäten erklären.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Driri

  • Gast
Re:N&A aus externen Apps aufrufen
« Antwort #11 am: 18.02.04 - 11:12:29 »
Japp, genau so sieht das aus. Treffer  ;D

Okay, dann scheinen wir ja richtig zu liegen. Mal abwarten, wie sich die Anwendung verhält, wenn das umgestellt wird.

Ich berichte dann, wenn wir neue Ergebnisse haben.

Schöne Grüße aus dem sonnigen Münsterland

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:N&A aus externen Apps aufrufen
« Antwort #12 am: 18.02.04 - 11:20:55 »
Dann nüstzt es aber nicht, innerhalb von OLE auf Backend umzusteigen, da muss man dann schon entweder zu COM (als Nachfolger von OLE) umsteigen oder eben auf eine der anderen Technologien.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Driri

  • Gast
Re:N&A aus externen Apps aufrufen
« Antwort #13 am: 18.02.04 - 11:26:47 »
Das ist mir klar. Wir müssen jetzt nur erstmal klären, ob und wie wir von OLE wegkommen.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz