[Résolu][Calc] Pièces jointes en PDF qui ne s'attachent plus

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur: Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !

[Résolu][Calc] Pièces jointes en PDF qui ne s'attachent plus

Messagepar kooper » 19 Juil 2019 10:56

Bonjour à tous,

J'utilise LibreOffice 6.1.
Depuis la mise à jour datant du 17/07/2019, j'ai un problème quand je veux envoyer mes mails avec ma macro calc, qui fonctionnait bien pourtant depuis 12 mois.
Je l'a met ici mais je préviens, c'est de la débrouillardise.

Quand je veux exécuter ma macro je reçois le message MAPI_E_ATTACHEMENT_NOT-FOUND
Ce qui se passe c'est que le fichier est présent avant l’exécution mais qu'il disparait après.
Mon chemin d'accès a toujours fonctionné. J'ai essayé de mettre le dossier A possédant le fichier DEMANDE_RDV2.pdf directement sur le bureau, j'ai l'impression que la macro a gardé le fichier en mémoire MAIS il a disparu du dossier A.

Mais je remarqué que lorsque j’exécute pour la 1er fois, le mail se crée correctement (texte en html) mais que la pièce jointe est en moz_mapi-1.

Je suis inquiet parce que j'ai ai vraiment besoin et notre service info me dit que la mise à jour concernait des failles de sécurité. Ils ne peuvent rien car c'est géré par un prestataire externe.

Pour préserver la confidentialité j'ai changé plusieurs choses dans le fichier.

Merci


Code : Tout sélectionner   AgrandirRéduire
  Sub mail_14
 
   Dim Messagerie As Object, Client As Object, Courrier As Object
    dim doc as object, olig As integer, oxo as integer, per7, per8
    dim feuils as object
    dim feuil1 as object
    dim feuil2 as object, per As object, per1 As object, per2 As object, per3 as object, balise1 As object, balise2 As object, per4 as object, per5 as object, per6 as object
    dim adh_num as object, nom as object, mel as object, dater1 As object, siret As object, statut As object, jours As object, dater2 As object
     
          Messagerie = CreateUnoService("com.sun.star.system.SimpleSystemMail")'version Windows Aoo3/Libo3 & LibO4
          Client = Messagerie.querySimpleMailClient()
          Courrier = Client.createSimpleMailMessage()
     
     doc = thiscomponent
     feuils= doc.sheetS

    feuil2=feuils.getbyname("tab2")
   
   
     olig = feuil2.getcellbyposition(12,0).String
     
     adh_num = feuil2.getcellbyposition(1,olig)
     mel = feuil2.getcellbyposition(13,olig)
     nom = feuil2.getcellbyposition(2,olig)
         dater1= feuil2.getcellbyposition(3,olig)
         siret= feuil2.getcellbyposition(14,olig)

per= feuil2.getcellbyposition(7,olig)
per1= feuil2.getcellbyposition(8,olig)
per2= feuil2.getcellbyposition(9,olig)
per3= feuil2.getcellbyposition(10,olig)
per4=feuil2.getcellbyposition(11,olig) 
                           
per5 = feuil2.getcellbyposition(20,olig)
per6 = feuil2.getcellbyposition(21,olig)
    dater2= feuil2.getcellbyposition(27,0)       
per7=feuil2.getcellbyposition(6,olig)
per8=feuil2.getcellbyposition(12,olig)   
                           
