IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WinDev Discussion :

Lotus Notes en OLE avec Lotus Script [WD16]


Sujet :

WinDev

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 80
    Points : 48
    Points
    48
    Par défaut Lotus Notes en OLE avec Lotus Script
    Bonjour à tous,

    J'essaie depuis un certain temps d'envoyer des mails en automatique via Lotus Notes.
    Avec les fonction Windev EmailOuvreSessionNotes ... je n'avais que des messages d'erreur.
    J'ai donc décidé de passer par du OLE et cela fonctionne ... à quelques soucis près.
    C'est pourquoi je me tourne vers vous pour tenter de corriger ceux-ci.

    1)Problème lorsque plusieurs destinataires sont choisis.
    Voici mon code :

    //Liste des destinataires
    sDestinataires est une chaîne
    POUR TOUTE LIGNE DE LISTE_Destinataires
    sDestinataires=LISTE_Destinataires..ValeurAffichée+","+sDestinataires
    FIN
    ...
    // Destinataires
    Doc>>ReplaceItemValue("SendTo", sDestinataires)
    En fait cela bug lorsqu'il y a plusieurs destinataires alors que quand je n'en choisi qu'un cela fonctionne ...
    Cela vient-il de la "," entre les adresses ?

    2)Je ne peux pas envoyer de pièces jointes autres que des fichiers .txt, or j'aimerais joindre un fichier Excel et un .zip.
    Voici mon code :
    // Creation des pieces-jointes
    SI NomduZip <> "" ALORS
    AttachMe = Doc>>CreateItem("Répertoire")
    EmbedObj = AttachMe>>EmbedObject(1454, "", NomduZip,"Répertoire")
    //Doc>>CreateItem("Répertoire")
    Doc>>AttachMe>>add(NomduZip)//fichier joint
    FIN
    SI FichierExcelAEnvoyer <> "" ALORS
    AttachMe = Doc>>CreateRichTextItem("FichierExcelAEnvoyer")
    EmbedObj = AttachMe>>EmbedObject(1454, "", FichierExcelAEnvoyer,"FichierExcelAEnvoyer")
    Doc>>CreateRichTextItem("FichierExcelAEnvoyer")
    FIN
    SI FichierDéchets <> "" ALORS
    AttachMe = Doc>>CreateRichTextItem("FichierDéchets")
    EmbedObj = AttachMe>>EmbedObject(1454, "", FichierDéchets,"FichierDéchets")
    Doc>>CreateRichTextItem("FichierDéchets")
    FIN
    en fait j'ai cherché, veinement, un langage Lotus Script pour les pièces jointes autres que rtf mais je ne trouve rien

    Merci à tous d'avance pour votre aide.

    Justine.

  2. #2
    Membre éprouvé Avatar de wimbish
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 416
    Points : 1 073
    Points
    1 073
    Par défaut
    Bonjour,
    pour le point 1): tu fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    sDestinataires est une chaîne
    POUR TOUTE LIGNE DE LISTE_Destinataires
    sDestinataires=LISTE_Destinataires..ValeurAffichée+","+sDestinataires
    FIN
    Il y a peut être un "," en trop à la fin de sDestinataires.

    Christophe.
    Christophe.

    Tous les chemins mènent à Rome http://doc.pcsoft.fr/fr-FR/

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 80
    Points : 48
    Points
    48
    Par défaut
    Merci pour ta réponse Christophe.

    J'ai corrigé le code avec :
    //Liste des destinataires
    sDestinataires est une chaîne
    POUR TOUTE LIGNE DE LISTE_Destinataires
    SI LISTE_Destinataires=1 ALORS
    sDestinataires=LISTE_Destinataires..ValeurAffichée
    SINON
    sDestinataires=sDestinataires+", "+LISTE_Destinataires..ValeurAffichée
    FIN
    FIN
    Mais j'ai toujours un problème.
    En fait seul le 1er destinataire reçoit l'email.
    La seconde adresse est coupée à partir du @, exemple :
    "jean.dupont@gmail.com, gérard.laurent@yahoo.fr" devient => jean.dupont@gmail.com, gérard.laurent
    Mais cela ne se voit pas dans le message envoyé Lotus (que l'on voit dans ses messages envoyés). On ne peut le voir qu'en regardant le détail de l'envoi du mail reçu par jean.dupont@gmail.com.

    Cela veut peut être dire que la fonction "ReplaceItemValue("SendTo", sDestinataires)" n'accepte qu'un seul @ et donc un seul destinataire et qu'il y a une autre fonction pour les destinataires multiple ?

    Please, Help.
    Merci d'avance.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 80
    Points : 48
    Points
    48
    Par défaut
    J'ai trouvé une manière de truander un peu pour l'envoi multiple en faisant une boucle :
    // Envoi du mail
    //Liste des destinataires
    sDestinataires est une chaîne
    sDestinataire est une chaîne
    POUR TOUTE LIGNE DE LISTE_Destinataires
    SI LISTE_Destinataires=1 ALORS
    sDestinataires=LISTE_Destinataires..ValeurAffichée
    sDestinataire=LISTE_Destinataires..ValeurAffichée
    // Envoi
    Doc>>ReplaceItemValue("SendTo", sDestinataire)
    Doc>>Send(OLEFaux)
    //Email.NbDestinataire++
    SINON
    sDestinataires=sDestinataires+RC+LISTE_Destinataires..ValeurAffichée
    sDestinataire=LISTE_Destinataires..ValeurAffichée
    // Envoi
    Doc>>ReplaceItemValue("SendTo", sDestinataire)
    Doc>>Send(OLEFaux)
    FIN
    FIN

    Info("Mail envoyé à : "+RC + sDestinataires)
    Le soucis c'est que du coup je vais avoir plein de mails dans mes mails envoyés et que les destinataires ne voient pas les autres destinataires.
    Mais ça marche donc c'est le principale.

    Si toutefois quelqu'un à une solution pour l'envoi multiple je suis toujours preneuse.


    Et si quelqu'un a une solution pour l'envoi de .zip et de .xls je suis encore plus preneuse.

    Merci à tous.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 80
    Points : 48
    Points
    48
    Par défaut
    Je réponds une dernière fois à moi-même ...

    En fait cela marche pour les fichiers Excel (j'avais une boulette dans l'adresse du fichier à joindre).

    Mais malheureusement toujours pas pour les .zip !

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 80
    Points : 48
    Points
    48
    Par défaut
    Finalement je me réponds encore un fois à moi-même.

    Je viens de comprendre pourquoi les zip ne marchaient pas.
    Je venais de le créer et il faut le fermer avant de l'envoyer via "zipFerme()".

    Donc mes pièces jointes sont maintenant ok.

    Il ne me reste plus qu'à trouver comment mettre plusieurs destinataires... je veux bien de l'aide pour cela parce que je crois avoir épuisé toutes mes idées.

    Merci d'avance.

  7. #7
    Membre expérimenté Avatar de Tober
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    824
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 824
    Points : 1 381
    Points
    1 381
    Par défaut
    Je viens de regarder sur mon Lotus Notes les propriétés d'un e-mail à plusieurs destinataires, et le SendTo est sous cette forme :
    Code Bidouille Notes : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    "Email1"
    "Email2"
    Donc peut être qu'en mettant des RC au lieu des virgules, ça marchera... (en entourant les emails entre guillemets également.

    Autre chose, tu dis que l'envoi d'email avec les fonctions prédéfinis d'email ne marche pas pour Lotus Notes, hors moi j'ai un logiciel qui envoie des emails, ouvre une messagerie, lis des emails de la inbox et autres sans problèmes avec les fonctions fournies...
    Exemple : (email, email1, email2 doivent être de vrais emails...)
    Code WLangage : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    //Ouverture d'une session SMTP
    EmailOuvreSessionSMTP("ServerSMTP", "172.168.0.1")
    SI ErreurDétectée ALORS
    	Erreur(ErreurInfo(errMessage))
    	RETOUR
    FIN
     
    //Expéditeur du message
    Email.Expéditeur = "email"
     
    //Destinataire(s) du message
    Email.Destinataire[1] = "email1"
    Email.NbDestinataire = 1
     
    //Destinataire(s) en copie du message
    Email.Cci[1] = "email2"
    Email.NbCci = 1
     
    //Pièces jointes
    Email.NbAttache = 0
     
    //Sujet et contenu du message
    Email.Sujet = "Sujet"
    Email.Message = "Message"
     
    //Envoi du message
    EmailEnvoieMessage("ServerSMTP", EmailOptionEncodeEntête)
    SI ErreurDétectée ALORS
    	Erreur(ErreurInfo(errMessage))
    FIN
     
    //Remise à zéro des variables Email
    EmailRAZ()
     
    //Fermeture de la session SMTP
    EmailFermeSession("ServerSMTP")

    Enfin bref, c'est presque l'exemple fournit dans WinDev

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 80
    Points : 48
    Points
    48
    Par défaut
    Merci Tober pour tes réponses.

    En fait je viens tout juste de trouver pour les destinataires.
    J'avais essayé avec un RC mais cela ne prenais que le premier email.
    En fait je viens d'essayer avec un tableau et du coup ben ça marche.

    Voici le code :

    //Liste des destinataires
    TableauDestinataires est un tableau de chaînes
    sDestinataires est une chaîne
    sDestinataire est une chaîne
    POUR TOUTE LIGNE DE LISTE_Destinataires
    SI LISTE_Destinataires=1 ALORS
    sDestinataires=LISTE_Destinataires..ValeurAffichée
    sDestinataire=LISTE_Destinataires..ValeurAffichée
    TableauAjoute ( TableauDestinataires , sDestinataire )
    SINON
    sDestinataires=sDestinataires+RC+LISTE_Destinataires..ValeurAffichée
    sDestinataire=LISTE_Destinataires..ValeurAffichée
    TableauAjoute ( TableauDestinataires , sDestinataire )
    FIN
    FIN

    // Envoi
    Doc>>ReplaceItemValue("SendTo", TableauDestinataires)
    Concernant les fonctions Windev pour Lotus, en fait il faut pointer sur le serveur Domino etc ... (en tout cas c'est ce que j'ai compris) et les fichiers décrivant les paramètres Lotus dans notre entreprise ne sont pas tous au même endroit (selon l'informaticien qui a installé le Lotus) du coup ça me compliquait bien la tâche.
    Enfin si quelqu'un a réussi la même procédure que celle que je viens de décrire en OLE avec les fonctions Windev pour LOTUS ça serait hyper intéressant (pour les prochains qui se poserons la question) de poster le code ici ...

    Merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. How to Configure Lotus Notes | How to Install Lotus Notes
    Par adrianasmt20 dans le forum Lotus Notes
    Réponses: 0
    Dernier message: 15/07/2012, 08h16
  2. Récupérer une pièce jointe avec Lotus Notes
    Par Marty000 dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 19/11/2007, 15h31
  3. Réponses: 2
    Dernier message: 21/11/2006, 12h08
  4. Lien mailto avec Lotus Notes
    Par angelinemm dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 07/02/2006, 15h17
  5. Envoi de mail avec Lotus Notes depuis VB
    Par mdriesbach dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 09/11/2005, 16h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo