PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2024 → Email texte HTML
Email texte HTML
Iniciado por Masse Daniel, 23,mar. 2018 16:08 - 10 respuestas
Publicado el 23,marzo 2018 - 16:08
Bonjour,

J'essaie d'adapter un envoi d'email par lien OLE OUTLOOK pour y mettre du texte au format HTML

J'ai fait ceci :

OUTLOOK est un objet OLE dynamique
Email est un objet OLE dynamique
nItem est un entier
nItem = 0
OUTLOOK = allouer un objet OLE "Outlook.Application"
Email = OUTLOOK>>CreateItem(nItem)
Email>>to = "toto@wanadoo.fr"
Email>>subject = "TEST"
Email>>BodyFormat="olFormatHTML"
Email>>htmlBody = ChampHTML
Email>>Display()
libérer Email
libérer OUTLOOK

J'ai une erreur à l'éxécution sur le BodyFormat, et si je ne le mets pas, le texte est pas traduit en HTML
erreur :
Vous accédez au membre Automation BodyFormat.
Erreur 80020005, Type incorrect pour le paramètre 1

Une idée ?

Merci d'avance
Daniel Masse
Miembro registrado
1.304 mensajes
Popularité : +47 (51 votes)
Publicado el 24,marzo 2018 - 11:43
Bonjour Daniel,

BodyFormat est un numérique et non une chaîne

Il faut donc remplacer

Email>>BodyFormat="olFormatHTML"


Par ceci

Email>>BodyFormat=2


Je pense que ceci va t'aider :D

https://msdn.microsoft.com/en-us/library/office/aa219371(v=office.11).aspx

A+
Daryl

--
http://www.concept4u2.com
Publicado el 26,marzo 2018 - 09:20
Bonjour,
Merci pour la réponse.
Je m'en était douté un peu et j'avais testé 1, 2 et 3 (sans avoir la liste).
Cela ne plante plus mais avec 2 ça perd tous les tabus, cadres, police, etc ...
Je suis en Outlook 2016 sous Win 10.
J'ai aussi essayer sous win 7 et office 2013.

J'ai aussi essayer en session SMTP, mais là j'ai une histoire d'erreur de spooler email asynchrone non ouvert.
Et cela ne m'ira pas puisqu'on ne retrouve pas trace du message dans la boite d'envoi.

Encore quelques idées ?
Merci d'avance,
Daniel
Miembro registrado
1.304 mensajes
Popularité : +47 (51 votes)
Publicado el 26,marzo 2018 - 10:28
Salut Daniel,

As-tu essayé en mode 3 avec du RTF, si le mode 2 pose problème en HTML ?

A+
Daryl

--
http://www.concept4u2.com
Miembro registrado
940 mensajes
Popularité : +66 (68 votes)
Publicado el 26,marzo 2018 - 10:55
bonjour ,

des tabulations ?
vous avez une feuille de style dans votre code HTML ?
Publicado el 26,marzo 2018 - 11:09
Re bonjour,
J'ai essayé avec RTFBody, j'ai un message d'erreur :
Erreur à la ligne 27 du traitement Clic sur TEST.
Vous accédez au membre Automation rtfBody.
Erreur 800706BE
Erreur 800706BA
J'explique mieux, peut-être ce que je fait :
Je pars d'une édition affichée à l'écran, puis exporter en HTML ou Word pour le teste HTML ou RTF.
Puis je charge le champ HTML ou RTF par un fchargetexte.
A l'écran, mon champ HTML : Nickel
Le champ RTF : déjà plus de cadres, mais aspect du texte conservé.
Mon édition est une édition programmée (iimprime, icadre, etc ... pas un wdétat)
Puis passage à l'email (pour html), le texte n'a plus d'aspect, perte des cadres, polices, etc ...
Y'a-t-il des tabus ou pas ?, j'en sais rien : je pars d'un aspect visuel.

Merci pour votre aide.
Daniel
Miembro registrado
1.304 mensajes
Popularité : +47 (51 votes)
Publicado el 26,marzo 2018 - 12:09
Salut Daniel,

Je ne comprends pas ce que tu fais. :(

Affiche ton code pour qu'on comprennes, sinon on va encore tourner longtemps en rond.

A+
Daryl

--
http://www.concept4u2.com
Publicado el 26,marzo 2018 - 15:22
Re bonjour,

Je remets le code que j'avais mis au départ, en corrigeant la valeur de BodyFormat :

OUTLOOK est un objet OLE dynamique
Email est un objet OLE dynamique
nItem est un entier
nItem = 0
OUTLOOK = allouer un objet OLE "Outlook.Application"
Email = OUTLOOK>>CreateItem(nItem)
Email>>to = "toto@wanadoo.fr"
Email>>subject = "TEST"
Email>>BodyFormat=2
Email>>HTMLBody = ChampHTML
Email>>Display()
libérer Email
libérer OUTLOOK

Pour charger le CHAMPHTML :
ChampHTML = fChargeTexte(fRepExe+"\Recap.htm")

Et le recap.htm est un export d'un aperçu écran correspondant à une édition d'un tableau.

Daniel
Miembro registrado
1.304 mensajes
Popularité : +47 (51 votes)
Publicado el 26,marzo 2018 - 17:10
Salut Daniel,

Et quel est l'erreur ?
Et que se passe t'il au niveau de l'affichage, est-ce que tu sais faire une impression écran du résultat de Recap.html et une de ton email créé ?

Ton fichier Recap.html est du pur HTML ou genre un doc Word que tu sauve au format HTML qui contient plein de feuille de styles ?

A+
Daryl

--
http://www.concept4u2.com
Publicado el 27,marzo 2018 - 10:22
Bonjour,
Merci de t'accrocher à mon problème.

Vue de mon fichier html :




Vue de l'email généré :





Le fichier HTML est créé par exportation de l'aperçu écran de mon édition.

Vue du détail du html (début) :
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><!-- 22/03/2018 15:47 WebDev 20 20.0.134.28 -->
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
<meta name="generator" content="WEBDEV">
<meta http-equiv="X-UA-Compatible" content="IE=5">
<style type="text/css">.wblien,.wblienHorsZTR {border:0;background:transparent;padding:0;text-align:center;box-shadow:none;}.wblienHorsZTR {border:0 !important;background:transparent !important;outline-width:0 !important;} :not(.wblienHorsZTR[class^=l-]) {box-shadow: none !important;}a:active{}a:visited{}</style><link rel="stylesheet" type="text/css" href="res/static.css?44a6c21f">
<style type="text/css">
table {font-size:0px;border-collapse:collapse;border-spacing:0}TD{padding:0}TR{vertical-align:top}@-moz-document url-prefix() { @media print { body { overflow:visible !important; } } }
body{overflow:auto;margin:0;}html,body { background-color:#FFFFFF;}#page {position:relative;}.l-1 {font-family:Calibri;font-size:16pt;font-weight:bold;color:#000000;line-height:27px;text-align:center;vertical-align:middle;}
.l-2 {font-family:Calibri;font-size:8pt;color:#000000;line-height:14px;text-align:right;vertical-align:middle;}
.l-3 {background-color:#000000;}
.l-4 {font-family:Calibri;font-size:14pt;font-weight:bold;color:#FFFFFF;line-height:24px;text-align:center;vertical-align:middle;}
.l-5 {font-family:Calibri;font-size:10pt;color:#000000;line-height:17px;text-align:left;vertical-align:middle;}
.l-6 {border-top-width:0;border-right-width:0;border-bottom-width:0;border-left-width:0;border-left:1px solid #000000;border-top:1px solid #000000;border-right:1px solid #000000;border-bottom:1px solid #000000;}
.l-7 {font-family:Arial;font-size:11pt;color:#000000;line-height:17px;text-align:left;vertical-align:middle;}
.l-8 {font-family:Calibri;font-size:12pt;font-weight:bold;color:#000000;line-height:20px;text-align:left;vertical-align:middle;}
.l-9 {font-family:Calibri;font-size:12pt;color:#000000;line-height:20px;text-align:left;vertical-align:middle;}
.l-10 {font-family:Calibri;font-size:10pt;color:#000000;line-height:17px;text-align:right;vertical-align:middle;}
.l-11 {font-family:Calibri;font-size:10pt;font-weight:bold;color:#000000;line-height:17px;text-align:left;vertical-align:middle;}
.l-12 {font-family:Calibri;font-size:10pt;font-weight:bold;color:#000000;line-height:17px;text-align:right;vertical-align:middle;}
.l-13 {font-family:Calibri;font-size:12pt;font-weight:bold;color:#000000;line-height:20px;text-align:center;vertical-align:middle;}
.l-14 {font-family:Arial;font-size:6pt;color:#000000;line-height:9px;text-align:left;vertical-align:middle;}
.wbplanche{background-repeat:repeat;background-position:0% 0%;background-attachment:scroll;background-size:auto auto;background-origin:padding-box;}.wbplancheLibInc{_font-size:1px;}
</style>
</head>
<body>
<div id="dww" style="position:absolute;left:23px;top:23px;width:748px;height:156px;z-index:0;"><table cellspacing=0 cellpadding=0 width="748">

<tr class="l-0 padding">
<td height="156"></td> </tr>


Slts
Daniel
Miembro registrado
1.304 mensajes
Popularité : +47 (51 votes)
Publicado el 27,marzo 2018 - 20:41
Salut Daniel,

Ouaips en effet c'est pas top, mais par contre c'est tout à fait normal.
Tu as créé une page HTML sous WebDev que tu reprends dans ton mail, mais quand tu regarde la source il y a plein de lien qui vont vers d'autres fichiers que tu ne charge pas dans ton document.

Bon perso, je ne travaillerais pas du tout comme ça.
Dans Outlook active l'option Développeur dans les options (si ce n'est pas déjà fait).
Ensuite tu sélectionnes la création d'un formulaire que tu adapte comme tu voudras.
Et enfin dans ton programme, lorsque tu crées le mail indique le formulaire à utiliser.

Ca te prendra nettement moins de temps pour un résultat bien mieux visuellement. :D

A+
Daryl

--
http://www.concept4u2.com