feuil2.getcellbyposition(7,0).string = per.string
feuil2.getcellbyposition(8,0).string = per1.string

          Courrier.Recipient = mel.string'Adresse de l'adherent
         
         
         If per7.string = 05 or per7.string = 15  THEN 
          Courrier.Subject = "APST BTP RP - Declaration non parvenue - " & adh_num.string & " " & nom.String
           courrier.body = "<html>blblblbla</html>"
           Courrier.Attachement = Array("J:\Mes documents\A\TELEDECLARATION.pdf", "J:\Mes documents\A\BORDEREAU3.pdf" , "J:\Mes documents\A\CONNEXION_INTERNET.pdf","J:\Mes documents\A\NOTE.pdf")'PcsJt()
       else
         
         If per7.string = 05 or per7.string = 15  THEN 
          Courrier.Subject = "APST BTP RP - Declaration non parvenue- " & adh_num.string & " " & nom.String
           courrier.body = "<html>blblblbla</html>"
            Courrier.Attachement = Array("J:\Mes documents\A\TELEDECLARATION.pdf", "J:\Mes documents\A\BORDEREAU3.pdf" , "J:\Mes documents\A\CONNEXION_INTERNET.pdf","J:\Mes documents\A\NOTE.pdf")'PcsJt()
       else
       
         If per7.string = 03 or per7.string = 13  THEN 

         Courrier.Subject = "APST BTP RP - Reglement_sans_bordereau - " & adh_num.string & " " & nom.String
           courrier.body = "<html>blblblbla</html>"
           Courrier.Attachement = Array("J:\Mes documents\A\BORDEREAU3.pdf", "J:\Mes documents\A\CONNEXION_INTERNET.pdf","J:\Mes documents\A\NOTE.pdf")'PcsJt()

               End If
               end if
               end if

'<header> <img src=""W:\logo.jpg"" ></header>
          Client.sendSimpleMailMessage(Courrier,1)
       
         
End Sub
'==================
sub envoi_mail_relance3

dim oxo as integer, olig As integer, feuil2 As object, oli As integer, mel as object
dim document as Object

document   = ThisComponent.CurrentController
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
feuil2=document.activesheet("tab2")


dim args1(0) as new com.sun.star.beans.PropertyValue
    args1(0).Name = "ToPoint" '
    args1(0).Value = "tab2.a2"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())

call mutli.x_lite

oxo = document.activesheet("tab2").getcellbyposition(15,0).string
olig = 1
oli = 0
feuil2.getcellbyposition(12,0).string= olig


DO
   if oxo <= 0 then exit Do

   mel = feuil2.getcellbyposition(13,olig)


   
   if mel.string ="UNDELIVERED@apst.fr" or mel.string ="undelivered@@apst.Fr" Or mel.string ="#N/D" Or mel.string = "" or mel.string ="undelivered@apst.fr" or mel.string = 0 Or mel.string ="#VALEUR !" Then
      wait 1
      call mutli.coloriage

      dispatcher.executeDispatch(document, ".uno:JumpToNextCell", "",0, args1())
   
   else
      
   if mel.string <>"UNDELIVERED@apst.fr" or mel.string <>"undelivered@@apst.Fr" Or mel.string <>"#N/D" Or mel.string <> "" or mel.string <>"undelivered@apst.fr" or  mel.string <> 0 Or  mel.string <>"#VALEUR !" Then
   

      if feuil2.getcellbyposition(9,olig).string <> 40 then
         On Error Resume Next
         call mutli.coloriage2
         'call Module2.mail_18

      wait 1
      else

      if feuil2.getcellbyposition(9,olig).string = 40 then
         On Error Resume Next
      wait 10
         call mutli.coloriage3
         call mail_14



      end if
      End If

      dispatcher.executeDispatch(document, ".uno:JumpToNextCell", "",0, args1())


   end if

            oli= oli + 1
   end if
            olig= olig +1
feuil2.getcellbyposition(13,0).string= oli
feuil2.getcellbyposition(12,0).string= olig
feuil2.getcellbyposition(10,0).string = oxo
feuil2.getcellbyposition(11,0).string= mel.string


If oli = 10 Then
wait 30000
oli = 0
End if


loop until olig -1= document.activesheet("tab2").getcellbyposition(14,0).string 'document.sheets.getbyname("tab2").getcellbyposition(14,0).string = 0
dispatcher.executeDispatch(document, ".uno:Save", "", 0, args1())
'dispatcher.executeDispatch(document, ".uno:Quit", "", 0, args1())
end Sub
'==================================


 Ajout : - Je n'ai pas vu quand le modérateur a changé le titre - le fichier est trop lourd 
Dernière édition par kooper le 19 Juil 2019 11:34, édité 10 fois.
le plus difficile c'est de commencer. Travail sur LibreOffice 6.1, environnement WINDOWS 10
kooper
Fraîchement OOthentifié
 
Message(s) : 7
Inscrit le : 19 Juil 2019 10:24

Re: Problème pièces jointes qui ne s'attachent plus

