Autor Thema: Microsoft Access an Lotus Notes Calendar  (Gelesen 20783 mal)

Offline GregorJ

  • Frischling
  • *
  • Beiträge: 21
  • Geschlecht: Männlich
Microsoft Access an Lotus Notes Calendar
« am: 08.02.07 - 10:08:57 »
Hallo

ich benötige ein Modul für Microsoft Access mit dem ich aus
einer Access Database Einträge im Lotus Notes Adressbuch
und Lotus Notes Kalender vornehmen kann.

Wo kann ich so etwas finden ?

Gregor

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #1 am: 08.02.07 - 10:14:41 »
Dafür bietet sich die COM-Schnittstelle von Notes an.

Bernhard

Offline GregorJ

  • Frischling
  • *
  • Beiträge: 21
  • Geschlecht: Männlich
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #2 am: 08.02.07 - 19:50:41 »
Hallo Bernhard

COM-Schnittstelle ?

sorry aber das verstehe ich nicht

Gregor

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #3 am: 08.02.07 - 20:27:07 »
Das ist schlecht. Dieses IBM-Redbook sollte helfen:
COM together

HTH,
Bernhard

Offline GregorJ

  • Frischling
  • *
  • Beiträge: 21
  • Geschlecht: Männlich
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #4 am: 08.02.07 - 22:14:45 »
Nu ich habe mir mal ein paar Kapitel davon durchgelesen,
was ich nun da von verstanden habe, steht dort drin wie
Daten aus Lotus Notes gelesen werden aber nicht wie die darein kommen
und auch werden dort die Kapitel Word und Excel abgehandelt aber nicht Access

Gregor

Nachtrag:
ich habe mal so etwas gemacht für Outlook:
Outlook.zip
so in etwa stelle ich mir das vor, nur soll dann an Lotus gesendet werden.
« Letzte Änderung: 08.02.07 - 22:29:08 von GregorJ »

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #5 am: 08.02.07 - 23:21:11 »
Nun, zwischen "rein" und "raus" besteht da kein Unterschied. Das steht auch im Redbook. So, wie Du mit Notes die (für OLE freigegebenen) Klassen von Word, Excel oder Access benutzen kannst, kannst Du das umgekehrt genauso machen. In der DesignerHelp des Domino Designer Clients ist auch genau dokumentiert, was für COM verfügbar ist und was nicht.
Den Designer Client wirst Du ja haben, oder? Denn ohne installierten Notes Client oder Domino Server (je nach Verfahren) geht da sowieso nichts. Nicht, dass da ein Missverständnis entsteht.

Bernhard

Offline GregorJ

  • Frischling
  • *
  • Beiträge: 21
  • Geschlecht: Männlich
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #6 am: 08.02.07 - 23:42:43 »
Ok, ich habe nicht all zu viel Ahnung von Lotus Notes,
wir (unser Team in Deutschland) haben Lotus Notes 6.5
auf unseren Rechnern Installiert bekommen,
die IT sitzt in Holland und ich weis nicht ob ich einen Domino Designer
installiert habe.

Ich habe eine Access DB gemacht mit der unsere Kundendaten etc. verwaltet werden
diese DB soll nun als kleine Workflow dienen und ich habe dort die Funktion
eingebaut mit der Termine etc. an Outlook übergeben werden,
das soll aber in Lotus Notes geschehen.

Ich habe im Access Forum diesen Code entdeckt:
Code
Public Sub SendNotesAppointment(VornameX As String, NachnameX As String, _ 
                                WDatumX As Variant, SubjectX As Variant) 
'***************************************************************************** 
'* 
'*  Mit dieser Funktion werden Termine aus  in den 
'*  Lotus Notes Kalender des Anwenders geschrieben. 
'* 
'***************************************************************************** 
'Set up the objects required for Automation into lotus notes 
    Dim Maildb As Object 'The mail database 
    Dim MailDbName As String 'The persons notes mail database name 
    Dim CalenDoc As Object 'The calendar entry itself 
    Dim WorkSpace As Object 
    Dim Subject As String 'The Headline 
    Dim Appdate As String 'The calendardate 
    
    Subject = SubjectX          'Vorlauftext 
    Subject = Subject & VornameX & " "              'Vorname holen 
    Subject = Subject & NachnameX                   'Nachname holen 
    Set WorkSpace = CreateObject("Notes.NOTESUIWORKSPACE") 
    Set CalenDoc = WorkSpace.COMPOSEDOCUMENT("", "", "Appointment") 
    CalenDoc.FIELDSETTEXT "AppointmentType", "4" 
                          'AppointmentType 1 = Jahrestag 
                          'AppointmentType 2 = Ganztägige Veranstaltung 
                          'AppointmentType 3 = Beprechung 
                          'AppointmentType 4 = Erinnerung 
    CalenDoc.FIELDSETTEXT "StartDate", CStr(Format(WDatumX, "dd/mm/yy")) 
    CalenDoc.FIELDSETTEXT "startTime", CStr("09:00:00") 
    'CalenDoc.FIELDSETTEXT "Duration", CStr(Duration) 
    CalenDoc.FIELDSETTEXT "Subject", Subject 
    CalenDoc.FIELDSETTEXT "Body", Subject 
    CalenDoc.FIELDSETTEXT "Categories", "PC"   'PC = Anrufe 
    CalenDoc.Save False, False, False 
    CalenDoc.Close 
    Set Maildb = Nothing 
    Set CalenDoc = Nothing 
    Set WorkSpace = Nothing 
    MsgBox "Der Wiedervorlagetermin ist in Notes übertragen worden" 
