German Frage zum Zugriff auf Kontakte mit Outlook.dll

Gerd

Member
Licensed User
Hallo!
Wie schon geschrieben: Seit kurzem Besitzer von Basic4ppc

Mein erstes Programm ist eine Importmöglichkeit für vcards (*.vcf) da ich es eigentlich für eine Frechheit von M$ halte mich zwingen zu wollen Outlook zu kaufen :(

Soweit funktionierts schon ganz gut, ich habe allerdings Probleme um Duplikate zu überprüfen:

Um zu überprüfen ob ein Kontakt schon vorhanden ist, nutze ich die Funktion:

nr = imCol.FindItem("LastName","Meier")

Wenn ich also eine vcard importiere und ein LastName "Meier" bereits existiert kann ich entsprechend reagieren.

Nun kann es aber dummerweise passieren dass es mehrere Einträge mit "Meier" gibt z.B. mit unterschiedlichen Vornamen oder einfach komplette Duplikate.

Wie komme ich an die anderen "Meier" oder wie kann ich eine Suche generieren die nach "LastName" & "FirstName" sucht?

MfG
Gerd
 

specci48

Well-Known Member
Licensed User
Longtime User
Hallo Gerd,

ein direktes "mehrfaches" Filtern ist leider nicht möglich. Daher muss man sich z.B. mit folgender Vorgehensweise begnügen:
Zunächst per Nachname Suchen
B4X:
nr = imCol.FindItem("LastName","Meier")
Falls etwas gefunden wurde (nr ungleich -1) enthält die Collection imCol sämtliche Kontakte mit Nachname "Meier".
Nun kann man die einzelnen Kontakte dieser Collection der Reihe nach separat überprüfen, sowohl hinsichtlich des Vornamens oder auch weitere Parameter (col ist ein Objekt vom Typ Collection):
B4X:
For i = 0 to imCol.Count - 1
    col.Value = imCol.GetItem(i)
    If col.FirstName = "Peter" Then
        ' do something
    End If
Next
Die If-Prüfung lässt sich dabei auf eine beliebige Anzahl von Parametern erweitern. Somit kann man selbst entscheiden, wann man einen Eintrag als doppelt bezeichnet oder nicht.


Gruß
specci48
 

Gerd

Member
Licensed User
:sign0188:

Funzt perfekt :sign0060:

Soweit funktioniert nun alles. Import als Single oder Multiple Vcards, als UTF-8 oder Quoted-Printable. Nur ANSI fehlt noch. (Danke für deinen Tipp im anderen Thread) Hab aber keine Ahnung wie man das realisiert?

Nun heißt es testen und nochmal testen, dann kann ich endlich meine Kontakte einlesen und hoffentlich keine größeren Überraschungen erleben.

Jetzt weiß ich endlich, wieso der Adressaustausch zwischen verschiedenen Programmen immer so schwierig ist. *grrrr* Soviel zum Thema Standards...

Jetzt könnte man noch vcards exportieren (Backup) und und und...
 
Top