Donnez vie à vos documents numériques !
 

Enregistrement : nom du PDF + Date et Heure

abracadabraPDF Forums PDF – Général Enregistrement : nom du PDF + Date et Heure

  • Ce sujet est vide.
  • Créateur
    Sujet
  • #45597
    marcus55
    Membre

    Bonjour,

    je suis tout nouveau sur ce site qui est bien rempli, beaucoup d’aides, mais je bloque sur une dernière chose.
    J’ai créé un formulaire PDF, aucun souci de ce coté mais je souhaite que les utilisateurs l’enregistre avec la date et l’heure du jour.

    J’ai lu pas mal de chose ici mais rien qui correspond avec ce que je souhaite : lorsque qu’on clique sur le bouton enregistrer, il enregistre le PDF avec son nom actuel plus la date et l’heure du jour.

    Je vous en serais vraiment reconnaissant si vous pouviez me donner une solution.

    PS : je ne connais rien aux script, désolé.

    Merci d’avance.

    ++

Affichage de 4 réponses de 1 à 4 (sur un total de 4)
  • Auteur
    Réponses
  • #62267
    Merlin
    Maître des clés

    Bonjour et bienvenue.

    Ce n’est pas possible directement depuis un bouton placé dans un document PDF, ce qu’on peut faire c’est utiliser JavaScript pour afficher une fenêtre qui propose à l’utilisateur un nom de fichier à copier-coller dans la boite de dialogue d’enregistrement, que l’on fait apparaitre immédiatement après.

    Pour faire un bouton qui fonctionne sans autre intervention de l’utilisateur il faut utiliser un Script d’application (voir : http://abracadabrapdf.net/ressources-et-tutos/js-et-formulaires-ressources/les-differents-niveaux-dutilisation-des-scripts-javascript/ ) et il faut connaitre le chemin d’accès au dossier où enregistrer.

    #62268
    marcus55
    Membre

    Bonjour,
    merci de m’avoir répondu,
    j’ai regardé le lien proposé mais je ne vois vraiment pas comment faire.
    J’avais bien essayé un script qui propose à l’utilisateur un nom de fichier (avec des infos récupérés dans le PDF,) de faire un copier /coller et d’enregistrer mais le copier/coller ne fonctionne pas, que ce soit avec la souris ou avec le clavier.

    Exemple :

    Code:
    MonTitre = « 76 »; // nom de base du formulaire
    ChEnrgNom = this.getField(« Nom »); // 1er champ de récupération de données
    ChEnrgDate = this.getField(« Date »); // 2e champ de récupération de données
    //
    if (ChEnrgDate.value == null || ChEnrgDate.value == «  » || ChEnrgNom.value == null || ChEnrgNom.value == «  »)
    {app.alert({cMsg: »Merci de renseigner les champs « Date » et « Nom » avant d’enregistrer ce document. », nIcon:2, cTitle:MonTitre});}
    else
    {
    var strFixe = « _ » + MonTitre;
    var strNom = ChEnrgNom.value;
    var strNum = ChEnrgDate.value
    if (app.language == « FRA »)
    {var strTitre = strFixe + « _Enregistrement »;
    var strQuestion = « COPIEZ le nom proposu00E9 ci-dessous et COLLEZ le dans la fenu00EAtre suivante pour l’utiliser comme nom de fichier (merci de respecter cette syntaxe qui nous facilite la gestion) : »;
    }
    else
    {var strTitre = strFixe + « _SaveAs »;
    var strQuestion = « COPY below proposed text and PASTE it in the following box to use it as file name: »;
    }
    var strDisplay = strNum + « _ » + strNom + strFixe;
    var saveRep = app.response({cQuestion: strQuestion, cTitle: MonTitre, cDefault: strDisplay,});
    if (saveRep != null)
    {
    app.execMenuItem(« SaveAs »);
    }
    }

    Mais comme je ne connais rien au script….
    Merci d’avance

    #62269
    Merlin
    Maître des clés

    On ne peut copier depuis les boites d’alerte que avec Mac OS.
    Donc la ruse c’est d’utiliser un autre type de boite, essaye ça :

    Code:
    /* mise en variable */
    var strFixe = « NOM-FIXE »;
    /* mise en variable nom des champs */
    var strNom = this.getField(« NOM »).value;
    var strNum = this.getField(« DATE »).value
    /* détection de la langue et mise en variable des textes */
    if (app.language == « FRA ») {
    var strTitre = strFixe +  » – Enregistrement »;
    var strQuestion = « COPIEZ le nom proposu00E9 ci-dessous et COLLEZ le dans la fenu00EAtre suivante pour l’utiliser comme nom de fichier : »;
    } else {
    var strTitre = strFixe +  » – Save As »;
    var strQuestion = « COPY below proposed text and PASTE it in the following box to use it as file name: »;
    }
    /* concaténation du nom de fichier */
    var strDisplay = strNum + « _ » + strNom + « _ » + strFixe;
    /* affichage du nom de fichier */
    var saveRep = app.response({cQuestion: strQuestion, cTitle: strTitre, cDefault: strDisplay,});
    if (saveRep != null) {
    /* détection du logiciel Acrobat */
    if (app.viewerVariation == « Full ») {
    /* modification du Titre du document */
    this.info.Title = strNum +  » –  » + strNom +  » –  » + strFixe;
    }
    /* masquage du bouton et enregistrement */
    event.target.display = display.hidden;
    app.execMenuItem(« SaveAs »);
    }
    #62270
    marcus55
    Membre

    ok, donc je n’avais pas fait de c*****e.. vue que ce script semble être ma solution…
    j’ai essayé ton script mais il ne se passe plus rien si je clic sur le bouton, il n’y a plus de fenêtre qui s’ouvre
    idem avec Foxit Reader

    j’ai remis l’autre script et la, ça fonctionne avec Foxit Reader Mais pas Adobe Acrobat reader

    mais je dois passer par Adobe Acrobat Reader…

Affichage de 4 réponses de 1 à 4 (sur un total de 4)
  • Vous devez être connecté pour répondre à ce sujet.