Inscrivez-vous

abracadabraPDF Forum

Le seul forum francophone entièrement dédié au format PDF

heiwa

16 septembre 2013 : 17:38
Apprenti sorcier Messages: 7
Bonjour à tous,

J'ai créé un formulaire PDF. Je l'ouvre sur le Reader et je remplis les champs.

Mais je souhaiterais pouvoir l'exporter ou l'enregistrer en PDF simple, c'est à dire non modifiable par les personnes à qui je l'envoie.

Je n'arrive pas à trouver la solution, je m'en remet donc à vos expériences.

Un grand merci.

« Modifié: 18 septembre 2013 : 20:26 par LionelMacBruSoft »

  • Grand magicien
  • Messages: 1 054
Bonjour,

Tout d'abord bienvenue sur le forum.

Tout dépend du contenu du formulaire.
Pour des champs de texte : on peut les verrouiller par un discret bouton caché (chose déjà vue sur le forum; une recherche est toujours à faire avant la création d'un nouveau sujet).

Le mieux serait de joindre ce formulaire.

Bien cordialement.
Lionel :alien2:
SerNuCom : SERvices NUmérique COMmunication

  • Apprenti sorcier
  • Messages: 7
Merci pour votre réponse.

En fait ce ne sont que des champs textes. C'est un formulaire pour un médecin qui doit remplir des champs texte ( nom du praticien, actes, remarque) et qui doit l'envoyer au patient. Donc le pdf vu par le patient doit être un pdf "normal", non modifiable.

J'ai fait une recherche sur le forum et sur google, mais je n'ai rien trouvé concernant ce sujet qui me paraît assez simple. Je pense que je ne suis pas le seul à mettre posé la question ?

D'apres votre idée, on remplirais les champs texte, puis on cliquerais sur un bouton qui verrouillerait les champs. Ensuite on enregistre le document. C'est ça ?

Merci

  • Grand magicien
  • Messages: 1 054
Bonsoir,

D'apres votre idée, on remplirais les champs texte, puis on cliquerais sur un bouton qui verrouillerait les champs. Ensuite on enregistre le document. C'est ça ?
Voilà, tout à fait. Un bouton discret, invisible (seul le médecin sait au il se trouve. Exemple : tout en haut à gauche du formulaire).

Lionel :alien2:
« Modifié: 16 septembre 2013 : 23:31 par LionelMacBruSoft »
SerNuCom : SERvices NUmérique COMmunication

  • Apprenti sorcier
  • Messages: 7
Bonjour,

Citer
Voilà, tout à fait. Un bouton discret, invisible (seul le médecin sait au il se trouve. Exemple : tout en haut à gauche du formulaire).

Sur ce bouton serait il possible de mettre deux actions : la 1ere verouiller les champs  - la 2e enregistrer le document.

Si oui comment faire pour verrouiller les champs sur un bouton ?

Cédric

  • Grand magicien
  • Messages: 1 054
Bonjour,

Faire une recherche sur le forum (ce thème a déjà été traité).

Lionel :alien2:
SerNuCom : SERvices NUmérique COMmunication

  • Apprenti sorcier
  • Messages: 7
Salut,

j'ai déja fait des recherches sur le forum et sur mon ami google, mais je n'ai rien trouvé. A moins que je n'ai rien compris. Je préfère moi aussi trouver par mes propres moyen plutôt que d'importuner les internautes. Mais là j'avoue que je sèche.

Ma recherche sur "verrouiller" sur le forum n'a pas donné grande satisfaction.

Merci

  • Grand magicien
  • Messages: 7 199
Sur ce bouton serait il possible de mettre deux actions : la 1ere verouiller les champs  - la 2e enregistrer le document.

Salut,

Trop facile !
On n'a même pas besoin de dissimuler le bouton en question, il suffit de le faire disparaître après utilisation.

Par-contre : il est possible de faire fonctionner tout ça avec Reader pour l'utilisateur, mais il faut impérativement que le concepteur du formulaire (donc toi) soit équipé d'Acrobat…
On continue ?

Si oui, merci de poster une maquette/exemple avec quelques champs car en ce moment je n'ai pas beaucoup de temps.

 :Smiley15:
Acrobate du PDF, InDesigner et Photoshopographe

  • Apprenti sorcier
  • Messages: 7
Bonjour,
oui j'ai Acrobat.

Voici donc le PDF en question..

Merci

« Modifié: 18 septembre 2013 : 18:40 par Merlin »

  • Grand magicien
  • Messages: 7 199
Je ne peux pas télécharger ton doc, je suis dans un hôtel à débit WiFi anémique…

Ci-dessous le JavaScript à placer dans le bouton :

//Masquer le bouton
event.target.display = display.hidden;

//Verrouiller tous les champs
for (var i=0; i<this.numFields; i++) {
   var fname = this.getNthFieldName(i);
   var f = this.getField(fname);
   f.readonly = true;
}

// Enregistrer
app.execMenuItem("SaveAs");


 :Smiley01:
Acrobate du PDF, InDesigner et Photoshopographe

  • Apprenti sorcier
  • Messages: 7
Un très grand merci, ça marche nickel. En espérant que ce post puisse servir à d'autres personnes.

Cédric
« Modifié: 19 septembre 2013 : 19:35 par Merlin »

  • Apprenti sorcier
  • Messages: 7
Bonjour, je reviens sur ce post, car le bouton fonctionne très bien (merci encore) sur PC, mais pas sur tablette tactile. Existerait il une solution pour faire pareil sur tablette ? car les medecins utilise la plus part du temps des tablettes pour remplir les pdf.

Merci

  • Grand magicien
  • Messages: 7 199
Non, hélas…
C'est quand ils veulent pour les mobiles.
 :priere:
Acrobate du PDF, InDesigner et Photoshopographe

  • Sorcier
  • Messages: 47
pour comprendre
pdf, je vous envoie une démo,
comment puis-je masquer les boutons rouges?


  • Grand magicien
  • Messages: 134
Bonjour, je reviens sur ce post, car le bouton fonctionne très bien (merci encore) sur PC, mais pas sur tablette tactile. Existerait il une solution pour faire pareil sur tablette ? car les medecins utilise la plus part du temps des tablettes pour remplir les pdf.

Merci

Non, hélas…
C'est quand ils veulent pour les mobiles.
 :priere:

Cela ne fonctionne pas avec Adobe Reader Mobile, mais par contre, cela fonctionne très bien (à l'exception du "enregistrer sous" qui devient un "enregistrer") avec PDF Expert.
Je suis toujours assez bluffé avec cet outil :)

iPhone : https://itunes.apple.com/fr/app/pdf-expert-professional-pdf/id323133888?mt=8
iPad : https://itunes.apple.com/fr/app/pdf-expert-fill-forms-annotate/id393316844?mt=8

  • Grand magicien
  • Messages: 7 199
Citer
comment puis-je masquer les boutons rouges?

1- On utilise la Convention de dénomination des champs de formulaire pour se simplifier la vie : http://abracadabrapdf.net/ressources-et-tutos/js-et-formulaires-ressources/duplication-rapide-de-champs-de-formulaire/

2- On ajoute cette ligne de script :
this.getField("Rosso").display = display.hidden;

Ce qui nous donne :

//Masquer le bouton
event.target.display = display.hidden;
this.getField("Rosso").display = display.hidden;
//Verrouiller tous les champs
for (var i=0; i<this.numFields; i++) {
   var fname = this.getNthFieldName(i);
   var f = this.getField(fname);
   f.readonly = true;
}
// Enregistrer
app.execMenuItem("SaveAs");


Exemple ci-joint.
 :Smiley03:
« Modifié: 08 octobre 2013 : 20:06 par Merlin »
Acrobate du PDF, InDesigner et Photoshopographe

  • Grand magicien
  • Messages: 7 199
Citer
(à l'exception du "enregistrer sous" qui devient un "enregistrer")

Houla, ça c'est grave et potentiellement dangereux pour l'utilisateur…
Il serait temps que les mobiles se préoccupent de sécurité, ceux d'Apple en particulier.
 :Smiley01:
Acrobate du PDF, InDesigner et Photoshopographe

  • Sorcier
  • Messages: 47
 :bravo:
je vous remercie beaucoup

  • Magicien
  • Messages: 66
1- On utilise la Convention de dénomination des champs de formulaire pour se simplifier la vie : http://abracadabrapdf.net/ressources-et-tutos/js-et-formulaires-ressources/duplication-rapide-de-champs-de-formulaire/

2- On ajoute cette ligne de script :
this.getField("Rosso").display = display.hidden;

Ce qui nous donne :

//Masquer le bouton
event.target.display = display.hidden;
this.getField("Rosso").display = display.hidden;[/font]
//Verrouiller tous les champs
for (var i=0; i<this.numFields; i++) {
   var fname = this.getNthFieldName(i);
   var f = this.getField(fname);
   f.readonly = true;
}
// Enregistrer
app.execMenuItem("SaveAs");


Exemple ci-joint.
 :Smiley03:

Bien le boujour à vous, sur cette question je voulais savoir si on a un champ PopUp Menu ou menu déroulant quel script doit-on avoir pour le bloquer?

  • Grand magicien
  • Messages: 7 199
Vous pouvez répéter la question ???

 :doute:  :oh:
Acrobate du PDF, InDesigner et Photoshopographe

  • Magicien
  • Messages: 66
La question est si on veut bloquer un champ PopUp Menu, est-ce qu'il y a un script pour faire cela. J'ai utilisé ce script :

//Masquer le bouton
event.target.display = display.hidden;
this.getField("Rosso").display = display.hidden;
//Verrouiller tous les champs
for (var i=0; i<this.numFields; i++) {
   var fname = this.getNthFieldName(i);
   var f = this.getField(fname);
   f.readonly = true;
}
// Enregistrer
app.execMenuItem("SaveAs");

pour bloquer plusieurs champs mais les champs PopUp Menu ne sont pas bloqués.

  • Grand magicien
  • Messages: 7 199
Ca devrait pourtant…
 :Euuuh:
Acrobate du PDF, InDesigner et Photoshopographe

  • Magicien
  • Messages: 66
J'ai essayé de vous envoyez le fichier joint on m'a dit que le fichier est trop lourd.

  • Grand magicien
  • Messages: 7 199
Acrobate du PDF, InDesigner et Photoshopographe

  • Magicien
  • Messages: 66
En sauvegardant le fichier doc-demo-OK modifier sous un autre nom bloque tous les champs Menu déroulant, PopUp Menu et autres, se ferme et s'ouvre automatiquement sur le même nom en pièce jointe dans le fichier doc-demo-OK modifier.

J'ai ajouté le fichier Proforma Facture2 dans le fichier doc-demo-OK pour alleger le poid de mon fichier.
« Modifié: 24 février 2015 : 15:00 par club3dtext »

  • Grand magicien
  • Messages: 7 199
Je ne comprend pas ce qui doit se passer ni ce qui ne va pas mais tu devrais t'intéresser à la Console, qui renvoie des messages d'erreurs.
Voir : http://abracadabrapdf.net/ressources-et-tutos/js-et-formulaires-ressources/console-javascript-d-acrobat/

 :idee:
Acrobate du PDF, InDesigner et Photoshopographe

  • Magicien
  • Messages: 66
Ok, j'ai bien compris, mais pourtant mon grand probleme pour l'instant c'est que je n'arrive pas bloquer les champs popUpMenu, si vous pouvez bien panchez sur mon cas ça fera du bien pour votre aide, encore merci de vos soutiens antérieurs. Dans le même fichier doc-demo-OK modifier en cliquant sur SaveAs les champs popUpMenu ne se bloquent pas.

  • Grand magicien
  • Messages: 7 199
- Pour moi ça fonctionne très bien.
Regarde dans le ci-joint que j'ai enregistré-sous en utilisant le bouton.

- Par-contre la Console persiste : il y a un problème sur la ligne 20, apparement un appel à champ dont le nom n'est pas correct :
TypeError: Type d'argument incorrect.
Doc.exportDataObject:20:Field Sauvegarder:Mouse Up
 ===> Paramètre cName.

- Il vaut mieux placer les scripts de menus déroulants en action "Souris Enfoncée", ça évite le temps de latence dans le remplissage du champ.

 :Smiley01:
Acrobate du PDF, InDesigner et Photoshopographe

  • Magicien
  • Messages: 66
J'utilise Adobe Acrobat Pro et ça ne marche pas de mon coté, les champs PupUp Menu ne se bloquent pas. Vous utilisez quel Acrobat pour que cele puisse fonctionnner de votre coté?

  • Grand magicien
  • Messages: 7 199
Acrobat XI
Acrobate du PDF, InDesigner et Photoshopographe

  • Grand magicien
  • Messages: 205
Bonjour,
De mon côté j'ai tester avec Arcobat pro XI => ça fonctionne
avec adobe Reader XI => ça ne fonctionne pas, quand tu rouvres le fichier (puisqu'il est censé ce fermer automatiquement) les popup menu accessibles via les champs "Désignation" sont disponibles.

Une alternative est d'utiliser un champs text non visible (Text6 dans l'exemple joint) à l'écran et de lui affecter la valeur 0 initialement.
Une fois les champs mis en lecture seul, on affecte la valeur 1 au champs "Text6" (je l'ai mis au niveau du bouton Save As).
J'ai modifié légèrement les scripts présents dans les champs "Désignation" pour que le popup menu ne s'affiche que si la valeur de "text6" est 0.

L'erreur en ligne 20 du bouton Sauvegarder vient du fait que l'on appelle une pièce jointe mais qu'aucune pièce jointe n'est présente, ce qui vient surement du fait que le fichier a été retravaillé pour être posté ....

 :Smiley01:

  • Sorcier
  • Messages: 27
Bonjour à tous,
nouveau sur le forum, j'ai trouvé de l'information pour mon formulaire dynamique, mon souci est que les script donné rempli parfaitement son office de figer tous les champs sauf deux de mon formulaire pour lesquels s’exécutent un horodatage en script à l'ouverture du document.
Je souhaiterais que le bouton fige aussi ces deux champs...
Merci vos retours, amicalement, Christophe !

  • Grand magicien
  • Messages: 7 199
Acrobate du PDF, InDesigner et Photoshopographe

  • Sorcier
  • Messages: 27
Bonjour et merci de ta réactivité Merlin,
j'ai certainement manqué un truc, je te joins un fichier test, lorsque j'enregistre le fichier pour figer les champs, l'horodatage n'est pas fixé,
à l'ouverture une minute après l'heure se remet à jour ! ce qui ne m'arrange pas du tout  :doute: ...

  • Grand magicien
  • Messages: 7 199
Bonjour,


- Verrouiller un champ interdit à l'utilisateur de le modifier, mais son contenu reste modifiable via des scripts ou des actions (calculs principalement).
 :idee:

- il faudrait vraiment que tu te décides à utiliser la Console : http://abracadabrapdf.net/ressources-et-tutos/js-et-formulaires-ressources/console-javascript-d-acrobat/
(Voir capture jointe)
 :priere:


PS : "null" veut dire "inexistant", et non pas "nul".
:jerisjaune:
« Modifié: 09 mars 2015 : 13:31 par Merlin »
Acrobate du PDF, InDesigner et Photoshopographe

  • Sorcier
  • Messages: 27
Oups,
j'ai oublié de copier le champ "text 6" dans mon fichier test, mais il existe bel et bien dans mon original !
Tu m'indiques donc qu'il n'est pas possible de figer ces 2 champs, je vais me rabattre sur un mode opératoire plus contraignant à savoir, impression via pdf creator et envoi du fichier par mail, en perdant certainement mes possibilités de pièce jointe... Moi qui rêvais d'automatiser tout çà !
Encore merci pour l'aide cher Merlin  :bonjour:

  • Grand magicien
  • Messages: 7 199
Tu m'indiques donc qu'il n'est pas possible de figer ces 2 champs

Je n'ai jamais dit ça…
Il suffit de protéger le script en détectant l'état du champ :
- Si champ verrouillé : il ne se passe rien.
- Sinon : OK, on exécute le script.

En plus dans ton cas il suffit de tester un seul champ puisqu'ils sont tous au même régime.

 :Smiley03:
« Modifié: 09 mars 2015 : 16:19 par Merlin »
Acrobate du PDF, InDesigner et Photoshopographe

  • Sorcier
  • Messages: 27
 :Ooops: Vais fouiller en ce sens !

  • Grand magicien
  • Messages: 7 199
var f = this.getField("NOM-DU-CHAMP");
if (f.readonly == false)
{
// script à exécuter
};
Acrobate du PDF, InDesigner et Photoshopographe

  • Sorcier
  • Messages: 27
 :extra: Parfait cher Merlin,
merci pour ton aide précieuse, j'avance à petits pas dans l'optimisation de mon formulaire ! :bravo:

  • Magicien
  • Messages: 66
Je dois signaler que moi aussi de mon coté j'avance à petit pas et j'aimerais si possible avoir un exemple de ton travail tofteuf, mais cela n'empêche pas que j'ai un souci avec un lien dans mon travail. Quand j'active la securité du document dans Document propriété, toute fois j'ai un bouton pour ouvrir un lien et le lien est bien présent dans le document ca refuse de s'ouvrir  :Euuuh:
Quelqu'un peu m'aider svp :priere:

  • Grand magicien
  • Messages: 7 199
toute fois j'ai un bouton pour ouvrir un lien et le lien est bien présent dans le document ca refuse de s'ouvrir  :Euuuh:

Il faut que bouton fasse appel à une fonction crée par script de niveau application.
Ca ne peut pas fonctionner directement depuis un script de niveau document.
Acrobate du PDF, InDesigner et Photoshopographe

  • Magicien
  • Messages: 66
Alors là qu'est-ce que je dois faire en ce sens. Parce que sans la securité du document le lien s'ouvre sans problème mais une fois securisé ça ne s'ouvre plus. Ne peut-on pas contourner ça pour avoir le document protéger et une possibilité d'ouvrir le lien qui est dans le document protégé.

  • Grand magicien
  • Messages: 7 199
Qu'appelles tu "la securité du document" ?
Ca consiste en quoi exactement ?
Acrobate du PDF, InDesigner et Photoshopographe

  • Sorcier
  • Messages: 27
Bonjour à tous,
voici mon formulaire, en l'état, encore des choses à peaufiner... :jerisjaune: prénommer mon fichier pour l'enregistrement "Commande + Text2"...

  • Magicien
  • Messages: 66
Ce je veux dir par là en activant cette option je ne peux pas ouvrir un lien avec le bouton. Y a-t'il un autre moyen.

  • Sorcier
  • Messages: 27
Bonsoir,
j'ai compilé avec le code pour nommer le fichier à "l'enregistrer sous", du coup, je perd le verrouillage des champs et notamment mes deux horodatages  :doute:

  • Grand magicien
  • Messages: 7 199
Ce je veux dir par là en activant cette option je ne peux pas ouvrir un lien avec le bouton.

J'ai bien compris.
Ce que je te demande c'est quelle est "cette option" : quels sont les paramètres de protection utilisés ?
Acrobate du PDF, InDesigner et Photoshopographe

  • Grand magicien
  • Messages: 7 199
j'ai compilé avec le code pour nommer le fichier à "l'enregistrer sous"

Qu'est-ce que ça veut dire ?
 :Euuuh:
Acrobate du PDF, InDesigner et Photoshopographe

  • Magicien
  • Messages: 66
Quand j'active cette option la pièce jointe qui est dans ne s'ouvre pas en cliquant sur le bouton. On dirait que la protection affection aussi la pièce jointe je veux proteger mon document et je veux que la pièce jointe qui s'y trouve soit accessible aussi y a t'il un moyen de solutionner ça. Voir le fichier joint.

  • Grand magicien
  • Messages: 7 199
Ce que je te demande c'est quelle est "cette option" : quels sont les paramètres de protection utilisés ?

Scuse, je n'avais pas vu la première capture d'écran (invisible sur mon portable).


Citer
On dirait que la protection affecte aussi la pièce jointe

En fait je ne peux pas vraiment répondre, il faudrait voir le document…
Acrobate du PDF, InDesigner et Photoshopographe

  • Sorcier
  • Messages: 27
Bonsoir à tous, après quelques semaines où j'ai dû laissé mon formulaire de côté ...
je voulais dire que j'ai rajouté du code pour améliorer mon formulaire, la création du nom du fichier pour l'enregistrer sous avec le bouton "pdf" du formulaire.
Et du coup je perd le verrouillage de mes champs d'horodatage que j'avais auparavant  :Ooops: .
L'objectif est également de tester un certain nombre de champs pour éviter que les gens m'envoient un fichier qui ne contiendrait pas les champs essentiels correctement complétés !
ET bien entendu de cumuler toutes ces fonctionnalités !

  • Sorcier
  • Messages: 27
Bonjour à tous,
de retour en arrière sur mon projet je n'arrive décidément à combiner le verrouillage des champs et la fonctionnalité enregistrer sous.
J'appelle à l'aide, la fonctionnalité de verrouillage des champs à l'enregistrement ne fonctionne plus, je ne vois pas trop pourquoi...
La console répète inlassablement que f is null, je désespère pas mal !
Si quelqu'un a un tuyau et un peu de temps pour m'aiguiller,merci par avance

  • Grand magicien
  • Messages: 7 199
Bonjour.

Ouvre ton formulaire dans Acrobat : JavaScript : Tous les scripts JavaScript.
Copie et colle l'intégralité des scripts du document dans ton éditeur de texte/script préféré et fait une recherche sur "f."

Tu constateras que la variable f est utilisée 3 fois dans 3 scripts différents, et que par 2 fois elle fait appel à des champs différents…
 :oh:  :Smiley01:
Acrobate du PDF, InDesigner et Photoshopographe

  • Sorcier
  • Messages: 27
Bonjour,
vu !!!!
J'en ai profité pour transférer le script du document sur un clic de cellule obligatoire à remplir, du coup le verrouillage des champs à l'enregistrement fonctionne à la perfection ! Je me lance dans un autre formulaire du coup ...
Merci pour votre aide  :bravo: