AIDE SUR L'AUTOMATION LOTUS NOTES SOUS VB

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 2 déc. 2003 à 20:28
cs_JoBleu Messages postés 91 Date d'inscription dimanche 18 août 2002 Statut Membre Dernière intervention 21 février 2015 - 31 déc. 2010 à 17:42
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/18363-aide-sur-l-automation-lotus-notes-sous-vb

cs_JoBleu Messages postés 91 Date d'inscription dimanche 18 août 2002 Statut Membre Dernière intervention 21 février 2015
31 déc. 2010 à 17:42
Une correction pour les pièces jointes, et après on ira profiter du nouvel an pour se mettre en meilleur état.
Quand j'ai ajouté l'instruction ci-dessus mentionnée, ça a fait apparaître la pièce jointe, mais ça a levé une exception sur cette instruction, objet incompatible si je me rappelle bien.
Je n'ai pas trop cherché du côté de On Error Resume Next, mais avec ceci ça a l'air de marcher, on verra la semaine prochaine pour une deuxième pièce jointe :
Set AttachME = beDoc.CREATERICHTEXTITEM(Attach1)
Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Attach1)
(Attach1 est le chemin vers le fichier - AttachME et EmbedObj sont déclarés comme objets, je me demande si j'ai déclaré la bonne référence puisqu'il n'y a que le "late binding" qui fonctionne)
cs_JoBleu Messages postés 91 Date d'inscription dimanche 18 août 2002 Statut Membre Dernière intervention 21 février 2015
31 déc. 2010 à 17:08
Pièces jointes
Il y a quand même autre chose : je me demande bien comment je peux être le premier à rencontrer le problème en fonction du nombre d'intervenants dans le fil, je n'ai pu voir la pièce jointe dans le message qu'après avoir ajouté en ligne 111 :
Call workspace.EDITDOCUMENT(True, beDoc).FIELDSETTEXT("Attachment", bodyAtt)
et je ne suis arrivé à cette conclusion, au bout de quelques heures, que parce qu'en VB aussi, quand on a ajouté un objet à une collection, il faut mettre à jour la collection ensuite pour l'exploiter.
Par curiosité, je ne sais pas trop à quoi sert le quatrième argument de EmbedObject, là où on a mis Dir(Attach1). J'ai mis "piecejointe" dedans, et je n'ai vu apparaître "piecejointe" nulle part.
En mettant en commentaire l'API ShowWindow j'ai pu éviter de faire apparaître une fenêtre bizarre, et les quelques tests que j'ai faits semblent donner un résultat correct jusque là, on verra si quelqu'un a un apport intéressant en réponse à la question dans le forum.
cs_JoBleu Messages postés 91 Date d'inscription dimanche 18 août 2002 Statut Membre Dernière intervention 21 février 2015
30 déc. 2010 à 17:47
Pas mal ce code, la fenêtre du mail est bien créée, après quelques petites retouches il me reste juste un souci, j'ai une fenêtre intitulée "IBM Lotus Notes" d'ouverte en plus, avec à vrai dire rien dedans.
Ce n'est pas dramatique puisque si je la sélectionne le mail vient se mettre devant, mais ça peut troubler les utilisateurs.
Comme ce n'est pas le même sujet puisque là le thème est de parcourir une arborescence pour sélectionner la bonne fenêtre, j'ai posé la question là :

http://www.vbfrance.com/forum/sujet-SELECTIONNER-FENETRE-LOTUS-NOTES_1489504.aspx
chordially Messages postés 6 Date d'inscription mercredi 10 janvier 2007 Statut Membre Dernière intervention 14 avril 2010
14 avril 2010 à 05:37
Re-Bonjour,
J'allais oublier. Grâce aux codes glanés çà et là, j'ai pu envoyer des fichiers Excel par LotusNotes avec Access(2003). D'autres lignes de code vba me permettent maintenant de concaténer les adresses e-mail dans une requête en Access, et de les inscrire dans la fenêtre des destinataires LotusNotes.

Je dois à tous les Codes-Sourciers au moins un champ Mémo de mercis.

Là où j'ai besoin d'aide, c'est que je ne sais pas comment dépasser la limite de 250 caractères du champ texte "Courriels" de la requête "R_AdrCourriels", ce qui me limite à environ 9 adresses concaténées.

La concaténation est faite par une Fonction en VBA
Je me demande si il est possible, au lieu d'utiliser la requête "R_AdrCourriels", d'écrire directement, en VBA, un code SQL qui ferait la même chose que la requête, mais en "forçant" le type Mémo pour le champ "Courriel".
Et... Comment dois-je m'y prendre ?

Merci d'avance

Bonne journée

Chordially
Est-ce que quelqu'un a une idée ?
chordially Messages postés 6 Date d'inscription mercredi 10 janvier 2007 Statut Membre Dernière intervention 14 avril 2010
14 avril 2010 à 04:58
Bonjour,
Le lien ftp écrit par SeHN ne fonctionnait pas pour moi.
En cherchant un peu je suis arrivé à celui-ci :
http://suitedev.psclistens.com/lotus/smtsuite/smtstdev.nsf/c6b28d896717ee1386256a310011fee1/8bd591160a12d2a986256a3100122494!OpenDocument
Juste au cas où cela pourrait servir.
Bonne journée
Chordially
papouscdn Messages postés 1 Date d'inscription jeudi 11 mars 2010 Statut Membre Dernière intervention 11 mars 2010
11 mars 2010 à 23:44
salut,

J'utilise cette VB depuis un bon bout de temps maintenant qui fonctionnais à merveille jusqu'au moment que j'ai mis à jour la version di Lotus Note à 8.5. Mon problème maintenant est que le fichier ne joint plus au courriel...

Est-ce que quelqu'un aurait une solution pour moi??

Merci
P.
fleurdemavie Messages postés 2 Date d'inscription vendredi 27 mars 2009 Statut Membre Dernière intervention 27 mars 2009
27 mars 2009 à 18:02
Je m'excuse pour l'erreur j'utilise Windows 2000 Server
fleurdemavie Messages postés 2 Date d'inscription vendredi 27 mars 2009 Statut Membre Dernière intervention 27 mars 2009
27 mars 2009 à 17:54
Bonjour,
J'ai une base de données lotus note "gestion des clients" stocké dans un serveur.
Le travail qui m'as été demandé c'est d'exporter automatiquement les données de cette base vers une autre base de données ( sous Access par exemple).
J'ai commencer avec lotus script sous Lotus Domino Designer mais j'ai pas réussi à le faire!! J'ai trouvé peu de doc en français!
Existe t'il une autre méthode? Quelle méthode vous me conseiller? c'est vraiment urgent!!
J'utilise Lotus version 5, Windows 2003 Server.
Merci.
PhilIT06 Messages postés 1 Date d'inscription jeudi 4 décembre 2008 Statut Membre Dernière intervention 4 décembre 2008
4 déc. 2008 à 18:19
Bonjour à tous,
Au niveau de l'envoi de mail par VB en utilisant lotus mail, après avoir parcouru les différents forums, je n'ai pas de problème ou presque.
Par contre, dans le corps du texte, je voudrai envoyer un document HTML mais là les choses se corsent.
En effet, je voudrai envoyer un document HTML lisible (non un lien) si j'utilise EMBED_OBJECT lors de la réception, le message est transformé en :
Embedded image moved to file: pic30523.jpg où le jpg est une petite image qui ne veut rien dire.
J'ai également remarqué que le message ne comporte pas de signature alors que par défaut, j'ai un document HTML.
J'ai pensé également ne pas mettre de "Body" et ne mettre qu'une nouvelle signature qui serait en fait mon document HTML, mais je ne sais pas faire.
Ene effet, on sait paramétrer le destinataire, le sujet, le corps du texte mais les infos concernant les signatures manquent.
Toutes les aides seront les bien venues.
Merci et à bientôt de vous lire.
Le Cyd Messages postés 4 Date d'inscription vendredi 26 mai 2006 Statut Membre Dernière intervention 11 mai 2007
11 mai 2007 à 12:00
Bien sûr que c'est possible !
Pour cela tu dois récupérer le fichier de connexion sous ton nom :
tu va dans C:\Lotus Notes\Notes\Data\ tonnom.nsf
tu fais un copier / coller sur une clé ou autre et tu le recolle à la même adresse sur ton deuxième PC
( Si il n'est pas direct dans un fichier Lotus regarde dands Program Files)
J'espère que ça va t'aider
Bye
cs_bennbenn Messages postés 1 Date d'inscription lundi 1 novembre 2004 Statut Membre Dernière intervention 7 mai 2007
7 mai 2007 à 19:51
Bonjour,

J'ai un programme similaire qui fonctionne bien sur un mon poste, j'ai essayé de le lancer sur un autre poste avec les mêmes caractéristiques mais en gardant lotus ouvert sur mon poste, l'envoie de courriel ne se fait pas et je pense que la raison est que mon lotus est déjà ouvert sur un autre poste.

Y a t-il un moyen d'ouvrir mon lutus sur plusieurs postes en même temps ?

Merci

Benn
Le Cyd Messages postés 4 Date d'inscription vendredi 26 mai 2006 Statut Membre Dernière intervention 11 mai 2007
23 avril 2007 à 18:02
D'accord ! C'est super ! merci pour la réponse vraiment !
Le dernier de mes soucis est que, je ne crois pas avoir bien saisi le sens de Mbody.txt. Comment faire pour que le nom et le prénom + date apparaissent dans le corps de mémo ?
Quand j'utilise la solution donnée, Lotus me marque "Faux" dans le corps du mémo. Comment faire alors ?
Et les nom prénoms date, doivent apparaître dans une cellule ou dans tout doit être dans une seule textbox ?
Merci d'avance. Vraiment ce script est génial.
sehn Messages postés 41 Date d'inscription mardi 16 avril 2002 Statut Membre Dernière intervention 8 octobre 2004
18 avril 2007 à 15:59
Bonjour CYD,
je ne passe plus souvent par la, mais je vois que la source sert encore.
De mémoire, pour ce qui est des variables non défini il s'agit en faite d'objet :
Msujet.Text, Mto.Text, Mcc.Text, Mbcc.Text, MdocJoint1.Text, MdocJoint2.Text et Mbody.Text sont des textbox (zone de texte)
tu doit les créer.
Pour ce qui est de mettre un Objet automatique il suffit de faire Msujet.text="le titre que je veux" idem pour le reste :
Mbody.Text ="Nom: xxxx " & vbcr & "Prénom: xxxx " & vbcr & "Date de demande : xx/xx/xx " & vbcr & "Demande : xxxxx"
voila

Sehn
Le Cyd Messages postés 4 Date d'inscription vendredi 26 mai 2006 Statut Membre Dernière intervention 11 mai 2007
4 avril 2007 à 16:40
Bonjour, je trouve ce script super génial étant donné que je séchais sur ce point. Cependant, quand je veux l'éxecuter, le débogueur excel se lance et me dit que les variables sons non-définies à cet emplacement :
Private Sub envoyer_Click()
    CreateMailandAttachFileAdr Msujet.Text, Mto.Text, Mcc.Text, Mbcc.Text, MdocJoint1.Text, MdocJoint2.Text, Mbody.Text
End Sub

Si quelqu'un peut me dire pourquoi, je le remercie d'avance.

Aussi, j'ai un fichier xls qui se présente comme suit :
Nom: xxxx
Prénom: xxxx
Date de demande : xx/xx/xx
Demande : xxxxx

et je voudrais que ça apparaisse dans le corps de mon mail lotus. Comment faire ?
Et enfin, comment faire pour que s'inscrive automatiquement un objet dans le champ "object" du mail lotus ?

Merci beaucoup. En plus, je ne suis pas une pro donc je suis ouverte à toutes propositions. ^^
IPEC Messages postés 1 Date d'inscription mercredi 31 décembre 2003 Statut Membre Dernière intervention 29 janvier 2007
29 janv. 2007 à 15:52
Bonjour,

Je suis preneur comme DOMINIQUE RT de toutes infos concernant la création d'un lien (hotspot) vers un fichier sous Notes 6 (évitant ainsi dans mon cas de charger la messagerie par des pieces jointes). L'utilisation de EMBED_OBJECTLINK (1452) genere bien un mail mais aucun lien n'apparait (il semblerait d'aprés le poids du mail que la piece jointe est en plus inserée !).

Merci de vos réponses.
DominiqueRT Messages postés 2 Date d'inscription vendredi 22 novembre 2002 Statut Membre Dernière intervention 3 janvier 2007
12 déc. 2006 à 08:06
Bonjour,

J'ai le même besoin ; à savoir importer dans le Mail :
- un tableau (range) extrait d'Excel (pour un tableau croisé dynamique),
- un graphique (pas un fichier car j'y arrive avec NotesField = NotesField.EmbedObject(1454, "", FileStr) )

En remplaçant 1454 (EMBED_ATTACHMENT) par EMBED_OBJECT 1453 ou EMBED_OBJECTLINK 1452 je n'arrives à rien d'exploitable.

Si vous avez des idées je suis preneur.

Merci
picar Messages postés 4 Date d'inscription dimanche 26 novembre 2006 Statut Membre Dernière intervention 3 décembre 2006
3 déc. 2006 à 21:45
Bonjour,
Votre macro est très interressante pour envoyer un texte ou un fichier attaché
d'ailleur je m'en suis déjà servi mais aujourd'hui j'ai besoin en plus d' envoyer un tableau de mon fichier excel dans le corps de mon mail (de préférence pas entant qu'image, pour qu'on puisse utiliser le tableau ensuite quand on reçoit l'email)?
Merci pour votre aide j'ai vraiment besoin de trouver cette instruction !
Sonar92 Messages postés 1 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 30 novembre 2006
30 nov. 2006 à 17:02
Bonjour,
Merci à ceux qui m'ont apporté de l'aide d'envoi de mail avec Lotus Note, ça m'a bien servi. Cependant pour info, j'ai rencontré un souci sur la ligne suivante :
beDoc.Form = "Memo"
Quand j'essaie d'ouvrir le mail reçu, j'ai le message suivant de Lotus Note : "A stored form can not contain computed subforms". Ce message apparait plusieurs fois avant que le mail s'ouvre enfin. Pour que ça marche normalement j'ai dû changé en :
beDoc.Form = "Form"

Là, ça marche bien ! Est-ce Lotus Note V6 qui fait ça ? ...
ljouvenaux Messages postés 5 Date d'inscription mardi 29 avril 2003 Statut Membre Dernière intervention 29 décembre 2006
9 juin 2006 à 06:16
Pour eviter les erreurs de type "invalid circular use", remplacer :
Call beDoc.Send(True)

par

Call beDoc.Send(False,false)
ljouvenaux Messages postés 5 Date d'inscription mardi 29 avril 2003 Statut Membre Dernière intervention 29 décembre 2006
8 juin 2006 à 14:33
Bonjour,

Une tres bonne macro qui rend bien service !
Voici une adaptation pour MS Access VBA (2eme partie uniquement):
j'ai 2 parametres en plus de l'originale :
- pathtonotes : sert dans la 1ere macro (CreateNotesSession), vous savez ou
- SaveSentMessages : true/false
Les 3 "sendto" sont envoyes avec ","(virgule) separateur

Sub CreateMailandAttachFileAdr(pathtonotes, SaveSentMessages, SendToAdr, IsSubject, IsBody, Optional CCToAdr, Optional BCCToAdr, Optional Attach1, Optional Attach2)
Const EMBED_ATTACHMENT As Integer = 1454
Const EMBED_OBJECT As Integer = 1453
Const EMBED_OBJECTLINK As Integer = 1452

Dim s As Object ' use back end classes to obtain mail database name
Dim db As Object '
Dim doc As Object ' front end document
Dim beDoc As Object ' back end document
Dim workspace As Object ' use front end classes to display to user
Dim bodypart As Object '
Dim bodyAtt As Object '
Dim lbsession As Boolean

If CreateNotesSession(pathtonotes) Then
'creates Lotus Notes session
Set s = CreateObject("Notes.notessession")
'database connection
Set db = s.getDatabase(sSrvr, MailDbName)
If db.ISOPEN = True Then
'database already open
Else
Call db.openmail
End If
'creates a memo
Set beDoc = db.CreateDocument
beDoc.Form = "Memo"

'mail construction
Set bodypart = beDoc.CREATERICHTEXTITEM("Body")
beDoc.SendTo = Split(SendToAdr, ",")
If IsMissing(CCToAdr) False Then beDoc.CopyTo Split(CCToAdr, ",")
If IsMissing(BCCToAdr) False Then beDoc.BlindCopyTo Split(BCCToAdr, ",")
beDoc.Subject = IsSubject
Call bodypart.APPENDTEXT(IsBody & vbCrLf & vbCrLf)

' documents joint 1
If IsMissing(Attach1) = False Then
If Len(Dir(Attach1)) > 0 Then
Call bodypart.EmbedObject(EMBED_ATTACHMENT, "", Attach1, Dir(Attach1))
End If
End If

' documents joint 2
If IsMissing(Attach2) = False Then
If Len(Dir(Attach2)) > 0 Then
Dim bodyatt2
Call bodypart.EmbedObject(EMBED_ATTACHMENT, "", Attach2, Dir(Attach2))
End If
End If

'Sends the document
If SaveSentMessages True Then beDoc.SAVEMESSAGEONSEND True
Call beDoc.Send(True)

Set s = Nothing
Else
MsgBox "Lotus Notes is Closed, Could not send the mail"
End If
End Sub


Par contre, j'ai un probleme : si je me l'envoie, OK, mais des que ca va dans une version superieure a la mienne, quand la personne ouver le mail elle a un message comme quoi les forms ne sont pas bonne (invalid circular use). Quelqu'un a ce probleme ?
irq11 Messages postés 1 Date d'inscription lundi 22 mars 2004 Statut Membre Dernière intervention 12 mai 2006
12 mai 2006 à 19:48
bonjour,

merci pour le script, tout marche nickel sauf la ligne suivante

Call workspace.EditDocument(True, beDoc).FieldSetText("Body", body)

vbscript me renvoie une erreur : erreur d'exécution 7419, incorrect argument type:
object expected.

j'ai juste un client lotus 6.5.5.

j'ai même essayé ce que disait aithamus le 23/06/2004 15:39:53 mais même problème.

une idée ?

merci d'avance
julien_u Messages postés 4 Date d'inscription dimanche 22 janvier 2006 Statut Membre Dernière intervention 4 juillet 2006
22 janv. 2006 à 15:02
script très intéressant !
mais je cherche dans un premier temps à créer un nouveau utilisateur lotus notes en vbs, ce qui me permettrait de créer dans un seul script de créer un nouvel utilisateur dans l'active directory, dans lotus etc...
Est ce possible ?

Merci
skowee59 Messages postés 78 Date d'inscription vendredi 17 janvier 2003 Statut Membre Dernière intervention 29 juin 2006
10 janv. 2006 à 16:00
Bonjour,

Dans l'ensemble, l'envoi de Lotus fonctionne bien ... sous XP. Lorsque le code est exécuté sous Windows NT4, l'applicatif génère une erreur à l'étape CREATEDOCUMENT --> "Database names.nsf has not been opened yet". Il s'agit du même code légèrement remanié mais je ne comprends d'où vient le problème entre XP et NT4...
Une idée ?
Merci
sds972 Messages postés 2 Date d'inscription lundi 22 août 2005 Statut Membre Dernière intervention 28 novembre 2005
28 nov. 2005 à 16:14
Re - moi, j'ai ma reponse tte seule comme une grande :

VbCrLf
au lieu de
VbCr

Saluté!
sds972 Messages postés 2 Date d'inscription lundi 22 août 2005 Statut Membre Dernière intervention 28 novembre 2005
28 nov. 2005 à 15:03
Hello Hello!
Super la source, ça marche nickel apres qqes adaptations.
Je reste bloquée un peu betement dans le contenu du mail.
Je m'explique :
Mon fichier excel est un formulaire de demande.Le contenu du mail doit contenir le fichier (ça c ok ;-) ) et un resumé des infos du formulaire.

Exemple:

Demandeur : XXXXX
Date de la demande : XX/XX/XX
Urgent : OUI

Dans le code :
mailbody = vbCr & "Demandeur : " & param1 & _
vbCr & "Date Demande : " & param2 & _
vbCr & "Urgent : " & param3

Ce "mailbody", je le passe en paramètre de la fonction CreateMailandAttachFileAdr.

Ben ce $&#%*µ$ de Lotus, il n'interprete pas mes passages à la ligne et m'ecrit tout d'une seul bloc et c'est pas tres joli ...
Une idée?
D'avance merci!
LEDUFF Messages postés 1 Date d'inscription lundi 21 novembre 2005 Statut Membre Dernière intervention 21 novembre 2005
21 nov. 2005 à 13:31
Bonjour je ne suis absolument pas un pro. J'ai un vrai besoin par contre: POuvoir envoyer un modele Mail Notes à une liste de destinataire et que celui ci devienne un de leur modeles. Je suis en Notes V5. Merci de votre aide
cs_sadate Messages postés 30 Date d'inscription mercredi 18 décembre 2002 Statut Membre Dernière intervention 11 décembre 2009
4 oct. 2005 à 17:28
Envoyer un jpg par VB6 vers Lotus Notes dans le body URGENT

Bonjour,

Voici mon problème

Je voudrais envoyer une image JPG vers Lotus Notes mais qui s'affiche dans
le body de Lotus Notes

Voici mon code.

Que dois-je modifier?


Public Sub SendEmailHide(strSubject As String, strMessage As String,
strRecipient As String, _
blnSaveIt As Boolean, Optional strCheminAttachment As
String, _
Optional strCopyRecipient As String, _
Optional strBlindCopyRecipient As String)
'***************************************************************************
**************
'* Envoi un message automatiquement, sans le montrer à l'usager
'* Inputs :
'* strSubject : sujet du message
'* strMessage : Corps du message
'* strRecipient : Destinataires du message séparés par une virgule
'* blnSaveIt : True= on enregistre le message, False= on ne garde pas
de copie du message
'* strCheminAttachment : optionnel : chemin et nom du fichier qu'on veut
attacher
'* strCopyRecipient : optionnel : Nom des destinataires à mettre en
copie
'* strBlindCopyRecipient : optionnel : Nom des destinataires à mettre en
copie invisible
'***************************************************************************
**************
Dim objNotes As Object 'Crée une session Notes
Dim objNotesDB As Object 'Ouvre la base de données de Notes
Dim objNotesMailDoc As Object 'Message Notes
Dim objNotesBody As Object 'Corps du message Notes
Dim AttachME 'Pour créer un attachment
Dim EmbedObj
Dim arrRecipient() As String 'Array pour la liste des
destinataires
Dim arrCopyRecipient() As String 'Array pour la liste des
destinataires de copie
Dim arrBlindCopyRecipient() As String 'Array pour la liste des
destinataires de copie invisible

