Kontakte in Outlook

Nutzung, Komponenten, .NET

Moderator: Moderatoren

Antworten
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2935
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

Kontakte in Outlook

Beitrag von Wolfgang Ciriack »

Hallo,
ich habe folgendes Problem:
Ich möchte Kontakte an Outlook übermitteln. Das Auslesen klappt sehr gut, ich kann den Kontakte-Ordner auswählen, mit dem ich abgleichen möchte, aber wenn ich einen neuen Kontakt anlege, erscheint er nicht in Outlook.
Folgende Zugriffe (verkürzt) nehme ich vor (Auslesen):

Code: Alles auswählen


oOutlook := CreateObject( "Outlook.Application" )
.....
oNS := oOutlook:GetNamespace( "MAPI" )  //* returns NameSpace
...

oContacts:=oNS:PickFolder()            //* returns NameSpace
if oContacts<>NIL
   if oContacts:DefaultItemType<>olContactItem
      *** Kein Kontakte-Ordner
.....
   endif
endif

nOlAnzahl:=oContacts:items:count
for i:=1 to nOlAnzahl
   m->oContact := oContacts:items(i)
......
   for ii:=1 to len(aContacts)
       f:=aContacts[ii][3][1]
       l:=aContacts[ii][3][3]
       inh:=&("M->oContact:"+aContacts[ii,2])
       replace &f with substr(DC_XtoC(inh),1,l)
   next
next

Jetzt das zurückschreiben:

Code: Alles auswählen

...
countnew+=NewOlSatz(oContacts)
......
********************
function NewOlSatz(oC)
local oNew, i, retw:=0

if (oNew:=oC:Items:Add(olContactItem))<>NIL

   oNew:CompanyName:=alltrim(outl->firma)
   oNew:LastName:=alltrim(outl->name1)
   oNew:Email1Address:=alltrim(outl->email)
   oNew:BusinessTelephoneNumber:=alltrim(outl->tele1)  
   oNew:BusinessFaxNumber:=alltrim(outl->fax)
   oNew:CustomerID:=str(art,3)+str(nummer,7)
   retw:=1
endif

return retw


Ich bekomme bei der Funktion NewOlSatz 1 zurückgeliefert, keine Fehlermeldung, aber der Kontakt ist in OL nicht sichtbar (oder nicht angelegt ?)

Hat sich damit schon jemand beschäftigt ?
Viele Grüße
Wolfgang
Benutzeravatar
Lewi
1000 working lines a day
1000 working lines a day
Beiträge: 830
Registriert: Di, 07. Feb 2006 14:10
Wohnort: Hamburg
Danksagung erhalten: 2 Mal

Beitrag von Lewi »

Ich vermute, es fehlt: "oNew:Save()" nach der Zuweisung.
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2935
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

Beitrag von Wolfgang Ciriack »

Hallo Lewi,
vielen Dank, nachdem ich gerade noch mal gedebugged habe, und mir die Methoden von ContactItem angesehen habe, bin ich auch auf die Methode :Save gestoßen. Das wars. Vielen Dank.
Viele Grüße
Wolfgang
Benutzeravatar
Muecke
1000 working lines a day
1000 working lines a day
Beiträge: 623
Registriert: Di, 24. Okt 2006 7:19
Wohnort: Samstagern CH
Hat sich bedankt: 3 Mal
Danksagung erhalten: 9 Mal
Kontaktdaten:

Beitrag von Muecke »

Hallo Wolfgang,

Da Du das einlesen und aulesen von Outlook im Griff hast, wollte ich dich Fragen wie das gehen soll.

Ich hab unter Kontakt ->Unterordner.Jetzt möchte ich abfragen welche dies sind und anzeigen lassen in einer Listbox.Kannst Du mir sagen wie ich dies abfragen kann?
Dannach könnte ich die Kontakte sauber in eine DB schreiben.

Gruss Thomas
Benutzeravatar
Muecke
1000 working lines a day
1000 working lines a day
Beiträge: 623
Registriert: Di, 24. Okt 2006 7:19
Wohnort: Samstagern CH
Hat sich bedankt: 3 Mal
Danksagung erhalten: 9 Mal
Kontaktdaten:

Beitrag von Muecke »

Hab es gefunden was ich suchte.

Gruss Thomas
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2935
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

Beitrag von Wolfgang Ciriack »

Hallo Thomas,
war gerade 2 Wochen im Urlaub und hatte computerfreie Zeit. Aber du hast ja geschrieben, dass du es herausgefunden hast. Wenn noch Fragen sind, bin jetzt wieder da.
Viele Grüße
Wolfgang
Benutzeravatar
Muecke
1000 working lines a day
1000 working lines a day
Beiträge: 623
Registriert: Di, 24. Okt 2006 7:19
Wohnort: Samstagern CH
Hat sich bedankt: 3 Mal
Danksagung erhalten: 9 Mal
Kontaktdaten:

Beitrag von Muecke »

Hallo Wolfgang,

hast Du bei der übernahme von Outlook die Meldung wegen dem zugreifen ausschalten können?

Gruss Thomas
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2935
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

Beitrag von Wolfgang Ciriack »

Hallo Thomas,
nein, das habe ich bisher nicht hinbekommen.
Viele Grüße
Wolfgang
Antworten