End Sub
da versuche ich gerade durch zu steigen,
ich bin auch kein Studierter Access Profi und muss auch da viel improvisieren.

ggf. bin ich auch bereit eine gewerbliche Lösung zu akzeptieren

Vielleicht kannst du mir ja einen Tipp geben zu dem o.g. Code
was die Felder von Lotus sind.

Gregor

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #7 am: 08.02.07 - 23:53:55 »
Was Du da gefunden hast, ist eine Geschichte, die im FrontEnd des Notes Clients Kalendereinträge macht (und das in keinster Weise sauber - da fehlen ganz wichtige Sachen für das Notes C&S).

Was ioch jetzt nicht verstehe: Du sagst, Du hast keinen Plan von Notes. In Access bist Du kein Profi. Warum macht Ihr dann solche Stunts? Und warum wird hier was in MS Access gemacht, wenn das Zielsystem IBM Lotus Notes ist?

ggf. bin ich auch bereit eine gewerbliche Lösung zu akzeptieren

Ich bin ja gerne bereit, Tipps zu geben (habe ich hier ja auch schon gemacht). Ich bin aber eben auch einer von denen, die mit diesem Stuff ihr Geld verdienen. Was Ihr braucht, ist erstmal eine Analyse, dann ein Projekt und dann eine Umsetzung. Was ein Forum sicherlich sprengen wird ...  ;)

Bei konkreten Fragen gerne mehr Infos!

Bernhard

Offline GregorJ

  • Frischling
  • *
  • Beiträge: 21
  • Geschlecht: Männlich
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #8 am: 09.02.07 - 00:14:31 »
ok

zunächst wollen wir mit der access db arbeiten,
wenn wir in deutschland etwas auf die Beine gestellt haben,
gibt es größere Investitionen
unser Unternehmen arbeitet momentan mit update CRM,
was wir auch bekommen sollen, aber das dauert noch eine weile

die Access db funktioniert schon soweit ausreichend bis auf das
Eintragen von Terminen im Lotus Calendar, dazu suche ich eine
einfache FrontEnd Lösung, wie auch das Outlook Tool

zunächst ist das ausreichend für unser vorhaben
wenn das klappt denken wir weiter
nicht alles auf einmal

Gregor

Zitat
die im FrontEnd des Notes Clients Kalendereinträge macht (und das in keinster Weise sauber - da fehlen ganz wichtige Sachen für das Notes C&S).
was für wichtige Sachen ?

Driri

  • Gast
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #9 am: 09.02.07 - 08:20:40 »
Von einer Frontend-Lösung würde ich abraten. Das knallt z.B. schon, wenn in Notes eine Dialogbox hochkommt, etwa die Neue-Mail-Benachrichtigung.

Offline GregorJ

  • Frischling
  • *
  • Beiträge: 21
  • Geschlecht: Männlich
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #10 am: 09.02.07 - 09:29:46 »
schade, ich hätte gerne ein Einfaches Formular in Access gemacht
mit Name Text Darum und Zeit, mit einem Button
und dann die Daten an Lotus in einen neuen Termin(Calendar) eingetragen
so wie das mit Outlook möglich ist
ohne an Lotus rum zu programmieren

da geht dann einfach ein neues Fenster auf mit neuem Termin
wo die übergebenen Daten drin stehen, dann ggf. anpassen
Speichern und schließen

ich kann nicht verstehen was da für Probleme mit der Dialogbox "Neue-Mail-Benachrichtigung"
von Lotus geben könnte, da ich damit ja keine permanente Verbindung mit Lotus habe
sondern nur bei Bedarf von außen einen Neuen Calendereintrag öffne und ein paar Daten
darin übergebe, der Rest läuft dann in Lotus weiter

Ich kann das ja auch mit E-Mail machen, einfach auf die Mailadresse in Access klicken
und schon geht eine neue Mail auf in Lotus mit der Mailadresse drin,
dann wird in Lotus weiter gearbeitet, so sollte das auch mit dem Calender möglich sein