On Error GoTo Err:

'Ouvre la session notes et la base de données active
Set objNotes = GetObject("", "Notes.Notessession")
'ObjNotes.GetDatabase(Server, NotesDb)

Set objNotesDB = objNotes.GETDATABASE("", "")

'Ouvre la messagerie
Call objNotesDB.OPENMAIL

'Créé un nouveau document
Set objNotesMailDoc = objNotesDB.CREATEDOCUMENT()

With objNotesMailDoc
'Transforme le document en mémot
.Form = "Memo"
'Place le sujet requis
.Subject = strSubject


********************************************** ici le body
je peu tu mettre le chemin et nom du fichier.jpg
exemple : .Body = strCheminAttachment
*******************************************************

'Place le message requis
.Body = strMessage

'Vérifie s'il enregistre le message
.SAVEMESSAGEONSEND = blnSaveIt

'Place le destinataire
'On doit envoyer un array au SendTo pour qu'il fonctionne
arrRecipient = Split(strRecipient, ",")
' Debug.Print arrRecipient(0)
' Debug.Print arrRecipient(1)
' Debug.Print arrRecipient(2)
.sendto = arrRecipient

'Place la personne en copie
'On doit envoyer un array au CopyTo pour qu'il fonctionne
arrCopyRecipient = Split(strCopyRecipient, ",")
.CopyTo = arrCopyRecipient

