Donnez vie à vos documents numériques !
 

Convertir/exporter les données du formulaire PDF vers CSV

abracadabraPDF Forums PDF – Général Convertir/exporter les données du formulaire PDF vers CSV

  • Ce sujet est vide.
  • Créateur
    Sujet
  • #46013
    iRaJaaa
    Membre

    Bonjour,

    Suite à la consultation de nombreux sujets présents dans ce forum, j’ai réussi à construire un formulaire PDF selon mes besoins, merci à tous.

    Cependant, j’ai un besoin que je n’arrive pas réellement à résoudre. En effet, je souhaite “convertir/exporter” mes données vers un autre format (CSV). Il n’y a aucun problème, j’arrive à le faire de manière manuelle (grâce aux actions dans les menus), et également grâce à un bouton, où j’implémente un script Javascript que j’ai récupéré sur ce forum.

    Mon besoin étant, que je ne souhaite pas passer par un bouton dans le formulaire pour convertir, mais par un script (de manière générale), qui puisse réaliser la même action. L’idée ensuite est de pouvoir appliquer ce script à des formulaires PDF qui seront complétés dans le temps, afin de traiter les données sous un format adapté.

    Bonne journée!

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

    Bonjour et bienvenue.

    Bonne nouvelle, il n’y a pas besoin de script ni d’action ni de bouton.
    Cette fonction existe d’origine dans Acrobat Pro, c’est un jeu d’enfant.
    Un dessin vaut mieux qu’un long discours :
    :Smiley15:

    #65297
    iRaJaaa
    Membre

    Merci pour ta réponse.

    Cependant, lorsque je disais que “j’arrive à le faire de manière manuelle (grâce aux actions dans les menus)” c’était justement cette action que tu as décrite dans l’image, mais également l’action “Autres option de formulaire > Extraire les données “.

    Ce que je souhaite réaliser, c’est un script (peu importe le langage à vrai dire), qui réalise cette action justement, et que cela soit transparent pour l’utilisateur afin que le nouveau fichier sous un nouveau format soit créer automatiquement, afin de pouvoir traiter les données de ce dernier (il est même intéressant que ce nouveau fichier ne soit que temporaire).

    #65298
    Merlin
    Maître des clés

    Je crois que les “Actions” et les “Commandes personnalisées” d’Acrobat ont été faites pour toi.
    Elles permettent d’enchainer un ensemble de commandes, avec à chaque étape la possibilité de laisser l’utilisateur choisir (par exemple des fichiers ou un texte à saisir).
    La différence entre les deux est assez subtile (c’est certainement pour ça que tout est dans le même panneau), tu verras bien à l’usage.

    Une capture d’écran vaut mieux qu’un long discours :

    #65299
    iRaJaaa
    Membre

    Bonjour,

    Je me permet de relancer le post afin de le mettre à jour. En effet, j’ai ajusté le JavaScript présent sur le forum qui permet de convertir le contenu des champs de mon formulaire PDF en un fichier CSV (ce même fichier CSV est joint automatiquement à mon PDF).

    L’objectif de ce fichier CSV est de pouvoir importer le contenu de ses données dans une solution Web. Je me suis arrangé pour que les champs du fichier CSV et de la solution web correspondent. Ceci fonctionne parfaitement avec une ligne de commande propre à la solution web.

    Ma nouvelle problématique est de pouvoir importer dans les champs de mon PDF les données extraient de la solution Web (format CSV). La solution qui me vient à l’esprit, est de joindre le fichier CSV (suite à l’extraction des données) en tant que pièce jointe au formulaire PDF, et grâce à une ligne de commande ou un JavaScript Document, de pouvoir mettre à jour les champs de mon PDF via la pièce jointe.

    Toutes les étapes doivent se faire de manière transparente pour l’utilisateur, il ne devra pas cliquer sur un bouton pour réaliser tel ou tel actions.

    J’ai vu également que les formats d’import de données possible (manuelle dans les menu déroulant) est FDF, XFDF,txt,XML.

    Pour extraire ou attacher une pièce jointe à mon formulaire PDF, j’utilise un outil Linux “xpdf” ou “pdftk”.

    #65300
    Merlin
    Maître des clés

    Je ne suis pas certain de bien suivre.  :Euuuh:

    Pour remplir un PDF avec les données en pièces jointes sans intervention de l’utilisateur il faut utiliser un script qui se déclenche à l’ouverture du document.
    Mais si à l’ouverture il faut remplir toujours le même document avec toujours les mêmes données en pièces jointes, pourquoi ne pas le préremplir directement ? (Ce qui devrait être plus simple)

    #65301
    iRaJaaa
    Membre

    Quel étape as-tu du mal à comprendre ?

    Oui c’est ce à quoi j’ai pensé également, de réaliser un script document à l’ouverture, en spécifiant la pièce jointe dans le code.

    Il ne s’agit pas toujours des mêmes données qui seront extraite via la solution web. Pas exemple, la description, le titre, le numéro de référence changeront en fonction des formulaires…

    Pour travailler sur un formulaire PDF, tu utilises seulement du Javascript, ou bien tu utilises d’autre langages de programmation/outil externe pour manipuler le PDF (comme les outils Linux cité précédemment)?

    #65302
    Merlin
    Maître des clés

    Quel étape as-tu du mal à comprendre ?

    Si à l’ouverture il faut remplir le document avec toujours les mêmes données en pièces jointes (un remplissage automatique ne pourra pas choisir entre plusieurs), pourquoi ne pas le préremplir directement ?

    Je n’utilise que JavaScript dans les PDF.

    #65303
    iRaJaaa
    Membre

    Les données ne seront pas les mêmes en fonction des pièces jointes (les champs seront les mêmes, mais le contenu de celles-ci seront différentes).
    Par exemple :

    PDF 1 -> Pièce jointe 1 (avec données 1)
    PDF 2 -> Pièce jointe 2 (avec données 2)

    Quand tu parles de “pré-remplir directement”, tu parles d’un pré-remplissage manuel de l’utilisateur ou automatique via un script document ? Il s’agit d’un pré-remplissage automatique que je souhaite mettre en place.

    #65304
    Merlin
    Maître des clés

    Quand tu parles de “pré-remplir directement”, tu parles d’un pré-remplissage manuel de l’utilisateur ou automatique via un script document ?

    Ni l’un ni l’autre.
    S’il y a beaucoup de documents à générer il vaut mieux oublier Acrobat.

    Il existe des utilitaires, dont certains gratuits, qui permettent de remplir programmatiquement un document PDF avec des données externes. Avec ou sans champs de formulaire, et dans le 1er cas il est possible de les “aplatir” ce qui évite toute modification ultérieure :
    https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/
    https://itextpdf.com
    Et bien d’autres…

    #65305
    iRaJaaa
    Membre

    En sois, il y aura “beaucoup de document à générer” dans le temps, mais il ne s’agit pas d’une génération en plusieurs exemplaire, mais simplement un par un en fonction des demandes. Il s’agit du même document avec les mêmes champs, seulement les valeurs vont être différentes.

    De plus, si cette solution est mis en place, cela sera transparent par l’utilisateur, il faut donc réaliser “le/les script(s)” qui réalise le besoin, afin que cette solution soit générique.

    Je vais jeter un œil sur les liens que tu as envoyé mais je ne pense pas que je puisse utiliser des solutions/outils externes disponible sur Internet.

    #65306
    Merlin
    Maître des clés

    Il s’agit du même document avec les mêmes champs, seulement les valeurs vont être différentes.

    Dans ce cas il s’agit d’un seul PDF à remplir avec des données variables, comme quoi il important de bien se comprendre…  :geek:

    Et donc ça devient beaucoup plus simple, Acrobat Pro peut importer des données au format CSV (entre autres) dans les champs d’un formulaire (et ensuite éventuellement les “aplatir” pour éviter les manipulations indésirables).
    Et c’est automatisable.

    Mais c’est à toi de le faire avant de livrer le PDF à l’utilisateur.
    Sinon c’est comme tu lui donnais un puzzle qui s’assemblerait automatiquement à l’ouverture : autant l’assembler avant, c’est plus simple et plus surtout beaucoup plus fiable.
    :Smiley15:

    #65307
    iRaJaaa
    Membre

    Oui c’est cela ahah, un tempate au format PDF, avec des données variables.

    J’ai bien compris la philosophie, cependant j’utilise actuellement la version “Acrobat Standard XI” (j’ai déjà lu ton article concernant les différentes appellations/versions).

    Cela n’est pas réalisable à l’aide d’un script de type “Ouverture du document” ?

    Par exemple, j’ai essayé de le faire manuelle avec un fichier “.txt”, cela fonctionne. J’ai essayé d’obtenir le même résultat avec un script : “this.importTextData(“Fiche_données.txt”);”, cela ne fonctionne pas encore (ce fichier .txt est en pièce jointe).

    #65308
    Merlin
    Maître des clés

    Cette fonction existe d’origine dans Acrobat Pro

    j’utilise actuellement la version “Acrobat Standard

    Et c’est seulement maintenant que tu le dis ?  :geek:

    Comme tu as pu le lire ça change tout, l’interface d’Acrobat Standard n’étant pas équipée “JavaScript” ni “importation de données” ni de “l’Assistant d’actions”, la seule solution c’est de créer un “outil supplémentaire” en JavaScript qui apparaitra dans un des menus.

    Un outil qui demanderait de sélectionner le fichier CSV, qui importerait les données dans le PDF actif, et qui l’enregistrerait.
    Ça conviendrait ?

    #65309
    iRaJaaa
    Membre

    Pourtant, j’ai bien les divers menus que tu as cité dans l’interface de ma version d’Adobe Acrobat.

    #65310
    Merlin
    Maître des clés

    Ce sont plutôt des fonctions que des menus à proprement parler.
    Mais ça ne change rien à ma proposition ci-dessus (qui fonctionnerait aussi avec Acrobat Reader).

    Peux-tu poster une capture d’écran de l’interface de ton Acrobat avec un maximum d’outils et de fonctions affichées ?
    Parce-qu’il y a bien longtemps que je n’ai pas vu un Acrobat “Standard”.
    :Smiley15:

    #65311
    iRaJaaa
    Membre

    Je n’ai pas réussi à prendre en capture, mais j’ai mis les sous fonctions qui permettent d’importer, exporter, fusionner. Je n’ai pas regardé les autres fonctionnalité car elles ne me semblent pas intéressante dans le carde de mon besoin.

    Je peux également exécuter du code JavaScript en ouverture etc.

    #65312
    Merlin
    Maître des clés

    Est-ce qu’il y a “l’Assistant d’action” ?

    #65313
    iRaJaaa
    Membre

    Non je n’ai pas “l’Assistant d’action”, ni dans l’onglet “Outil”, ni dans “Modifier l’ensemble des outils”.

    #65314
    Merlin
    Maître des clés

    Merci, je vois qu’Acrobat Standard s’est enrichi au fil des versions.

    #65315
    iRaJaaa
    Membre

    Ahahah  :Smiley03:

    Pour en revenir sur le sujet de départ, est-ce que mon besoin peut être mis en place avec ma version actuelle d’Adobe Acrobat, et si, par quel moyen et fonction Javascript.
    Je souhaite également implémenter les listes déroulantes dites “mère filles” présent dans ce forum, il ne devrait pas y avoir de problème avec ma version également ?

    #65316
    Merlin
    Maître des clés

    Pour en revenir sur le sujet de départ, est-ce que mon besoin peut être mis en place avec ma version actuelle d’Adobe Acrobat, et si, par quel moyen et fonction Javascript.

    Un outil qui demanderait de sélectionner le fichier CSV, qui importerait les données dans le PDF actif, et qui l’enregistrerait. Ça conviendrait ?

    :doute:

    #65317
    Merlin
    Maître des clés

    Je souhaite également implémenter les listes déroulantes dites “mère filles” présent dans ce forum, il ne devrait pas y avoir de problème avec ma version également ?

    Pas de soucis.

    #65318
    iRaJaaa
    Membre

    De quel genre d’outil parles-tu ?

    Mon idée, c’était de pouvoir exporter les données de ma solution web en format csv (aucun problème), de l’attacher en tant que pièce jointe à mon formulaire PDF (avec l’outil pdftk (attach_files), qui crée un PDF supplémentaire pour le output), et de pouvoir importer les données présent dans le fichier csv en pièce jointe, dans mon formulaire PDF.

    Tout cela doit se faire automatiquement sans actions de l’utilisateur.

    #65319
    Merlin
    Maître des clés

    De quel genre d’outil parles-tu ?

    Ben… Du coup je ne sais plus.  :joker:

    Il faudrait que tu expliques le contexte d’utilisation. D’après ce que je comprend ce serait des documents construits programmatiquement sur un serveur et que l’utilisateur téléchargerait déjà remplis avec les données. C’est bien ça ?
    Parce-que jusqu’ici j’avais compris que c’est toi qui devait remplir et distribuer les documents.

    En tout cas je ne comprend pas pourquoi tu veux attacher les données en pièce jointe du formulaire puisqu’il doit déjà être prérempli. Pour moi c’est le point le plus mystérieux.
    :Euuuh:

    #65320
    iRaJaaa
    Membre

    Est-il possible que je t’explique le contexte d’utilisation par mail ou sur une application afin que cela soit beaucoup plus clair pour toi ?

    On pourra revenir sur ce forum afin de donner la solution pour les utilisateurs qui rencontre la même problématique.

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