Ce forum est en partie financé par l’affichage de publicités. Merci de désactiver votre bloqueur de publicités pour nous permettre de continuer à fournir ce service.
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.

Débutant - Assembler en PDF unique depuis un dossier

Discussion dans 'AppleScript et Automator' créé par pantone672, 17 Mars 2017.

Mots-clefs:
  1. pantone672

    pantone672 Membre Junior

    Inscrit:
    5 Avril 2012
    Messages:
    14
    J'aime reçus:
    0
    Bonjour,
    débutant total sous AppleScript (d'ailleurs, si certains connaissent des moyens de s'y former en ligne, je suis preneur de toute suggestion), je cherche à automatiser une série de tâches administratives requises régulièrement par mon boulot.
    Voilà, en 3 étapes, ce que j'aimerai réussir à faire :
    1) Fusionner d'un click tous les PDFs relatifs à mes frais professionnels que je stocke dans un dossier EN COURS
    2) Envoyer le PDF consolidé par mail à un destinataire précis, avec un petit message d'accompagnement.
    3) Créer un dossier 20XX-MM (XX pour l'année, MM pour le mois en cours)
    4) Déplacer le contenu de EN COURS dans le Dossier 20XX-MM pour permettre d'utiliser EN COURS pour le mois à venir.
    5) Déclencher l'ensemble de ces actions automatiquement le 1er du mois.

    Si quelqu'un peut me conseiller sur le 1), ce serait déjà super ! Il y'a bien une commande pour Fusionner les PDFs, mais je n'arrive pas à trouver comment lui dire d'utiliser comme source tous les PDFs du dossier EN COURS...

    D'avance, merci !
     
  2. zeltron54

    zeltron54 Membre émérite

    Inscrit:
    29 Mars 2008
    Messages:
    688
    J'aime reçus:
    88
    Bonjour,

    Tu devrais pouvoir réaliser ça avec Automator..
    Un début de piste pour la part 1:
    - Obtenir les éléments du finder indiqués (tu y glisses ton dossier)
    - Obtenir le contenu de dossier
    - Combiner les pages de documents PDF (ajout de pages)
    - Déplacer les éléments du finder (A: choisir le dossier destination)
    - Renommer les éléments du finder:Nommer un seul élément (choisir un nom de base "consolide")

    tu peux commencer par créer le nouveau dossier et tu peux ajouter toutes les actions nécessaires pour envoi mail etc...

    Pour le déclenchement automatique, tu peux créer un événement dans Ical.
     
  3. zeltron54

    zeltron54 Membre émérite

    Inscrit:
    29 Mars 2008
    Messages:
    688
    J'aime reçus:
    88
    Je te fais un pas à pas avec automator.
    Tu lances automator et tu choisis processus
    Tu glisses les actions de la liste de gauche dans la fenêtre de droite, dans l'ordre ci-dessous.
    Tu fais tes essais en cliquant sur exécuter. Quand tout fonctionne comme tu veux tu enregistres une version au format application.
    Tu pourras programmer dans ical un événement qui lance cette application.

    - Obtenir les éléments du finder indiqués (tu y glisses ton dossier en cour)
    - Obtenir le contenu de dossier
    - Combiner les pages de documents PDF (tu coches ajout de pages)
    - Déplacer les éléments du finder (A: choisir le dossier destination en cour)
    - Renommer les éléments du finder(Nommer un seul élément (choisir un nom de base « La compilation »)
    - Nouveau message Mail (remplir destinataire, objet, message, le fichier « la compilation » se met automatiquement en PJ)
    - Obtenir les éléments du finder indiqués (tu y glisses ton dossier en cour et dans option tu coches ignorer l’entrée de cette action)
    - Obtenir le contenu de dossier
    - Nouveau dossier (nom: archive, emplacement: bureau)
    - Renommer les éléments du fin : Ajouter date ou heure (Date/heure: Actuelle, emplacement: Avant le nom, Séparateur: Trait de soulignement, format: année mois jour, séparateur: tiret)
    - Obtenir les éléments du finder indiqués (tu y glisses ton dossier en cour et dans option tu coches ignorer l’entrée de cette action)
    - Obtenir le contenu de dossier
    -Placer des éléments du finder dans la corbeille
     
  4. pantone672

    pantone672 Membre Junior

    Inscrit:
    5 Avril 2012
    Messages:
    14
    J'aime reçus:
    0
    Un grand merci ! Ta réponse détaillée me met le pied à l'étrier pour continuer !

    Petite question subsidaire : connaitrais-tu une ressource en ligne pour parfaire mon éducation en Automator ? C'est bien d'apprendre en faisant, mais s'il y'a moyen de suivre un simulacre de formation, je suis preneur :)

    Encore merci !
     
  5. zeltron54

    zeltron54 Membre émérite

    Inscrit:
    29 Mars 2008
    Messages:
    688
    J'aime reçus:
    88
    Je ne connais pas de site de formation en ligne, désolé.

    Mais la conception de petits services sur automator est très simple et un peu de pratique suffit et il y a le forum Macg !o_O

    J'ai testé la réponse que je t'ai faite tout fonctionne sans problème.
    As-tu testé ? est ce que cela fonctionne ? et sinon explique ce qui ne va pas que l'on t'aide à trouver la solution !
     
  6. pantone672

    pantone672 Membre Junior

    Inscrit:
    5 Avril 2012
    Messages:
    14
    J'aime reçus:
    0
    Oui, cela marche parfaitement dans l'enchaînement des tâches. J'ai ensuite customisé un peu pour adapter à mes besoins.
    Quelques questions cependant :
    - lorsque je renomme le nom du fichier qui est la compilation des PDFs, je n'ai pas la possibilité de le nommer AAAA_MM_la_compilation, mais uniquement AAAA_MM_JJ_la_compilation. C'est anecdotique, mais comme ce sont des relevés mensuels, j'avais l'habitude de les nommer AAAA_MM_la_compilation. Je ne sais pas si c'est possible simplement.
    - idem lorsque je crée le nom de dossier. En découvrant les Variables, j'ai choisi d'utiliser la variable Année actuelle_Mois actuel pour les noms des dossiers d'archives mensuelles. Seul problème : Automator utilise le mois en toute lettres et ne propose pas d'alternatives, ce qui est différent de ma nomenclature actuelle (j'utilise 2017_01, 2017_02, etc). Là encore, ce n'est pas grave mais je me demande si on pourrait modifier comme je le souhaite.

    Enfin, j'ai également découvert l'intérêt des variables dans l'envoi du mail. En ajoutant les variables "mois" et "année" dans le sujet du mail, cela donne "Sujet : Etat des frais - mars 2017", ce qui est quand même super classe :)

    Si tu as un retour à faire sur les deux points évoqués plus haut, je t'en remercie d'avance. En attendant, je m'en vais explorer d'autres utilisations possibles !!

    Encore merci de ton aide.
     
  7. zeltron54

    zeltron54 Membre émérite

    Inscrit:
    29 Mars 2008
    Messages:
    688
    J'aime reçus:
    88
    Pour tes 2 problèmes (qui en font qu'un) avoir "l' annéé_le mois" pour nommer le fichier et le dossier, le plus facile est de fabriquer une variable à partir d'un petit applescript.
    La variable sera : année+tiret bas+mois en chiffre sur 2 caractères.
    Pour ça tu ajoutes en début de ton processus

    Exécuter un applescript qui contiendra le script ci-dessous:

    on run {input, parameters}

    set ladate to current date
    set lannee to year of ladate as string
    set lemois to month of ladate as integer
    set lemois to "0" & lemois as string
    set lemois to characters -2 thru -1 of lemois as string
    set input to lannee & "_" & lemois
    return input

    end run

    Puis : définir la variable (que tu appelles par exemple Madate)
    Dans : renommer les éléments du finder (pour le fichier tu ajoutes la variable madate_La_compilation)
    Dans : nouveau dossier (tu ajoutes la variable Madate)
    Tu peux supprimer le renommage de ce dossier

    Le reste du processus ne change pas (déplacer les fichiers de encours dans la corbeille)

    Voilà, si problème n'hésite pas à demander
    Dis moi si tout fonctionne selon tes besoins! merci
     
  8. pantone672

    pantone672 Membre Junior

    Inscrit:
    5 Avril 2012
    Messages:
    14
    J'aime reçus:
    0
    Hello,
    merci pour ces éléments. Je bute sur la partie "définir la valeur de la variable". La boîte de dialogue de cette Action ne me permet pas de lui donner un nom, mais un "chemin" (j'ai sélectionné "madate")
    Autre problème : je ne sais pas comment insérer la variable créée dans les deux boîtes d'Action "Renommer".
    Si tu peux m'éclairer...
     
  9. zeltron54

    zeltron54 Membre émérite

    Inscrit:
    29 Mars 2008
    Messages:
    688
    J'aime reçus:
    88
    Pour donner un nom à la variable, dans la boite tu doubles clic sur nouvelle variable un petite fenêtre s'ouvre et te permet de donner le nom.
    Une fois la variable nommer, elle apparaît en bas de la fenêtre dans la partie variable, tu fais un glissé déposé du nom dans la boite de saisie où tu veux la mettre .
     
    pantone672 aime ça.
  10. Moonwalker

    Moonwalker Vénérable sage
    Club MacG

    Inscrit:
    22 Avril 2006
    Messages:
    17 794
    J'aime reçus:
    1 892
    https://support.apple.com/fr-fr/HT2488

    http://www.automatisez.net

    Par le "père" d'Automator : http://www.macosxautomation.com/index.html

    http://macscripter.net
     
    pantone672 aime ça.
  11. pantone672

    pantone672 Membre Junior

    Inscrit:
    5 Avril 2012
    Messages:
    14
    J'aime reçus:
    0
    Je n'y arrive pas. J'ai bien deux Actions :
    - l'apple Script (pour commencer)
    puis
    - Définir la valeur de la variable (ce qui est bizarre, cela devrait être définir le nom de la variable, mais bon...). Je clique sur Variable : et j'appelle ça madame.

    La variable n'apparait ensuite nulle part dans la liste des variables disponibles... Ce qui semble assez logique : tant qu'on n'a pas fait tourner le script, la variable n'est pas créée, donc elle n'apparaît pas. Mais même après avoir fait tourner le script une première fois, toujours impossible de trouver la variable madate dans la liste.
    Bref, je ne m'en sors pas :)
     
  12. zeltron54

    zeltron54 Membre émérite

    Inscrit:
    29 Mars 2008
    Messages:
    688
    J'aime reçus:
    88
    Alors dans l'action "définir la valeur de la variable" Tu double clic dans la boite de saisie ou il est écrit "Nouvelle variable" un petite fenêtre s'ouvre en affichant le nom par défaut qui est "stockage" tu le remplaces par ton nom : "Madate" .
    Des que tu double clic et que la fenêtre stockage apparaît le nom de cette variable s'inscrit dans la zone variable en bas de la fenêtre générale.

    Pour te servir de cette variable, tu sélectionnes son nom dans la liste et tu fais un glissé-déposé dans la zone de saisie de l'action qui t' intéresse.

    Pour ton information, le résultat produit par une action est visible (après exécution) en cliquant sur résultat dans la fenêtre de cette action. Ce résultat est transmis à l'action suivant en temps qu'entrée, Si l'on ne veut pas se servir de ce résultat dans l'action suivante , on coche dans option la case "ignorer l'entrée de cette action".

    J'espère que ce sera plus clair . :)
    Aller je suis sur que ça va le faire o_O
     
  13. pantone672

    pantone672 Membre Junior

    Inscrit:
    5 Avril 2012
    Messages:
    14
    J'aime reçus:
    0
    Hello,
    merci beaucoup pour ces éclaircissements. C'était en fait un problème d'affichage : dans le cadre en bas dont tu parlais, j'avais affiché l'Historique du processus. Il y'a un bouton juste à côté qui permet d'afficher "la liste des variables de processus". Et là, miracle, il y'a bien ma variable "madate".
    Il subsiste un problème - sinon, ce ne serait pas drôle - quand j'ajoute la variable dans "renommer" les éléments du Finder, le renommage prend la forme de "2017_03?Text". Y'aurait-il un problème dans l'Apple Script du début ?
    On touche au but...
     
  14. zeltron54

    zeltron54 Membre émérite

    Inscrit:
    29 Mars 2008
    Messages:
    688
    J'aime reçus:
    88
    Vérifie la valeur de la variable Madate en cliquant sur résultats dans la boite de l'action contenant l'applescript pour vérifier si elle est bien 2017_03
     
    #14 zeltron54, 23 Mars 2017
    Dernière édition: 23 Mars 2017
  15. zeltron54

    zeltron54 Membre émérite

    Inscrit:
    29 Mars 2008
    Messages:
    688
    J'aime reçus:
    88
    Dans "renommer les élément du finder" après avoir glisser la date , tu ajoutes : _La_compilation
    Tu obtiens un ovale bleu pour la variable suivi de ton texte ajouté
     
  16. zeltron54

    zeltron54 Membre émérite

    Inscrit:
    29 Mars 2008
    Messages:
    688
    J'aime reçus:
    88
    Tu devrais obtenir ça: (copie d'écran en 2 fois)
     

    Pièces jointes:

  17. pantone672

    pantone672 Membre Junior

    Inscrit:
    5 Avril 2012
    Messages:
    14
    J'aime reçus:
    0
    Mystérieusement, en supprimant les différents champs, puis en les renseignant de nouveau, j'arrive au bon résultat.
    Tu vas rire, j'arrive à une dernière difficulté : je n'arrive pas à planifier le déclenchement de ce magnifique processus par un événement iCal.
    Je crois que c'est lié au fait que j'essaye de créer cet événement sur un calendrier iCloud, mais il se trouve que je n'ai pas de calendrier "sur mon ordinateur".
    Je vais tripatouiller ce soir pour voir comment faire...
     
  18. zeltron54

    zeltron54 Membre émérite

    Inscrit:
    29 Mars 2008
    Messages:
    688
    J'aime reçus:
    88
    Je n'utilise pas iCloud ! que 2 calendriers sur l'ordi pas de partage ni de synchro !

    N'oublie pas qu'il faut enregistrer une copie de ton processus au format application et que c'est cette application que tu devras lancer dans ton événement Calendrier.
     

Partager cette page

Chargement...

iOccasion - Achetez un produit Apple d'occasion

refurb Apple