Le premier site francophone dédié au développement Pocket PC


Comment utiliser POOM avec eVB ? Partie 3 : Les contacts
 
   


Voir la première partie
(informations générales)
Voir la deuxième partie (les tâches)

Cet article va vous expliquer comment accéder aux contacts que vous avez définis dans votre Pocket PC.

Comme cet article fait référence à des opérations expliquées dans la première partie, nous vous conseillons vivement de consulter la première partie avant de continuer.

Nous partons du principe que nous disposons d'un objet de type PocketOutlook.Application (notre variable wPOOM), et que nous avons exécuté avec succès la méthode "Logon" de cet objet.

Accéder aux contacts

POOM stocke ses données dans des dossiers (folders). Il faut donc se 'brancher' sur le dossier des contacts pour pouvoir les manipuler :

Dim wContactFolder as PocketOutlook.Folder
Set wContactFolder = wPOOM.GetDefaultFolder(olFolderContacts)

wContactFolder pointe maintenant sur le dossier PocketOutlook des contacts. Tous les contacts que vous avez définies sont listés dans une collection de cet objet, la collection "Items" (de type "PocketOutlook.Items") qui contient des objets de type "PocketOutlook.ContactItem" :

Dim wContacts as PocketOutlook.Items
Dim wContact as PocketOutlook.ContactItem

Set wContacts = wContactFolder.Items
For Each wContact In wContacts
Call wContact.Display
Next

Si vous exécutez ce code, PocketOutlook va afficher une fiche contact pour chaque contact présent dans la collection wContacts !

Important : Chaque fiche est affichée de manière modale, ce qui arrête votre code eVB tand que vous ne fermez pas le contact avec le bouton OK.

Attention : La méthode "Display" de l'objet "ContactItem" affiche les informations concernant le contact, mais aussi vous permet de modifier ces informations, donc attention.

Créer un nouveau contact

Pour créer un nouveau contact, il faut renseigner les propriétés d'un objet de type "ContactItem" :

Dim wContact as PocketOutlook.ContactItem

Rem Création d'un nouveau contact (code 2)
Set wContact = wPOOM.CreateItem(2)

Rem On remplit les infos de base : le nom, et le prénom
wContact.FirstName = "Sibué"
wContact.LastName = "Stéphane"

Rem On enregistre ce nouveau contact
Call wContact.Save

Trouver des contacts par rapport à des critères

Comme avec les tâches, il est possible d'utiliser la méthode "Restrict" de la collection 'Items', ce qui permet de ne remplir cette collection qu'avec les Contacts correspondants au critère donné :

Dim wContactFolder as PocketOutlook.Folder
Dim wContacts as PocketOutlook.Items
Dim wContact as PocketOutlook.ContactItem

Rem On récupère le dossier des Contacts
Set wContactFolder = wPOOM.GetDefaultFolder(olFolderContact)
Rem On récupère la collection des contacts dont le nom = à Dupont
Set wContacts = wContactFolder.Items.Restrict("[LastName] = " & Chr(34) & "Dupont" & Chr(34))
For Each wContact in wContacts
Call wContact.Display
Next

Trouver un contact

Vous pouvez pointer directement sur un contact en utilisant la méthode "Find" :

Set wContact = Nothing
Set wContact = wContacts.Find("[LastName] = " & Chr(34) & "Dupont" & Chr(34))
If wContact Is Nothing Then
MsgBox "Contact introuvable !"
Else
Call wContact.Display
End If

Important : Chaque item (contact, tâche, rendez-vous, etc...) possède une propriété "oid" (Outlook ID) qui correspond à la clé unique de ce contact dans la base PocketOutlook. Grace à la méthode "GetItemFromID" de l'objet PocketOutlook.Application (notre wPOOM), il est possible de récupérer imédiatement l'item par son ID :

Sub ChargerContacts

Rem Code de chargement de la ListeBox List1 avec tous les contacts de la base PocketOutlook

Dim wContacts as PocketOutlook.Items
Dim wContact as PocketOutlook.ContactItem

Set wContacts = wPOOM.GetDefaultFolder(olFolderContacts).Items
Call List1.Clear
For Each wContact In wContacts
Call List1.Additem(wContact.LastName & " " & wContact.Firstname)
List1.ItemData(List1.NewIndex) = wContact.oid
Next

End Sub

Sub List1_Click()

Rem Code à placer dans l'événement Click de la ListeBox List1
Dim wID as Long
Dim wContact as PocketOutlook.ContactItem

If List1.Listindex=-1 Then Exit Sub
wID = List1.ItemData(List1.Listindex)
Set wContact = wPOOM.GetItemFromID(wID)
Call wContact.Display

End Sub

Détruire un contact

Pour détruire un contact, il faut utiliser la méthode "Delete" de l'objet "ContactItem" qui pointe sur le contact que vous voulez détruire :


Dim wContacts as PocketOutlook.Items

Rem On récupère la collection des contacts
Set wContacts = wPOOM.GetDefaultFolder(olFolderContacts).Items
Rem Et on détruit le premier de la collection
Call wContacts(1).Delete

 

Voilà, vous savez globalement comment gérer les contacts avec POOM. Biensûr, il existe certaines méthodes et propriétés dont nous avons délibérément omis de parler car elles ne rentre pas dans le cadre de cet article d'initiation. Si vous avez des problèmes avec les contacts n'oubliez pas que le forum eVB d' est là pour vous aider.

La quatrième partie va vous expliquer comment gérer les rendez-vous avec POOM.


Stéphane Sibué

 

 
       
   
 
   
Copyright 2001-2004 - Tous droits réservés
 
   

iPAQ est un produit de COMPAQ.
Visual Tools est un produit de Microsoft Corporation.
Toutes les autres marques et produits présents dans ces pages sont la propriété exclusive de leurs sociétés respectives.