'Place la personne en copie cachée
'On doit envoyer un array au BlindCopyTo pour qu'il fonctionne
arrBlindCopyRecipient = Split(strBlindCopyRecipient, ",")
.BlindCopyTo = arrBlindCopyRecipient

'Set up the embedded object and attachment and attach it
'Si envoyer un message d'erreur ne pas attacher un fichier
If frmCourrierLotus.LabelAction <> "Erreur" Then
Set AttachME = objNotesMailDoc.CREATERICHTEXTITEM("Attachment")
Set EmbedObj = AttachME.EMBEDOBJECT(1454, "",
Trim(strCheminAttachment), "")
End If
'Envoie le message (Je sais pas ce que fais le False)
Call .Send(False)
End With

Set objNotes = Nothing
Set objNotesDB = Nothing
Set objNotesMailDoc = Nothing
Set objNotesBody = Nothing

Exit Sub

Err:
MsgBox "Le message n'a pu être envoyé. Vérifiez avec l'administrateur
de ce programme"
'Il fait l'erreur quand la boîte de messagerie est trop pleine.
End Sub
cs_mavreick Messages postés 9 Date d'inscription jeudi 27 janvier 2005 Statut Membre Dernière intervention 23 mai 2005
11 mai 2005 à 19:38
bonjour,

