| |
Membre enregistré 399 messages |
|
| Posté le 01 mai 2014 - 21:36 |
Bonjour,
J'ai généré un PDF avec des zone de saisie.
De là, je voudrais récupérer les champs de saisie (étiquette et contenu), est-il possible en WinDev 19 ?
Merci d'avance pour vos réponses.
-- Librement.
www.creadepa.fr Windev 18, Windev Mobile 18, WebDev 18 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 280 messages |
|
| Posté le 02 mai 2014 - 08:57 |
tu peux utiliser les "Traitements associés à un champ de saisie dans un état"( voir http://doc.pcsoft.fr/fr-FR/?1011074), je pense au traitement "Sortie" dans lequel tu mémorises le contenu de ton champ dans une variable globale au projet.
-- Olivier chez EasySoftSystem |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 399 messages |
|
| Posté le 05 mai 2014 - 09:06 |
Bonjour, merci pour la réponse, je précise que le PDF est téléchargé sur le pc de l'utilisateur, en suite, il envoie le PDF par mail.
-- Librement.
www.creadepa.fr Windev 18, Windev Mobile 18, WebDev 18 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 56 messages |
|
| Posté le 05 mai 2014 - 11:23 |
Bonjour, Cela m'intéresse aussi. Avec la fonction PDFVersTexte on récupère le texte des champs de formulaires remplis par l'utilisateur. Ça reste assez rudimentaire, mais si on a un label explicite devant chaque champ on peut s'y retrouver.
Par contre, cela ne renvoie que le texte donc si le formulaire pdf contient des cases à cocher, des boutons radios ... on ne récupère pas le choix. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 399 messages |
|
| Posté le 05 mai 2014 - 16:01 |
J'ai u le support technique de pcsoft qui ma dit ne pas avoir de solution !
Merci pour le nom de la fonction, cela vas me permettre d'avancer.
-- Librement.
www.creadepa.fr Windev 18, Windev Mobile 18, WebDev 18 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 56 messages |
|
| Posté le 05 mai 2014 - 16:26 |
Comme tu génères toi-même le formulaire pdf tu peux t'arranger pour que l'ordre des champs, le libellé etc soit simple et cohérent, à partir de là si tu veux juste récupérer des valeurs ça pourra marcher. J'ai joué un peu avec et malheureusement pas moyen de trouver les valeurs pour les cases à cocher et autres : je pensais pouvoir utiliser un champ de saisie invisible, mais rempli avec la valeur cochée, par exemple, mais ça ne marche pas car PdfVersTexte ne renvoie pas le contenu des champs invisibles...
Sans quoi il existe une bibliothèque java (iText) capable de faire ça et bien d'autres choses, mais je ne sais pas s'il est possible de l'utiliser "directement" avec Windev ? Si quelqu'un a une idée d'ailleurs ?
On peut faire en java un exe en ligne de commande acceptant un nom de fichier en paramètre, et qui renverra une liste des champs, contenus et noms, dans un fichier texte, et l'appeler depuis Windev : c'est un peu tortueux mais ça marcherait. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 962 messages |
|
| Posté le 06 mai 2014 - 02:16 |
hello, il existe la version dotnet de iText qui s'appelle iTextSharp , on peut facilement utiliser l'assemblage dans windev. A partir de la version 5, iText est passé en licence AGPL ( c'est à dire très restrictive pour un projet commercial). Par contre l'ancienne version la 4.1.6 est en licence MPL/LGPL (beaucoup moins restrictive). Voici un exemple de code qui utilise l'assemblage iTextSharp en version 4.1.6. On lit un document PDF interactif rempli et on récupère tous ses champs en affichant leurs noms, leurs types et leurs valeurs.
MonFichierPDF est un PdfReader("F:\interactiveform_enabled.pdf") formulaire est un AcroFields dynamique formulaire = MonFichierPDF.get_AcroFields() POUR TOUT MONFieldElement DE formulaire.Fields Trace(MONFieldElement.Key,formulaire.GetFieldType(MONFieldElement.Key),formulaire.GetField(MONFieldElement.Key)) FIN
Voici le document source :

et le résultat :
Emergency_Contact 4 KOEK Birthdate 4 10/02/2000 EMPLOYEE SIGNATURE 7 Telephone_Work 4 0503040406 Emergency_Phone 4 0202020202 Name_Middle 4 Pork STATE 4 ca OTHER DOCTORATE 2 Address_1 4 10 PHD 2 Name_Suffix 4 PROFESSIONAL DEGREE 2 Address_2 4 rue du port Sex 3 MALE ZIP 4 40404 MASTERS DEGREE 2 Print 1 Name_Last 4 JP City 4 Porktown HIGH SCHOOL DIPLOMA 2 Name_First 4 Jurassic ASSOCIATES DEGREE 2 SSN 4 030303030 Name_Prefix 4 TRADE CERTIFICATE 2 On BACHELORS DEGREE 2 On COLLEGE NO DEGREE 2 Telephone_Home 4 0102030405 Emergency_Relationship 4
Ami calmant, J.P |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 399 messages |
|
| Posté le 06 mai 2014 - 10:04 |
Bonjour à tous, Merci pour vos réponses qui me redonne espoir.
@Jurassic Pork, ou je peut trouver iTextSharp en version 4.1.6 ? et comment on utilise ce truc ? je viens de passer 2h dans Google pour trouver et je trouve rien 
-- Librement.
www.creadepa.fr Windev 18, Windev Mobile 18, WebDev 18 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 399 messages |
|
| Posté le 06 mai 2014 - 10:23 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 399 messages |
|
| Posté le 06 mai 2014 - 10:28 |
Trouvé, piuffff bien compliqué WinDev...
-- Librement.
www.creadepa.fr Windev 18, Windev Mobile 18, WebDev 18 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 56 messages |
|
| Posté le 06 mai 2014 - 10:38 |
Merci pour cette réponse Jurassic Pork, je n'avais pas pensé à l'équivalent en C# de cette bibliothèque. En même temps je découvre l'utilisation des assemblages .net sous Windev et c'est super 
@C4Y je dirais plutôt que c'est le format pdf qui est compliqué (à un point d'ailleurs...). Donc forcément une classe qui manipule un pdf de A à Z c'est un roman en soi. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 399 messages |
|
| Posté le 06 mai 2014 - 10:39 |
Voila le résultat d'une ligne récupéré, suis mort !!!!!
Pays_IY5MFqVU6bsX6PUayeR8ow 4
-- Librement.
www.creadepa.fr Windev 18, Windev Mobile 18, WebDev 18 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 962 messages |
|
| Posté le 06 mai 2014 - 10:57 |
tu es mort ? de rire ? la ligne me paraît logique
Pays_IY5MFqVU6bsX6PUayeR8ow : Windev doit donner des noms composés du nom du champ + une séquence de caractères plus ou moins aléatoire. 4 : il s'agit de texte rien : y - a - t-il une valeur dans le champ ? |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 56 messages |
|
| Posté le 06 mai 2014 - 11:59 |
Ça marche nickel sur mes formulaires, et on récupère bien les champs invisibles, les cases à cocher etc 
@C4Y le nom "Pays_IY5MFqVU6bsX6PUayeR8ow" a sans doute été créé automatiquement par le logiciel avec lequel tu as conçu le formulaire. Tu verrais ce même nom dans Acrobat Pro ou tout autre soft si tu ouvrais ton formulaire avec. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 1 418 messages |
|
| Posté le 06 mai 2014 - 12:18 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 399 messages |
|
| Posté le 06 mai 2014 - 12:47 |
Top nikel, comme dit Ancoma, c'est le soft qui à crée cette clé, 100 mille merci à Jurassic Pork, sans lui je ne serais pas y arriver.
Bon dev à tous, que la force soie avec vous 
-- Librement.
www.creadepa.fr Windev 18, Windev Mobile 18, WebDev 18 |
| |
| |
| | | |
|
| | |
| |
| Posté le 10 mars 2017 - 15:25 |
Jurassic Pork a écrit :
hello, il existe la version dotnet de iText qui s'appelle iTextSharp , on peut facilement utiliser l'assemblage dans windev. A partir de la version 5, iText est passé en licence AGPL ( c'est à dire très restrictive pour un projet commercial). Par contre l'ancienne version la 4.1.6 est en licence MPL/LGPL (beaucoup moins restrictive). Voici un exemple de code qui utilise l'assemblage iTextSharp en version 4.1.6. On lit un document PDF interactif rempli et on récupère tous ses champs en affichant leurs noms, leurs types et leurs valeurs. MonFichierPDF est un PdfReader("F:\interactiveform_enabled.pdf") formulaire est un AcroFields dynamique formulaire = MonFichierPDF.get_AcroFields() POUR TOUT MONFieldElement de formulaire.Fields Trace(MONFieldElement.Key,formulaire.GetFieldType(MONFieldElement.Key),formulaire.GetField(MONFieldElement.Key)) FIN Voici le document source : http://hostimage.windev.io/images/itextsharp-2_6828c7d0e67e3e40c20c652439afc894.png et le résultat : Emergency_Contact 4 KOEK Birthdate 4 10/02/2000 EMPLOYEE SIGNATURE 7 Telephone_Work 4 0503040406 Emergency_Phone 4 0202020202 Name_Middle 4 Pork STATE 4 ca OTHER DOCTORATE 2 Address_1 4 10 PHD 2 Name_Suffix 4 PROFESSIONAL DEGREE 2 Address_2 4 rue du port Sex 3 MALE ZIP 4 40404 MASTERS DEGREE 2 Print 1 Name_Last 4 JP City 4 Porktown HIGH SCHOOL DIPLOMA 2 Name_First 4 Jurassic ASSOCIATES DEGREE 2 SSN 4 030303030 Name_Prefix 4 TRADE CERTIFICATE 2 On BACHELORS DEGREE 2 On COLLEGE NO DEGREE 2 Telephone_Home 4 0102030405 Emergency_Relationship 4 Ami calmant, J.P
Bonjour Excusez moi mais je n'arrive pas a utiliser ce doe cela me crée une erreur car MonFichierPDF est un PdfReader("F:\interactiveform_enabled.pdf") n'est pas une variable Help me |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 127 messages |
|
| Posté le 26 mai 2017 - 11:04 |
Bonjour,
L'exemple fourni par J. Pork fonctionne très bien (énumération des éléments du formulaire d'un < pdf >). Toujours dans l'esprit du remplissage de formulaire (ce qui peut se faire avec l’importation de fichiers< fdf > pour un < pdf>) existe-t-il un procédé aussi simple (dll, Wlangage ...) qui permette de remplir le formulaire d'une page Web, sans que l'on soit un pro d'Internet (demandeur = prof. libérale ... non programmeur) ?
Merci (à J.P. ... d'avance)
Mike |
| |
| |
| | | |
|
| | |
| |
| Posté le 09 avril 2019 - 21:25 |
CreatAddict a écrit :
Bonjour à tous, Merci pour vos réponses qui me redonne espoir. @Jurassic Pork, ou je peut trouver iTextSharp en version 4.1.6 ? et comment on utilise ce truc ? je viens de passer 2h dans Google pour trouver et je trouve rien  -- Librement. www.creadepa.frWindev 18, Windev Mobile 18, WebDev 18
Bonjour,
Finalement avez-vous pu récupérer iTextSharp en version 4.1.6 ? Et si oui pourriez-vous me le refiler car je suis comme vous je cherche, je cherche et je trouve rien ! je vous remercie par avance ...
Cordialement, Windev 24 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 277 messages |
|
| Posté le 09 avril 2019 - 21:30 |
CreatAddict a écrit :
Bonjour à tous, Merci pour vos réponses qui me redonne espoir. @Jurassic Pork, ou je peut trouver iTextSharp en version 4.1.6 ? et comment on utilise ce truc ? je viens de passer 2h dans Google pour trouver et je trouve rien -- Librement. www.creadepa.frWindev 18, Windev Mobile 18, WebDev 18
Bonjour,
Finalement avez-vous pu récupérer iTextSharp en version 4.1.6 ? Et si oui pourriez-vous me le refiler car je suis comme vous je cherche, je cherche et je trouve rien ! je vous remercie par avance ...
Cordialement, |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 782 messages |
|
| Posté le 09 avril 2019 - 22:44 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 277 messages |
|
| Posté le 09 avril 2019 - 22:57 |
@Popoy Bonjour, Malheureusement le 1er lien m’envoie au code source (que j'avais repéré d'ailleurs) et non à directement à la DLL et le 2e sur PdfViewerNET qui n'a rien à voir avec iTextSharp... Merci quand même... |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 782 messages |
|
| Posté le 10 avril 2019 - 07:52 |
j'ai bien indiqué que le premier lien était le source. As tu bien téléchargé les 2 fichiers ZIP proposé dans le 2eme lien. je te garantie que l'un des 2 contient la dll de itextsharp. l'ancien lien proposé de pdfviewver proposé plus haut a été archivé c'est le lien que j'ai proposé. j'ai vérifier le ZIP avant de poster. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 782 messages |
|
| Posté le 10 avril 2019 - 07:55 |
| autre solution, tu prend le source que tu recompile en visual studio |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 277 messages |
|
| Posté le 10 avril 2019 - 09:38 |
Ok, j'ai bien récupéré la DLL, merci 
Maintenant j'ai un autre problème, lorsque j’exécute le code mentionné plus haut fourni par J.P. j'obtiens deux erreur de compilation identiques. ça me dit que le type est inconnu ? y'a qq chose d'autre à paramétrer avant ? Je suis en Windev 24.

|
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 782 messages |
|
| Posté le 10 avril 2019 - 10:00 |
Désolé, ce ne doit pas être la bonne version de dll. Si quelqu'un l'a garder , merci de partager. Ou si quelqu'un peut le compilé, pareil (perso je suis nul en visual studio) |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 277 messages |
|
| Posté le 10 avril 2019 - 11:44 |
Si si, j'ai vérifié avec un clic droit sur les propriétés de la DLL, c'est bien la 4.1.6. La DLL est bien chargée en mémoire, (j'ai bien une instance) mais je ne comprends pas cette erreur. Il doit surement y a voir une déclaration à faire, mais quoi ? |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 782 messages |
|
| Posté le 10 avril 2019 - 11:59 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 277 messages |
|
| Posté le 10 avril 2019 - 20:52 |
Oui ! Effectivement c'est bien comme ça qu'il fallait procéder  Il suffit de sélectionner la fameuse DLL et roule ma poule ! Merci beaucoup ! ça marche à présent ! |
| |
| |
| | | |
|
| | |
| |
| Posté le 09 décembre 2020 - 08:23 |
ma petite pierre a l'edifice a partir de l'assemblage itextsharp
voila comment generer un fichier fdf à partir de l'assemblage :
soit acroform_pdf = ComplèteRep(fRepExe()) + "acroform.pdf" soit outFdf = ComplèteRep(fRepExe()) + "acroform_fields.fdf" clFos est un FileStream(outFdf, FileMode.Create) FdfWriter est un FdfWriter() FdfWriter.File = Path.GetFullPath(acroform_pdf) FdfWriter.SetFieldAsString("FirstName", "Alexander") FdfWriter.SetFieldAsString("LastName", "Chingarev") FdfWriter.Writeto(clFos) |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 4 362 messages |
|
| Posté le 09 décembre 2020 - 09:18 |
Bonjour, itext5 est deprecated, il faut passer par itext7
-- Il y a peut être plus simple, mais, ça tourne |
| |
| |
| | | |
|
| | |