Messagepar micmac » 19 Juil 2019 11:01

Bonjour,
Dans votre signature il y a écrit:le plus difficile c'est de commencer. Travail sur LibreOffice version m??j r??guli??rement, environnement WINDOWS SERVER 2012
Nous préférerions que vous y indiquiez
  1. La version exacte de LibO (LibO 6.1.6 par exemple) ;
  2. La version exacte du système d'exploitation (Windows XP SP3, Vista SP2, Windows 7 SP1, Win 8.1, Win 10, Ubuntu 18.04, MacOS 10.14.5 par exemple).
Accès direct à votre signature pour la corriger.

Cordialement

 Ajout : Pourquoi avoir re-modifié le titre que le modérateur avait déjà modifié ?
Le terme problème est inutile et cette section requiert le balisage du titre. Lisez le bandeau rouge en haut de la page.
La signature doit correspondre à ce qui est attendu.
Si cela n'est pas fait, le sujet sera verrouillé 
Les formats ouverts (ODF) assurent la pérennité de vos documents.
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
 
Message(s) : 6443
Inscrit le : 28 Août 2010 09:45

Re: Pièces jointes EN PDF qui ne s'attachent plus

Messagepar tintin » 19 Juil 2019 11:32

Bonjour,

  • Lorsque vous répondez à un message, faites-le à la suite et non dans votre message précédent sinon on n'y comprend plus rien.
  • Un fichier dont la taille excède 500 Ko doit être joint uniquement via http://www.cjoint.com/
  • Si le titre n'est pas balisé comme cela doit être le cas dans cette section vous allez vous attirer des remarques
  • Si vous ne mettez pas votre signature en conformité avec ce qui est demandé vous allez vous faire rattraper par la patrouille :mrgreen:
AOO 4.1.7 et LibO 6.2.8.2 / macOS 10.15.2 Catalina
adoptopenjdk-8.jre_232 / Firefox / Safari / Thunderbird / Time Machine
Pour préserver vos documents, faites régulièrement des sauvegardes.
Avatar de l’utilisateur
tintin
GourOOu
GourOOu
 
Message(s) : 6481
Inscrit le : 18 Juil 2008 16:29
Localisation : F-Oise + F-Savoie

Re: Pièces jointes EN PDF qui ne s'attachent plus

Messagepar kooper » 19 Juil 2019 11:39

tintin a écrit:[*]Si le titre n'est pas balisé comme cela doit être le cas dans cette section vous allez vous attirer des remarques
[*]
...j'ai mis WINDOWS 10 est ce bon ?

[*]Un fichier dont la taille excède 500 Ko doit être joint uniquement via http://www.cjoint.com/
... ok j'y vais.

Si vous ne mettez pas votre signature en conformité avec ce qui est demandé vous allez vous faire rattraper par la patrouille :mrgreen: [/list]
...j'ai mis [Calc] est ce bon ?
le plus difficile c'est de commencer. Travail sur LibreOffice 6.1, environnement WINDOWS 10
kooper
Fraîchement OOthentifié
 
Message(s) : 7
Inscrit le : 19 Juil 2019 10:24

Re: Pièces jointes EN PDF qui ne s'attachent plus

Messagepar kooper » 19 Juil 2019 11:44

tintin a écrit:[*]Un fichier dont la taille excède 500 Ko doit être joint uniquement via http://www.cjoint.com/
...Je viens d'y jetter un oeil, pas possible au bureau de le faire, quand je vais rentrer... mais c'est un code assez facile, je l'ai trouvé ici. Le problème se trouve uniquement dans l'ajout du pdf, le code peut suffire, non? :marto:
le plus difficile c'est de commencer. Travail sur LibreOffice 6.1, environnement WINDOWS 10
kooper
Fraîchement OOthentifié
 
Message(s) : 7
Inscrit le : 19 Juil 2019 10:24

Re: [Calc] Pièces jointes EN PDF qui ne s'attachent plus

Messagepar Dude » 19 Juil 2019 15:12

kooper a écrit:et notre service info me dit que la mise à jour concernait des failles de sécurité

Mise à jour de quoi : LibreOffice, Windows, messagerie ?
Déjà, il faudrait détailler ce point : savoir de quelle version à quelle autre, tu es passé.