aber wenn ihr sagt, das ist nicht möglich, dann muss ich auf diese Funktion verzichten.

schade

Driri

  • Gast
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #11 am: 09.02.07 - 10:10:42 »
Wir hatten eine Frontend-Lösung in unserer Warenwirtschaft, die von einem externen Unternehmen entwickelt wurde.

Dabei konnte man aus der WaWi heraus z.B. eine neue Mail, einen neuen Kalendereintrag oder eine neue ToDo erzeugen. Jeweils mit Daten aus der WaWi und einem Link auf den Datensatz.

Das lief solange gut, wie man in Notes keinen Dialog offen hatte. Ein Dialog sperrt nun mal das Frontend und die Scripte, die im Frontend dann z.B. ein neues Mail erstellen sollten, liefen auf einen Fehler. Ab und zu sogar so schlimm, daß Notes mit einem NSD abkachelte.

Wir haben uns dann mit den Externen zusammengesetzt und zusammen die Scripte auf Backend umgestellt. Damit läuft die Sache sehr stabil. Der Aufwand in der Entwicklung war zwar höher, weil in der WaWi dann noch ein Adreßdialog für die Auswahl der Empfänger hochkommt (fragt die Adreßbücher aus der notes.ini ab), aber das hat sich allemal gelohnt.

Offline GregorJ

  • Frischling
  • *
  • Beiträge: 21
  • Geschlecht: Männlich
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #12 am: 09.02.07 - 10:20:01 »
wer könnte uns denn dabei unterstützen solche Scripte für Access zu erstellen
was wir uns vorstellen habe ich ja schon mitgeteilt,
nur für Kalendereintrag und/oder ToDo

Driri

  • Gast
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #13 am: 09.02.07 - 10:57:02 »
Ich denke, da wird es einige hier im Forum geben, die dabei unterstützen können. Ich selber arbeite nicht für einen Dienstleister und kann daher nur hier im Forum meinen Senf dazugeben  ;)

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #14 am: 09.02.07 - 19:07:07 »
wer könnte uns denn dabei unterstützen solche Scripte für Access zu erstellen
was wir uns vorstellen habe ich ja schon mitgeteilt,
nur für Kalendereintrag und/oder ToDo

Gib' mal eine Region an, aus der Ihr stammt. Das macht es Willigen einfacher, sich zu entscheiden  :) Ich denke, hier ist vorab ein Gespräch vor Ort über das Gesamtkonstrukt erforderlich. Vielleicht ginge das Ganze ja auch ganz anders ...

Bernhard

Offline GregorJ

  • Frischling
  • *
  • Beiträge: 21
  • Geschlecht: Männlich
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #15 am: 24.02.07 - 00:54:45 »
Hallo,

ich habe nun folgende Lösung gefunden:
Lotus Notes Appointments from VB or VBA (version 6)
nach dem Code von
Lotus Notes Calendaring von Joe Korzeniewski

Nach einigen Anpassungen sieht das nun so aus:
Code
Option Compare Database
Option Explicit

'Lotus Notes Calendaring
'Developed by Joe Korzeniewski of www.vortexwd.net
'For an explanation of this code please visit www.vortexwd.net/Lotusnotescalendaring1.asp

