Envoyer par email et ajouter un lien pour ouvrir le fichier  (Lu 338 fois) Partager ce sujet Imprimer

1 B


Fun27  15 octobre 2020 : 18:35

Je ne suis que débutant en codage JavaScript et j'utilise Foxit PhantomPDF.

J'ai ajouté un code pour envoyer le PDF par e-mail et j'aimerais savoir si il est possible d'afficher un raccourci dans l'email à transmettre qui pointe sur le fichier ou le répertoire source?
Comme ce fichier est redistribuer en plusieurs collaborateurs sur le réseau j'aimerai que chaque utilisateur l'ouvre uniquement depuis son répertoire d'origine.

Voici mon code actuel:

var fTo = this.getField("To").value;
var fSubject = this.getField("Subject").value;
var fBody = this.getField("Body").value;

this.mailDoc({cTo: fTo, cSubject: fSubject, cMsg: fBody});
app.execMenuItem("Save");
Merci d'avance pour votre aide.

IP archivée


bebarth  15 octobre 2020 : 18:53

bonjour,
Le chemin du fichier est indiqué par "this.path". Tu peux donc le rattacher au corps du message...
...
var fBody = this.getField("Body").value+" "+this.path;
...
Tu nous dis si ça fonctionne !
@+
 :bonjour:

IP archivée


Fun27  16 octobre 2020 : 17:45

Parfait ça fonctionne, merci. :bravo:


Par contre est il possible de le transformer en lien hypertexte et l'utilisateur n'aurait qu'a cliquer dessus pour l'ouvrir?
Je pense qu'il faudrait déjà que mon email soit en mode HTML!


Ou si pas possible au moins de supprimer le PDF joint afin d’empêcher l'ouverture du fichier hors de son répertoire d'origine?

IP archivée


Merlin  16 octobre 2020 : 19:13

Bonjour

Par contre est il possible de le transformer en lien hypertexte et l'utilisateur n'aurait qu'a cliquer dessus pour l'ouvrir ?
C'est un réglage utilisateur sur lequel on n'a aucune maitrise, si le destinataire a réglé son logiciel de messagerie pour avoir les messages au format texte ça ne fonctionnera pas.
S'il l’a réglé au format HTML (réglage par défaut, cas le plus courant) ça fonctionnera automatiquement.

IP archivée


Merlin  16 octobre 2020 : 19:14

Ou si pas possible au moins de supprimer le PDF joint afin d’empêcher l'ouverture du fichier hors de son répertoire d'origine?
:tutut:
Ce n'est pas possible.

IP archivée


Fun27  17 octobre 2020 : 11:09

Ok, merci.
Donc j'oublie la suppression du pdf joint dans l’email, par contre j'ai testé le lien hypertexte et il ne se créer pas automatiquement! J'ai pourtant l'option composer les messages dans le format HTML sur la boite du réceptionnaire ainsi que dans mes propres réglage Outlook.

De plus au moment du code il ouvre un email en format texte brute, je dois donc le changer manuellement en HTML!
le texte qui s'affiche grace au code +this.path; ne me semble lui aussi pas correct:
/O/Projets/20-155.pdf
J'ai essayé de le modifier manuellement comme ceci  O:\Projets\20-155.pdf  en l'envoyant au format HTML mais pas de création automatique du raccourci :Smiley11:
J'ai besoin d'aide, merci d'avance!



IP archivée


Merlin  17 octobre 2020 : 19:04

Il devrait y avoir une option dans les Préférences/Options de Outlook pour permettre la détection automatique des URL dans les messages.

IP archivée


Fun27  18 octobre 2020 : 10:44

Le problème de création automatique était du au faite d'avoir un nom de répertoire réseau (caché)

en réalité pour créer automatiquement un lien sur le répertoire \O\Projet\  je dois écrire : \\CHPDWS1\Data\O\Projet\
Maintenant mon idée est donc d'écrire le nom du répertoire réseau et d'y ajouter uniquement le nom du fichier mais mon code ci dessous ne fonctionne pas!

var fTo = this.getField("To").value;
var fSubject = this.getField("Subject").value;
var fBody = this.getField("Body").value+"\\CHPDWS1\Data\O\Projet\"+this.filename;

this.mailDoc({cTo: fTo, cSubject: fSubject, cMsg: fBody});
Cela serait il possible?

IP archivée


bebarth  18 octobre 2020 : 14:58

bonjour,
... pas +this.filename; mais +this.documentFileName;
@+
 :bonjour:

IP archivée


Fun27  18 octobre 2020 : 17:33

Merci je touche au but mais j'ai encore un problème, apparemment le code ne fonctionne pas avec les barres oblique inversé \  et c'est pourtant ce dont j'ai besoin pour créer automatiquement le lien hypertexte
si je met le code ci dessous j'ai le résultat voulu mais avec les barres oblique (/) dans le mauvais sens, si je remplace par les barres oblique inversé (\) le code ne fonctionne plus!
var fTo = this.getField("To").value;
var fSubject = this.getField("Subject1").value;
var fBody = this.getField("Body1").value+"//CHPDWS1/Data/O/Projets/"+this.documentFileName;

this.mailDoc({cTo: fTo, cSubject: fSubject, cMsg: fBody});

encore merci pour votre grande aide.


IP archivée


bebarth  18 octobre 2020 : 19:58

Remplace tous tes caractères "/" par "\/" (antislash + slash), ce qui donne :
this.getField("Body1").value+"\/\/CHPDWS1\/Data\/O\/Projets\/"+this.documentFileName;
Tu peux également remplacer tous tes "/" par son caractère unicode "\u002F" !
https://www.abracadabrapdf.net/utilitaires/utilitaires-pdf/abra-txt2unicode-texte-vers-unicode/

Ou remplacer tout le texte :
var fBody = this.getField("Body1").value+"\u002F\u002F\u0043\u0048\u0050\u0044\u0057\u0053\u0031\u002F\u0044\u0061\u0074\u0061\u002F\u004F\u002F\u0050\u0072\u006F\u006A\u0065\u0074\u0073\u002F"+this.documentFileName;@+
 :bonjour:

IP archivée


Merlin  19 octobre 2020 : 09:17

Merci je touche au but mais j'ai encore un problème, apparemment le code ne fonctionne pas…
Il faut absolument que tu lises cet article/tuto :
https://www.abracadabrapdf.net/ressources-et-tutos/js-et-formulaires-ressources/pdf-javascript-et-unicode/

IP archivée


Fun27  26 octobre 2020 : 16:17

Merci grâce à votre aide ça fonctionne. :bravo:


IP archivée


Fun27  26 octobre 2020 : 17:14

Je cherche maintenant a exécuter un fichier .vbs en passant par un code JavaScript?


J'utilisait l'action "ouvrir/exécuter un fichier" mais je remarque qu'il perd le lien avec le répertoire quand je sauvegarde le fichier PDF modèle sous un autre nom!


Encore merci.

IP archivée


Merlin  26 octobre 2020 : 19:04

Je cherche maintenant a exécuter un fichier .vbs en passant par un code JavaScript ?
:joker:
Je ne connais pas du tout VBS.

IP archivée


Fun27  27 octobre 2020 : 08:28

Pour faire plus simple mon but est simplement d’exécuter un fichier depuis Foxit PhantomPDF.
Avec quelque chose du genre :
Citer
Start "O:\\Projets\2020" Code.vbs

Cela est-il possible ?


IP archivée