quelqu'un peut il me dire si ce code marche sous lotus 6.5.3

je suis novice et je me sers de vba sous excel pour tester ce code mais ça ne marche pas.

merci de bien vouloir me répondre
fmoriss Messages postés 3 Date d'inscription mercredi 27 avril 2005 Statut Membre Dernière intervention 31 mai 2005
27 avril 2005 à 20:59
Skowee,

Voici un bout de code en VBScript qui permet de vérifier si Notes est ouvert ou non, en vérifiant la présence de NLNOTES.EXE en mémoire:

Set WshShell = WScript.CreateObject("WScript.Shell")

strComputer = "."

Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\" & strComputer & "\root\cimv2")
Set colProcesses = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'NLNOTES.EXE'")

If colProcesses.Count = 1 Then
WScript.echo "Lotus Notes est en cours d'utilisation."
Else
WScript.echo "Lotus Notes n'est pas en cours d'utilisation."
End If

Fred
skowee59 Messages postés 78 Date d'inscription vendredi 17 janvier 2003 Statut Membre Dernière intervention 29 juin 2006
29 mars 2005 à 14:31
Je sais envoyer un Lotus sans problème.
Seulement je voudrais faire un test (pour une autre appli) pour voir si Lotus Notes est ouvert. Je pensais utiliser CreateObject("") puis IsOpen mais bien sur dès que j'utilise CreateObject(""), il me lance forcément Lotus !
Quelqu'un aurait-il une solution comme du style 'tester la présence du processus nlnotes.exe" (que j'ai essayé mais ne marche pas)
Merci
sehn Messages postés 41 Date d'inscription mardi 16 avril 2002 Statut Membre Dernière intervention 8 octobre 2004
18 nov. 2004 à 20:05
salut roker et les autres

Je suis désolé je ne peut plus utiliser ce code car je ne possede plus d'environnement lotus

je remets un lien qui fonctionne ce jour

ftp://ftp.boulder.ibm.com/software/lotus/pub/lotusweb/ssdev/lsvbrb.pdf

mais le mieux à faire si ce lien ne marche plus c'est de faire une recherche sous google avec comme mot clef " lsvbrb.pdf "

bon courage

SeHN
rokar Messages postés 2 Date d'inscription jeudi 18 novembre 2004 Statut Membre Dernière intervention 18 novembre 2004
18 nov. 2004 à 12:04
Désolé, j'ai oublié :

Merci SeHN

P.S : le raccourci vers le document pdf ne fonctionne pas
rokar Messages postés 2 Date d'inscription jeudi 18 novembre 2004 Statut Membre Dernière intervention 18 novembre 2004
18 nov. 2004 à 12:00
Bonjour,

