Page 1 sur 2
API Lotus Notes - Lire le carnet d'adresse

Publié:
30 Juin 2010 à 22:27
par Orel
Bonjour,
Je développe actuellement une application en C++ qui interagi avec Lotus Notes.
J'ai notamment besoin de pouvoir lister l'ensemble des contacts du carnet d'adresse personnel de l'utilisateur.
J'arrive bien à ouvrir les bases de données des différents carnets d'adresse disponible avec la fonction "GetAddressBooks", mais je ne sais pas trop comment m'y prendre pour lister l'ensemble des contacts (avec nom, email, telephone...)
Y-a-t-il une façon simple de faire cela ?
Merci !

Publié:
01 Juil 2010 à 08:00
par Michael DELIQUE
salut
regarde ici si tu ne trouverais pas ton bonheur
=>
http://forum.dominoarea.org/lotusscript-f20.html
sinon il faut prendre une vue systeme du names.nsf et la parcourrir

Publié:
01 Juil 2010 à 08:24
par Orel
Merci pour le lien, je vais fouiller là-dedans...
sinon il faut prendre une vue systeme du names.nsf et la parcourir
C'est justement comme ça que j'essaie de faire pour l'instant, mais je ne sais pas quels sont les champs à lire...
En gros, je crois qu'il me manque surtout la structure de la base pour pouvoir avancer.
Tu saurais où je peux trouver des infos sur la structure ? Spécialement pour le carnet d'adresse ?
(J'imagine qu'il existe un champ "email", "phone number", "name"...)
Merci !

Publié:
01 Juil 2010 à 08:34
par mike76
Salut,
Voici quelques champs du masque "Person" :
FullName
FirstName
LastName
InternetAddress
OfficePhoneNumber

Publié:
01 Juil 2010 à 08:42
par Orel
Euh, je ne suis pas sûr de bien comprendre...
Actuellement, je récupère l'ensemble des carnets d'adresse avec :
- Code : Tout sélectionner
Session.GetAddressBooks(&NSFDbArray);
Ce qui me renvoi une base de données par carnet d'adresse.
A partir de là, je peux lire les Notes et les Items contenus dans cette base, mais aucune ne s'appelle "Person", "FullName"...

Publié:
01 Juil 2010 à 08:51
par amahi
Salut, le plus simple est que demande un designer domino (gratuit), tu ouvre une des bases carnets d'adresses et tu regarde dans le masque "Person" , Mike te donnait une partie de ces champs, mais il y en as une floppé, pas tous utile d'ailleur. A toi de faire le trie.

Publié:
01 Juil 2010 à 08:53
par Orel
C'est dans le cadre du développement d'une application en C++ que je dois accéder au carnet d'adresse.
J'essaie donc de le faire avec l'API C++ de Lotus Notes.
Je ne suis pas sûr de comprendre le lien avec Domino Designer.

Publié:
01 Juil 2010 à 09:03
par mike76
Le lien avec Lotus Designer c'est pour que tu puisses ouvrir le carnet d'adresses "names.nsf" et récupérer le nom des champs que tu veux car tu auras accès à la structure de la base

Publié:
01 Juil 2010 à 09:09
par amahi
Si tu comprend pas que pour avoir la structure de la base il te faut un designer prend un café. Ce n'est pas parceque tu doit developper en C++ que tu doit le faire à l'aveugle, au contraire. Maintenant si tu attend de nous une liste exhaustive des champs de chaque masque que tu devras recuperer...J'ai un stagiaire que je peut te vendre 300€ la journée pour ce genre de corvé.
Bonne journée

Publié:
01 Juil 2010 à 09:23
par Orel
Ok, j'avais pas compris l'intérêt du designer dans mon cas...
Mais n'y-a-t-il pas une structure "par défaut" de la base ? Surtout pour le carnet d'adresse ?
Je pensais trouver une doc qui décrit ça

Publié:
01 Juil 2010 à 09:28
par mike76
oui il y a une structure par défaut du carnet d'adresses que tu découvriras en utilisant Lotus Designer en ouvrant la base "names.nsf" de ton serveur Domino

Publié:
01 Juil 2010 à 09:34
par Maxime Choucroun
"Attaquer" le carnet sans connaitre le designer est un sacré challenge...
Pour information, dans les API C ou C++ Lotus/Domino, se trouvent un nombre important d'exemples qui sont bien faits. Cela compense un documentation un peu legere.
Un developpeur API C et un peu C++ de Lotus Domino

Publié:
01 Juil 2010 à 09:50
par Orel
Ce qui m'étonne c'est qu'il n'y a pas visiblement pas de méthode "standard" pour attaquer le carnet d'adresse.
Cela veut dire qu'il faut adapter son code à chaque carnet d'adresse ?
D'une entreprise à l'autre, il n'y a pas forcement de méthode commune pour récupérer le nom/prénom/téléphone/e-mail de tous les contacts ?

Publié:
01 Juil 2010 à 09:57
par Orel
Juste pour préciser (je sais pas si ça change grand-chose) : je ne cherche à récupérer que les contacts du carnet d'adresse personnel local, pas tous les contacts de l'entreprise.

Publié:
01 Juil 2010 à 10:41
par LSong
le nom des champs dans le carnet d'adresse n'a pas dut beaucoup changer depuis longtemps
comme le disent les autre prend en designer et ouvre la structure du names, tu pourra voir le nom des champs
la c'est un peu comme esseyez d'apprendre le chinois sans vouloir prendre un dictionnaire ...