Bref, nous donner toutes informations utiles afin de ne pas se perdre en conjecture.
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 21276
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1

Re: [Calc] Pièces jointes EN PDF qui ne s'attachent plus

Messagepar kooper » 22 Juil 2019 08:15

Bonjour Dude,
Bonjour à tous,

Selon le responsable du service informatique : il y a eu la mise à jour de Mozilla qui comprend donc Thunderbird et Firefox.
Il y a eu aussi la mise à jour de LibreOffice.
Vu comment "le système" est verrouillé par le service informatique - et je ne vois pas comment ils peuvent comprendre que je m'adresse à un forum, bref, ils ne sont pas très coopératifs pour plusieurs (leurs) raisons - à moins que vous me dites où chercher, je n'aurai pas plus d'infos que cela... :(

 Ajout : La version de Thunderbird actuelle est 60.8.0 (32 bits) 
le plus difficile c'est de commencer. Travail sur LibreOffice 6.1, environnement WINDOWS 10
kooper
Fraîchement OOthentifié
 
Message(s) : 7
Inscrit le : 19 Juil 2019 10:24

Re: [Calc] Pièces jointes EN PDF qui ne s'attachent plus

Messagepar jeanmimi » 22 Juil 2019 15:54

Bonjour,
Le code posté ici fait soit l'envoi du fichier, soit de la feuille active :
viewtopic.php?p=207174#
Donc, à tester et à adapter.
LibreOffice Version : Version: 6.3.4 (x64) (15 décembre 2019)
Java (x64) 1.8.0_xxx, Windows 10, Thunderbird, Firefox
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 15136
Inscrit le : 03 Mars 2006 17:02
Localisation : Venise verte

Re: [Calc] Pièces jointes EN PDF qui ne s'attachent plus

Messagepar kooper » 22 Juil 2019 16:15

jeanmimi a écrit:Bonjour,
Le code posté ici fait soit l'envoi du fichier, soit de la feuille active :
viewtopic.php?p=207174#
Donc, à tester et à adapter.


Bonjour JeanMimi,

Je n'ai pas lu encore donc je vais voir mais à l'instant, je viens de rajouter ConvertToUrl() soit
Code : Tout sélectionner   AgrandirRéduire
Sub mail_adh
    Dim Messagerie As Object, Client As Object, Courrier As Object
    dim doc as object
    dim feuils as object
    dim feuil1 as object
    dim feuil2 as object
    dim numero as object, mel as integer, mel2 as object, dater As object, anx as string
     
     
          Messagerie = CreateUnoService("com.sun.star.system.SimpleSystemMail")
          Client = Messagerie.querySimpleMailClient()
          Courrier = Client.createSimpleMailMessage()
     
     doc = thiscomponent
     feuils= doc.sheetS

     feuil2=feuils.getbyname("tab2")
     anx(0) = ConvertToUrl("W:\A\BORDEREAU3.pdf")
       
          Courrier.Subject = "POLTRON" '& numero.string
          Courrier.Recipient = feuil2.getcellbyposition(19,1).string
          courrier.body = "nom=joint"
          Courrier.Attachement = Array(anx(0))

          Client.sendSimpleMailMessage(Courrier,0)


Et mon problème de MAPI a disparu, ainsi j'ai pu déjà répété l'action *2 et le fichier pdf ne sait pas effacer.

En ajoutant des liens pour les annexes (anx) j'espère envoyer le mm nombre de pdf que je voulais (ici 5).

Je ne ferme pas encore le post pour vous informer plus tard si j'ai bien retrouvé les mm sensations càd qu'avec Courrier.Attachement je ne faisais que rajouter des virgules et de liens exemple courrier.attachement("w:\a\x.pdf", "w:\a\y.pdf","w:\a\z.pdf", ....)

PS : Heureux d'apporter, enfin, ma contribution à un si grand forum. Sincèrement. :super:
le plus difficile c'est de commencer. Travail sur LibreOffice 6.1, environnement WINDOWS 10
kooper
Fraîchement OOthentifié
 
Message(s) : 7
Inscrit le : 19 Juil 2019 10:24

Re: [Calc] Pièces jointes EN PDF qui ne s'attachent plus

Messagepar Dude » 23 Juil 2019 11:16

kooper a écrit:mais à l'instant, je viens de rajouter ConvertToUrl() [...]
Et mon problème de MAPI a disparu, ainsi j'ai pu déjà répété l'action *2 et le fichier pdf ne sait pas effacer.

De ce que je vois, c'est que la localisation des fichiers a changé entre ton 1er message et le dernier.

D'abord :
Code : Tout sélectionner   AgrandirRéduire
Courrier.Attachement = Array("J:\Mes documents\A\TELEDECLARATION.pdf", "J:\Mes documents\A\BORDEREAU3.pdf" , "J:\Mes documents\A\CONNEXION_INTERNET.pdf","J:\Mes documents\A\NOTE.pdf")
Puis :
Code : Tout sélectionner   AgrandirRéduire
anx(0) = ConvertToUrl("W:\A\BORDEREAU3.pdf")

Cela expliquerait le message d'erreur :
kooper a écrit:Quand je veux exécuter ma macro je reçois le message MAPI_E_ATTACHEMENT_NOT-FOUND

Le conseil est donc de tester la présence réelle des fichiers via la fonction FileExists.
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 21276
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1

Re: [Calc] Pièces jointes EN PDF qui ne s'attachent plus

Messagepar kooper » 30 Juil 2019 08:20

Dude a écrit:Le conseil est donc de tester la présence réelle des fichiers via la fonction FileExists.


Bonjour Ami Dude,
Je ne sais pas utiliser cette fonction.
Pour ce qui est du reste, le fichier existait bel et bien donc je ne vois pas l'utilité de vérifier qu'il existe...
Pour ce qui concerne les "sensations", ce sera comme pour tout ConvertToUrl il faut créer des "string" autant qu'il y aura des fichiers. Je ne peux dire s'il existe un moyen de faire plus court. Mais ça sera pour la prochaine fois.

Un grand merci à tous...
le plus difficile c'est de commencer. Travail sur LibreOffice 6.1, environnement WINDOWS 10
kooper
Fraîchement OOthentifié
 
Message(s) : 7
Inscrit le : 19 Juil 2019 10:24

Re: [Calc] Pièces jointes EN PDF qui ne s'attachent plus

Messagepar kooper » 30 Juil 2019 08:23

Dude a écrit:Cela expliquerait le message d'erreur :
kooper a écrit:Quand je veux exécuter ma macro je reçois le message MAPI_E_ATTACHEMENT_NOT-FOUND



Oui il a changé mais c'est parce que j'ai essayé pleins de choses parce que je ne comprenais pourquoi cela bloquait. Ne te fies pas à ce changement d'adresse.

Now, it's the end...
le plus difficile c'est de commencer. Travail sur LibreOffice 6.1, environnement WINDOWS 10
kooper
Fraîchement OOthentifié
 
Message(s) : 7
Inscrit le : 19 Juil 2019 10:24

Re: [Calc] Pièces jointes EN PDF qui ne s'attachent plus

Messagepar Dude » 01 Août 2019 09:32

kooper a écrit:Je ne sais pas utiliser cette fonction.

Image

kooper a écrit:Oui il a changé mais c'est parce que j'ai essayé pleins de choses parce que je ne comprenais pourquoi cela bloquait. Ne te fies pas à ce changement d'adresse.

Sur ce forum, nous n'avons pas de boule de cristal. Donc, on ne peut que se fier qu'aux informations que tu donnes.

kooper a écrit:Pour ce qui est du reste, le fichier existait bel et bien donc je ne vois pas l'utilité de vérifier qu'il existe

En programmation, coder en dur ce genre d'information est le meilleur moyen de se planter.
Un chemin de fichier doit donc toujours être vérifié à chacun des niveaux suivants :
  1. de l'emplacement avec FileExists
  2. de la syntaxe avec ConvertToUrl
  3. des droits d'accès avec FileAttrib
  4. de la taille avec FileLen
Avatar de l’utilisateur
Dude
Grand Maître de l'OOffice
Grand Maître de l'OOffice
 
Message(s) : 21276
Inscrit le : 03 Mars 2006 08:45
Localisation : 127.0.0.1


Retour vers Macros et API

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 7 invité(s)