Je ne suis pas un pro de programmation lotus, et c'est mon premier coup d'essai. J'ai repris ton code (qui est poussé par rapport à mes connaissances), mais ça affiche des messages d'erreurs, ensuite ça ouvre lotus, crée le message mais ne l'envoi pas. Je l'envoi donc manuellement, mais le message reçu n'est pas affichable (erreur du genre : subforms connet be displayed ...).
Bref, j'ai essayé de le simplifier pour :
- ne pas utiliser Shell de VB
- ne pas tester si la fenetre lotus est ouverte ou pas
...

Bref ça donne ceci :

'-----------------------------------------------------------------------
Const EMBED_ATTACHMENT As Integer = 1454
Const EMBED_OBJECT As Integer = 1453
Const EMBED_OBJECTLINK As Integer = 1452

Dim session As Object 'NOTESSESSION
Dim doc As Object 'NOTESDOCUMENT
Dim db As Object 'NOTESDATABASE

Set session = CreateObject("Notes.NotesSession") 'Ouvre unje session lotus notes
Set db = session.getDatabase(session.GETENVIRONMENTSTRING("MailServer", True), session.GETENVIRONMENTSTRING("MailFile", True)) 'ouvre la base de donnée lotus mail

Set doc = db.CreateDocument()

Dim bodypart As Object
Set bodypart = doc.CREATERICHTEXTITEM("Body")

doc.Form = "SENT" 'Ouvre la page SENT
doc.Subject = "Transfert de courrier automatique" 'sujet du mail
doc.body = "Bonjour ce mail a été envoyé automatiquement" 'Contenu du mail
doc.SendTo = "john.doe@lotus.www" 'destinataire du mail

Dim bodyAtt As Object
Dim attach As String
attach = "C:\Setup.txt"
If Len(attach) > 0 Then
If Len(Dir(attach)) > 0 Then
Set bodyAtt = bodypart.EmbedObject(EMBED_ATTACHMENT, "", attach, Dir(attach))
End If
End If

Call doc.Save(True, True) 'sauvegarde le mail
Call doc.send(True) 'envois le mail

Set db = Nothing
Set session = Nothing

'-----------------------------------------------------------------------

Le seul inconvénient c'est que lotus reste ouvert après l'envoi du mail.

Est-ce que quelqu'un a une idée sur la méthode comment insérer du code formaté dans le corps du message (html ou autre solution) ?
cs_Lezar Messages postés 2 Date d'inscription vendredi 22 mars 2002 Statut Membre Dernière intervention 3 septembre 2004
3 sept. 2004 à 15:04
Bonjour,
j'ai utilisé le script qui fonctionne bien, mais je voudrais importer un fichier .rtf dans le corps du mémo.

Pour cela, je rajoute les lignes:
set uidoc=workspace.currentdocument
uidoc.import "Microsoft RTF","C:\test.rtf"

Mais cela ne fonctionne pas car "Microsoft RTF" n'est pas la bonne valeur pour que Notes reconnaisse que c'est un fichier RTF.
(j'ai aussi essayé "RTF" ou "MicrosoftWord RTF" mais sans résultat !Par contre quand je met "html" ça marche, mais moi je veux du RTF !!)

Quelqu'un peut-il m'aider ?
DotNET74 Messages postés 13 Date d'inscription jeudi 14 août 2003 Statut Membre Dernière intervention 5 août 2004
12 juil. 2004 à 21:57
Bonjour,

Voilà je voulais savoir comment créer un mail Lotus Notes qui s'appui sur un des modèles de mail disponible dans Lotus.

Merci
aithamus Messages postés 1 Date d'inscription mardi 18 mai 2004 Statut Membre Dernière intervention 23 juin 2004
23 juin 2004 à 15:39
bonjour tout le monde,
j'ai dévélopper un code tout simple pour accéder à des bases de données lotus Notes 4.6 (activeX) qui pourrait répondre à la question de BIG10 :

Dim ws As Object
Set ws = CreateObject("Notes.NotesUIWorkspace")
Call ws.OpenDatabase(ServerName, BasePath)

ça marche mais j'ai un petit soucis que vous pourriez peut etre résoudre: quand j'ouvre mes bases, elles sont toujours en mode réduit dans la barre des taches, alors que je voudrais que la base ouverte s'affiche en plein écran!

merci d'avance pour votre aide !!!

ensuite, si quelqu'un s'y connait au démarches à faire afin de signer un controle ActiveX (inséré dans une page HTML) pour qu'il soit téléchargeable par les navigateurs IE des postes client sans problèmes, je lui serai reconnaissant de me donner quelques tuyaux
et encore merci!!!
thorch68 Messages postés 2 Date d'inscription mardi 29 juillet 2003 Statut Membre Dernière intervention 11 juin 2004
11 juin 2004 à 18:17
salut, excellent ce code, j'aimerais savoir, si en creant une table avec des adresses mails, on peut envoyer certains fichier a certaines personnes en un seul coup.

Je m'explique : Je souhaiterais envoyer a plusieur destinataires xxx@xxx.fr, yyy@ttt.fr, .... le fichier aaa.zip
rrr@xxx.fr, uuu@uuu.fr, .... le fichier bbb.zip

les adresses sont dans une table qui contient deus colonnes : une pour les adresses mail et l'autre, le chemin d'accès du fichier à envoyer pour cette personne.

Franchement j'ai trop galeré pour trouver. Si quelqu'un peut m'aider
cs_TonTonFr Messages postés 1 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 14 mai 2004
14 mai 2004 à 12:21
salut, je veux accéder à lotus à partir d'un prog delphi donc j'ai fait à peu de choses près la même chose que toi pour ce qui est des appels de fonctions. Mais un problème se pose à moi parce que je souhaiterai automatiser mon prog pour qu'il reste invisible à l'utilisateur, et donc que lotus ne s'ouvre pas (ou au pire, se ferme après).
J'ai déjà fait de l'ole-automation avec excel et j'ai vu qu'il n'était pas obligatoire d'ouvrir excel pour le faire. Est-il possible de faire pareil avec lotus ou doit-on toujours ouvrir Lotus pour acceder aux bases?
Enfin, comme j'ai dit, au pire, je veux bien qu'il s'ouvre mais à condidtion que je puisse le fermer après.. C'est possible de le fermer à partir de mon prog delphi?

D'avance merci
TonTon
sehn Messages postés 41 Date d'inscription mardi 16 avril 2002 Statut Membre Dernière intervention 8 octobre 2004
11 févr. 2004 à 16:27
salut big10

je ne possède plus d'environnement Lotus Notes donc je ne peux pas tester ton problème. Mais je penses que tu dois définir ta base de travail (pourtant, dans mon code c'est déjà fait) avant d'ouvrir ton mail.
Regarde dans le document pdf que j'ai mis dans ma source page 130.
Je suis désolé de ne pas pouvoir t'aider plus que ça

SeHN
BIG10 Messages postés 1 Date d'inscription lundi 2 février 2004 Statut Membre Dernière intervention 10 février 2004
10 févr. 2004 à 16:26
Bonjour,

j'ai voulu utiliser cette fonction mais j'ai un problème car une erreur se produit au niveau de call workspace.editdocument (true,bedoc).fieldsettext ("Body",body)
En effet, le message d'erreur me dit que la commande spécifiée n'est pas disponible à partir de l'espace groupe de travail...

En fait au niveau lotus j'ai un espace de travail puis plusieurs bases de documents dont une me servant pour la messagerie... Comment dois je faire pour y avoir accès en VBA?

Merci pour réponse
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
9 janv. 2004 à 08:18
G la version Lotus Notes R5, qui fonctionne bien pourtant !!
T sur qu'il ni a pas de Ref a mettre ?
sehn Messages postés 41 Date d'inscription mardi 16 avril 2002 Statut Membre Dernière intervention 8 octobre 2004
8 janv. 2004 à 18:29
Tu as bien Lotus Notes sur ton PC ? Quel est ta version de Lotus Notes ?
Bizzard !!!
il n'est pourtant pas nécessaire d'ajouter de référence
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
5 janv. 2004 à 16:21
Chez moi ca met une erreur sur la ligne du CreateObject :

Erreur d'exécution '429' :
Le Composant ActiveX ne peut creer l'objet

D'ou vient cette erreur ????

MERCI D AVANCE
cs_Dalton Messages postés 10 Date d'inscription lundi 6 mai 2002 Statut Membre Dernière intervention 13 novembre 2007
3 déc. 2003 à 23:06
Ma conexion à lotus note nécessite un mot de passe, y a t il une instruction pour transmettre le mot de passe par VB?
Merci.
sehn Messages postés 41 Date d'inscription mardi 16 avril 2002 Statut Membre Dernière intervention 8 octobre 2004
3 déc. 2003 à 10:56
Salut Jack,

J'ai mis a jour ma source. J'espere que ca va t'aider.
J'ai retester mon lien, et il fonctionne bien !!!!!

bon code
SeHN
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
2 déc. 2003 à 20:31
Salut Sehn
Dommage, le lien ne fonctionne pas.
Je l'ai quand même trouvé à celle-ci : http://suitedev.psclistens.com/lotus/smtsuite/smtstdev.nsf à gauche dans la rubrique "Resources" et le lien "LotusScript for Visual Basic Programmers"
Si tu as planché sur le problème des mails gérés par LotusNotes : petite question.
Mon appli possède une liste de destinataires et je voudrais envoyer cette liste à LotusNotes simplement pour qu'il crée un nouveau mémo avec tous ces noms MAIS sans l'envoyer, juste m'éviter de le créer moi-même et de copier-coller ces noms.
Une idée ?