Public Sub SendNotesAppointment(UserName As String, Subject As String, _
Body As String, AppDate As Date, StartTime As Date, MinsDuration As Integer, _
Location As String, Categories As String, AppointmentType As String, ServerName As String)
 On Error GoTo ende
 'Set up the objects required for Automation into lotus notes
    Dim MailDbName As String 'The persons notes mail database name
    Dim strSTime As String
    Dim strETime As String
    Dim CalenDoc As Object 'The calendar entry itself
    Dim WorkSpace As Object
    Dim ErrCnt As Integer
    Set WorkSpace = CreateObject("Notes.NOTESUIWORKSPACE")

    'Change this to fit your particular db naming convention based on UserName if necessary
    'MailDbName = "mail\" + UserName + ".nsf"
    'Get the engineer username and then calculate the mail file name
    MailDbName = Left$(UserName, 1) & Right$(UserName, (Len(UserName) - InStr(1, UserName, " ")))
    MailDbName = "mail\" & Left$(MailDbName, 8) & ".nsf"

    strSTime = CStr(FormatDateTime(StartTime, vbShortTime))
    strETime = CStr(FormatDateTime(DateAdd("n", MinsDuration, StartTime), vbShortTime))

    'MAKE SURE TO SET SERVER NAME BELOW
    Set CalenDoc = WorkSpace.COMPOSEDOCUMENT(ServerName, MailDbName, "Appointment")

    CalenDoc.FIELDSETTEXT "AppointmentType", AppointmentType '"3" '0=Appointment, 1=Anniversary, 2=AllDayEvent, 3=Meeting, 4=Reminder
    CalenDoc.Refresh
    
    'Each loop is used to write the value to the field until the field is changed to that value

    Do Until (CDate(Right(CalenDoc.fieldgettext("StartDate"), 10)) = CDate(AppDate)) Or ErrCnt = 1000
        CalenDoc.FIELDSETTEXT "StartDate", CStr(FormatDateTime(AppDate, vbShortDate))
        CalenDoc.Refresh
        'ErrCnt is used to prevent an endless loop
        ErrCnt = ErrCnt + 1
    Loop
    ErrCnt = 0
    Do Until (CDate(CalenDoc.fieldgettext("StartTime")) = CDate(strSTime)) Or ErrCnt = 1000
        CalenDoc.FIELDSETTEXT "StartTime", strSTime
        CalenDoc.Refresh
        ErrCnt = ErrCnt + 1
    Loop
    ErrCnt = 0
    Do Until (CDate(Right(CalenDoc.fieldgettext("EndDate"), 10)) = CDate(AppDate)) Or ErrCnt = 1000
        CalenDoc.FIELDSETTEXT "EndDate", CStr(FormatDateTime(AppDate, vbShortDate))
        CalenDoc.Refresh
        ErrCnt = ErrCnt + 1
    Loop
    ErrCnt = 0
    Do Until (CDate(CalenDoc.fieldgettext("EndTime")) = CDate(strETime)) Or ErrCnt = 1000
        CalenDoc.FIELDSETTEXT "EndTime", strETime
        CalenDoc.Refresh
        ErrCnt = ErrCnt + 1
    Loop
    CalenDoc.FIELDSETTEXT "Subject", Subject & " / Betreff: " & Body 'weil ich Body nicht in den Body bekomme
    CalenDoc.FIELDSETTEXT "Location", Location
    CalenDoc.FIELDSETTEXT "Body", Body 'erscheint nur wird aber nicht übernommen
    CalenDoc.FIELDSETTEXT "Categories", Categories
     CalenDoc.Refresh
  '  CalenDoc.Save 'dadurch wird der Eintrag sofort gespeichert
  '  CalenDoc.Close 'dadurch wird der Eintrag sofort gesendet
    Set CalenDoc = Nothing
    Set WorkSpace = Nothing
MsgBox "Ein neuer Eintrag wurde in Lotus Notes geöffnet, bitte überprüfen Sie Ihr Lotus und speichern Sie den Eintrag"
ende:
End Sub

ein Problem habe ich noch damit,
wenn ich
Code
CalenDoc.FIELDSETTEXT "Body", Body 
überneme,
erscheint der Text zwar im neuen Eintrag in Lotus Notes aber ist dort hellgrau und wenn ich in das Feld klicke,
verschwindet der Text

ich habe mal eine Musterdatei gemacht
LotusCalendarEntry.zip

Gregor

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #16 am: 24.02.07 - 01:19:03 »
Dass das mit dem Item "Body" nicht klappt (weil RTIs anders belegt werden müssen), ist Euer geringstes Problem. Den Code, den Du da gefunden hast, ist absolut Domino C&S-inkonform.

Lies bitte nochmal mein Posting #7 in diesem Thread ...

Bernhard

Offline GregorJ

  • Frischling
  • *
  • Beiträge: 21
  • Geschlecht: Männlich
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #17 am: 24.02.07 - 01:28:50 »
und was ist mit der Methode REPLACEITEMVALUE
die von Joe Korzeniewski dort dargestellt wird,
ist das C&S konform ?
dabei funktioniert auch der Eintrag im Body

Gregor

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
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #18 am: 24.02.07 - 10:28:03 »
Gregor: Du willst Dir das IBM Lotus Notes Calendaring & Scheduling Schema durchlesen und dann entsprechend programmieren, damit die Anwendung C&S konform wird.
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 GregorJ

  • Frischling
  • *
  • Beiträge: 21
  • Geschlecht: Männlich
Re: Microsoft Access an Lotus Notes Calendar
« Antwort #19 am: 24.02.07 - 13:55:59 »
Gregor: Du willst Dir das IBM Lotus Notes Calendaring & Scheduling Schema durchlesen und dann entsprechend programmieren, damit die Anwendung C&S konform wird.
Danke
ich sehe darin zunächst ein Problem das ich den Body als String übergebe und nicht als RTF
in der Methode REPLACEITEMVALUE wird, wenn ich das richtig erkannt habe, ein Objekt in
Lotus Notes erzeugt und überschrieben, das gefällt mir gar nicht.

Dass das mit dem Item "Body" nicht klappt (weil RTIs anders belegt werden müssen),...
wie ist das zu verstehen, wie anders belegen ?

Gregor

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz