Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Blat - Script - Attachement

15 réponses
Avatar
Wildcat
Hi all,

I'm working on a script using blat to send reports via email.
I manage to do so to attache one report, my attachement line looks like this :

Attachmt = " -attach " & Chr(34) & RapportName1 & Chr(34)

Note 1 : all variables are set, and I have a cmdline to run blat with From,
To, etc...

Note 2 : I have to use Char(34) because my path and filename have spaces in.
Without Char(34), blat log show it doesn't understand :

C:\My
Document\Report on client.xls

With Char(34), it "understands" well C:\My Document\Report on Client.xls

Then I wanted to send 2 attached files. FileNames (+path) have to be
separated by comas.

For testing, I put my file on C:\ with no space in files names
So path + file name : C:\Report1.xls and C:\Report2.xls.

My attachement line is :

Attachmt = " -attach " & RapportName1 &","& RapportName2

This attachement line works fine.

And funny thing, it also works with Chr(34) :

Attachmt = " -attach " & Chr(34) & RapportName1 &","& RapportName2 & Chr(34)

Then I wanted to make the same with wy path and files names with spaces :

C:\My Documents\Repport on Client1.xls
C:\My Document\Repport on Client2.xls

And... It doesn't work. I'm quite sure it's some stupid thing with Char(34),
or " to add somewhere, but I didn't found the correct line.

If someone can help,

Thanks in advance.

10 réponses

1 2
Avatar
Gilles LAURENT [MVP]
"Wildcat" a écrit dans le message de
news:
| Hi all,

Hi ! Bonjour !
Note : You're here in a french forum and you're welcome ;-)

[...]
| Then I wanted to make the same with wy path and files names with
| spaces :
| And... It doesn't work. I'm quite sure it's some stupid thing with
| Char(34), or " to add somewhere, but I didn't found the correct line.

You can try that :

Attachmt = " -attach " & _
Chr(34) & RapportName1 & Chr(34) & _
"," & _
Chr(34) & RapportName2 & Chr(34)

Hope this helps. Let us know.

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr
Avatar
Wildcat
Bonjour,

Désolée, comme je suis sur un autre forum en anglais, je mélange tout :-)

J'ai testé ta raponse, et ça ne fonctionne pas... Je crois avoir fait toutes
les combinaisons possibles et imaginables, et j'ai peur que la seule solution
soit de mettre mes rapports à la racine, et supprimer tous les espaces dans
mes fichiers...
En fait, ce n'est pas un script en vbs : c'est une macro Cognos, je suis
donc obligée de tenir compte du langage que "comprend" Blat ET du langage que
"comprend" Cognos, un vrai m...ier.

Cela dit, si tu as d'autres idées, je prends, j'aime pas qu'une machine ne
fasse pas ce que je lui demande !! :-)

Merci pour ta réponse rapide en tout ca.


"Wildcat" a écrit dans le message de
news:
| Hi all,

Hi ! Bonjour !
Note : You're here in a french forum and you're welcome ;-)

[...]
| Then I wanted to make the same with wy path and files names with
| spaces :
| And... It doesn't work. I'm quite sure it's some stupid thing with
| Char(34), or " to add somewhere, but I didn't found the correct line.

You can try that :

Attachmt = " -attach " & _
Chr(34) & RapportName1 & Chr(34) & _
"," & _
Chr(34) & RapportName2 & Chr(34)

Hope this helps. Let us know.

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr





Avatar
Gilles LAURENT [MVP]
"Wildcat" a écrit dans le message de
news:
| Bonjour,

Bonjour,

| J'ai testé ta raponse, et ça ne fonctionne pas... Je crois avoir fait
| toutes les combinaisons possibles et imaginables, et j'ai peur que la
| seule solution soit de mettre mes rapports à la racine, et supprimer
| tous les espaces dans mes fichiers...

Blat 2.6.2

Je viens à l'instant d'effectuer quelques tests et la solution proposée
fonctionne en VBScript ! En revanche, il ne semble pas possible
d'envoyer des fichiers de type binaire (tests réalisés sur plusieurs
adresses mail) :-(

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr
Avatar
F. Dunoyer [MVP]
Gilles LAURENT [MVP] a utilisé son clavier pour écrire :
"Wildcat" a écrit dans le message de
news:
Bonjour,


Bonjour,

J'ai testé ta raponse, et ça ne fonctionne pas... Je crois avoir fait
toutes les combinaisons possibles et imaginables, et j'ai peur que la
seule solution soit de mettre mes rapports à la racine, et supprimer
tous les espaces dans mes fichiers...


Blat 2.6.2

Je viens à l'instant d'effectuer quelques tests et la solution proposée
fonctionne en VBScript ! En revanche, il ne semble pas possible
d'envoyer des fichiers de type binaire (tests réalisés sur plusieurs
adresses mail) :-(


J'envoie du PDF et du JPG avec Blat. Ca me semble etre pourtant du
binaire :)

mais il y'a 3 syntaxes à attach (Balt 2.6.2):
-attach = binaire
-attacht = texte
-attachi = inline file

--
François Dunoyer [MVP Windows Server / Security]
Boite à outils NT/2000 : http://fds.mvps.org/ta/outils.htm
Boite à Outils Admin : http://fds.mvps.org/ta/outils-Admin.htm
Site perso : http://www.fdunoyer.net


Avatar
Wildcat

Gilles LAURENT [MVP] a utilisé son clavier pour écrire :
"Wildcat" a écrit dans le message de
news:
Bonjour,


Bonjour,

J'ai testé ta raponse, et ça ne fonctionne pas... Je crois avoir fait
toutes les combinaisons possibles et imaginables, et j'ai peur que la
seule solution soit de mettre mes rapports à la racine, et supprimer
tous les espaces dans mes fichiers...


Blat 2.6.2

Je viens à l'instant d'effectuer quelques tests et la solution proposée
fonctionne en VBScript ! En revanche, il ne semble pas possible
d'envoyer des fichiers de type binaire (tests réalisés sur plusieurs
adresses mail) :-(


J'envoie du PDF et du JPG avec Blat. Ca me semble etre pourtant du
binaire :)

mais il y'a 3 syntaxes à attach (Balt 2.6.2):
-attach = binaire
-attacht = texte
-attachi = inline file

--
François Dunoyer [MVP Windows Server / Security]
Boite à outils NT/2000 : http://fds.mvps.org/ta/outils.htm
Boite à Outils Admin : http://fds.mvps.org/ta/outils-Admin.htm
Site perso : http://www.fdunoyer.net





Bonjour à tous,

Pour les fichiers : j'envoi des Excels.

En fait, ce n'est pas pour du VBscript, mais pour une macro Cognos : très
ressemblant, à quelques détails près...

Je pense que le soucis vient du fait que je dois tenir compte du "langage"
pour Blat ET des spécificités de syntaxes pour les macros Cognos...

Tampis, je vais modifié mon path, ça devrait aller.

Merci pour votre aide et vos commentaires.



Avatar
Stephane
Bonjour,

Désolée, comme je suis sur un autre forum en anglais, je mélange tout :-)

J'ai testé ta raponse, et ça ne fonctionne pas... Je crois avoir fait toutes
les combinaisons possibles et imaginables, et j'ai peur que la seule solution
soit de mettre mes rapports à la racine, et supprimer tous les espaces dans
mes fichiers...
En fait, ce n'est pas un script en vbs : c'est une macro Cognos, je suis
donc obligée de tenir compte du langage que "comprend" Blat ET du langage que
"comprend" Cognos, un vrai m...ier.

Cela dit, si tu as d'autres idées, je prends, j'aime pas qu'une machine ne
fasse pas ce que je lui demande !! :-)
arg = REP&"contenu.txt -to "&dest&" -server 192.168.70.4 -f

"&expediteur&" -subject ""RELANCES AR //NOBODY //NOREPORT"" -attach "&nomFic

Un exemple d'agument (c'est normalement sur une seule ligne) en VBS
pour Blat, nomFic est un fichier excel dans mon cas, par contre je n'ai
pas d'espace dans le nom du fichier. As tu essayé avec le nom court (DOS
8.3) ?

Stephane

Avatar
Wildcat
Bonjour Stephane,

J'ai peut être trouvé une piste interressante :

J'ai fait un test en créant un path C:Mes DocumentsCognos Reports
avec des noms de fichiers du type : Rapport Client Alpha.xls, et Rapport
Client Beta.xls

Et ça MARCHE !!

J'ai donc voulu faire la même chose, mais en mettant le tout sur M: : chez
moi, M: est en fait un emplacement Server, qui se synchronise avec le Gros
Server de la société pour conserver mes données.

Et là, ça ne fonctionne pas !! Pas de pièce jointe dans mon mail.

Je ne vois pas vraiement pourquoi il arrive sur le Driver C: et pas sur le
Server M:, mais c'est une piste, non ?
Ou ça n'a rien à voir ?

Wildcat


Bonjour,

Désolée, comme je suis sur un autre forum en anglais, je mélange tout :-)

J'ai testé ta raponse, et ça ne fonctionne pas... Je crois avoir fait toutes
les combinaisons possibles et imaginables, et j'ai peur que la seule solution
soit de mettre mes rapports à la racine, et supprimer tous les espaces dans
mes fichiers...
En fait, ce n'est pas un script en vbs : c'est une macro Cognos, je suis
donc obligée de tenir compte du langage que "comprend" Blat ET du langage que
"comprend" Cognos, un vrai m...ier.

Cela dit, si tu as d'autres idées, je prends, j'aime pas qu'une machine ne
fasse pas ce que je lui demande !! :-)
arg = REP&"contenu.txt -to "&dest&" -server 192.168.70.4 -f

"&expediteur&" -subject ""RELANCES AR //NOBODY //NOREPORT"" -attach "&nomFic

Un exemple d'agument (c'est normalement sur une seule ligne) en VBS
pour Blat, nomFic est un fichier excel dans mon cas, par contre je n'ai
pas d'espace dans le nom du fichier. As tu essayé avec le nom court (DOS
8.3) ?

Stephane




Avatar
Stephane
Bonjour Stephane,

J'ai peut être trouvé une piste interressante :

J'ai fait un test en créant un path C:Mes DocumentsCognos Reports
avec des noms de fichiers du type : Rapport Client Alpha.xls, et Rapport
Client Beta.xls

Et ça MARCHE !!

J'ai donc voulu faire la même chose, mais en mettant le tout sur M: : chez
moi, M: est en fait un emplacement Server, qui se synchronise avec le Gros
Server de la société pour conserver mes données.

Et là, ça ne fonctionne pas !! Pas de pièce jointe dans mon mail.

Je ne vois pas vraiement pourquoi il arrive sur le Driver C: et pas sur le
Server M:, mais c'est une piste, non ?
Ou ça n'a rien à voir ?


As tu essayé d'ajouter -debug à la fin ? pour voir ce qui se passe ?

@+ Stephane

Avatar
Stephane
Bonjour Stephane,

J'ai peut être trouvé une piste interressante :

J'ai fait un test en créant un path C:Mes DocumentsCognos Reports
avec des noms de fichiers du type : Rapport Client Alpha.xls, et Rapport
Client Beta.xls

Et ça MARCHE !!

J'ai donc voulu faire la même chose, mais en mettant le tout sur M: : chez
moi, M: est en fait un emplacement Server, qui se synchronise avec le Gros
Server de la société pour conserver mes données.

Et là, ça ne fonctionne pas !! Pas de pièce jointe dans mon mail.

Je ne vois pas vraiement pourquoi il arrive sur le Driver C: et pas sur le
Server M:, mais c'est une piste, non ?
Ou ça n'a rien à voir ?


Sais tu si le compte utilisé par Blat à le droit d'accès à M: ca
pourrait être aussi une connerie de ce genre.

@+ Stephane

Avatar
Wildcat
Hum... Je pensais que c'était une piste, mais ce n'est pas logique :
Ca fonctionne très bien sur M: avec 1 docuement en attachement. Donc, Blat
a accès à M:.

En fait, je crois avoir trouvé : il existe visiblement une double limitation :

1) Une imitation par ReportName

ReportName = Path + Nom du rapport

Après quelques test, cette mitmitation semble tourner autour de 90 caractères

2) Une limitation de la ligne de commande -attach

Toujours après quelques tests, cette limite se situe entre 165 et 195
caractères : j'ai un Path de 27 caractères, j'arrive a envoyer 3
attachements, mais ça bloque pour le quatrième (même si j'appelle le fichier
Z.xls).

Cela vous paraît possible ?
Est-ce que d'autres ont rencontré ce problème ?

Wildcat



Bonjour Stephane,

J'ai peut être trouvé une piste interressante :

J'ai fait un test en créant un path C:Mes DocumentsCognos Reports
avec des noms de fichiers du type : Rapport Client Alpha.xls, et Rapport
Client Beta.xls

Et ça MARCHE !!

J'ai donc voulu faire la même chose, mais en mettant le tout sur M: : chez
moi, M: est en fait un emplacement Server, qui se synchronise avec le Gros
Server de la société pour conserver mes données.

Et là, ça ne fonctionne pas !! Pas de pièce jointe dans mon mail.

Je ne vois pas vraiement pourquoi il arrive sur le Driver C: et pas sur le
Server M:, mais c'est une piste, non ?
Ou ça n'a rien à voir ?


Sais tu si le compte utilisé par Blat à le droit d'accès à M: ca
pourrait être aussi une connerie de ce genre.

@+ Stephane




1 2