Donnez vie à vos documents numériques !
 

Validation et aide à la saisie. – RÉSOLU

abracadabraPDF Forums PDF – Général Validation et aide à la saisie. – RÉSOLU

  • Ce sujet est vide.
  • Créateur
    Sujet
  • #44400
    DanielSan
    Membre

    Bonjour,

    Dans un formulaire (voir pièce jointe),

    1/ je souhaite placer des messages d’alerte sous forme d’annotation (je trouve cela moins intrusif, moins agressif et plus discret qu’une fenêtre d’alerte).

    Je ne trouve pas dans la doc comment atteindre le positionnement d’un champ.
    En effet je voudrais positionner l’annotation en bout de champ sans devoir la placer au tâtonnement …
    Vous pouvez voir dans l’exemple pour le champ
    */ SIRET : s’il n’y a pas 14 caractères
    */ email : si le format n’est pas valide
    D’ailleurs y a-t-il autre chose à paramétrer pour ces annotations ?

    2/ je souhaite forcer les champs au format nombre mais que ceux-ci puissent commencer par des zéros (exemple avec le RIB)

    3/ je souhaite que le champ “activité” se renseigne automatiquement en fonction du code APE
    J’ai récupéré la base de l’INSEE.
    J’ai fait un tableau en JS en associant la clef “ape-naf” à la valeur “activité”.
    Sauf que le code est trop long et Acrobat ne veut pas tout me prendre.
    Comment faire ?  :Euuuh:

    Voili-voilou !
    Merci de votre aide.

    avez-vous des remarques sur ce PDF ?
    (surtout si mes scripts sont placés au bon endroit.  :geek: )

    Bien cordialement.
    _____
    D.San

    [attachment deleted by admin]

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

    Bonjour et bienvenue,

    1/ je souhaite placer des messages d’alerte sous forme d’annotation (je trouve cela moins intrusif, moins agressif et plus discret qu’une fenêtre d’alerte).

    C’est une bonne idée.

    En effet je voudrais positionner l’annotation en bout de champ sans devoir la placer au tâtonnement…
    Je ne trouve pas dans la doc comment atteindre le positionnement d’un champ.

    Il y a une des nouveautés discrètes d’Acrobat XI qui a été faite pour toi (voir capture jointe).

    Vous pouvez voir dans l’exemple pour le champ
    */ SIRET : s’il n’y a pas 14 caractères
    */ email : si le format n’est pas valide
    D’ailleurs y a-t-il autre chose à paramétrer pour ces annotations ?

    Ca me parait bien.

    2/ je souhaite forcer les champs au format nombre mais que ceux-ci puissent commencer par des zéros (exemple avec le RIB)

    Il y a aussi le “masque arbitraire” qui a été fait pour toi :
    http://help.adobe.com/fr_FR/acrobat/pro/using/WS58a04a822e3e50102bd615109794195ff-7de4.w.html

    3/ je souhaite que le champ “activité” se renseigne automatiquement en fonction du code APE
    J’ai récupéré la base de l’INSEE.
    J’ai fait un tableau en JS en associant la clef “ape-naf” à la valeur “activité”.
    Sauf que le code est trop long et Acrobat ne veut pas tout me prendre.
    Comment faire ?

    Il n’y a hélas rien à faire, trop c’est trop.

    avez-vous des remarques sur ce PDF ?

    La case-à-cocher “Le signataire accepte de recevoir les factures par email” est quasiment invisible.
    Peut-être qu’une liste déroulante serait pertinente à la place des champs de saisie de chiffres (effectif, nb d’exemplaires, etc.) ?

    :Smiley01:

    [attachment deleted by admin]

    #54390
    DanielSan
    Membre

    Merci pour ton aide Merlin.

    Il y a une des nouveautés discrètes d’Acrobat XI qui a été faite pour toi (voir capture jointe).

    J’avais vu l’onglet positionnement.
    Je cherchais à atteindre ces paramètres par un script histoire d’avoir moins de trucs à réécrire …
    Si j’ai bien compris dans la doc acroJS quand ils commencent parfois par :

    Code:
    var inch = 72, x0 = 2*inch, y0 = 4*inch;

    Je prends les unités du champ en pouce et je multiplie par 72 ?  :doute:

    Il y a aussi le “masque arbitraire” qui a été fait pour toi :
    http://help.adobe.com/fr_FR/acrobat/pro/using/WS58a04a822e3e50102bd615109794195ff-7de4.w.html

    En effet, mais le message d’alerte est incompréhensible

    La valeur indiquée ne correspond pas au format du champ =”99999999999999″

    L’alerte sonore traditionnelle est sympa … peut-être rajouter dans le script une expression régulière …

    Il n’y a hélas rien à faire, trop c’est trop.

    Ok, faut des limites hein  :jerisjaune:
    Je me disais quand attachant une base de données au PDF j’aurai pu y accéder … :siffle:

    La case-à-cocher “Le signataire accepte de recevoir les factures par email” est quasiment invisible.

    Ce champ a finalement été supprimé par le client.
    Seule la mention reste dans le cadre signature et cachet.

    Peut-être qu’une liste déroulante serait pertinente à la place des champs de saisie de chiffres (effectif, nb d’exemplaires, etc.) ?

    ah oui en effet. Je soumets ça demain. Merci  :Smiley03:

    Bien cordialement
    _____
    D.San

    #54391
    Merlin
    Maître des clés

    Je prends les unités du champ en pouce et je multiplie par 72 ?

    Oui, l’unité de base est le point PostScript.

    peut-être rajouter dans le script une expression régulière…

    A placer en “script de touche personnalisé” (dans l’onglet format) :

    var regxp=/^[0-9.+s]$/;
    if (event.willCommit==false) { if (event.change.length>0 && regxp.test(event.change)==false) {app.beep();
    event.rc=false}}

    Il te faudra peut-être le modifier car ce script est prévu pour les numéros de téléphones, donc il accepte aussi les espaces et les points.

    :Smiley01:

    #54392
    DanielSan
    Membre

    A placer en “script de touche personnalisé” (dans l’onglet format)

    Merci ! C’est EXACTEMENT ça ! :extra:

    J’ai mis ce script :

    Code:
    // script n’autorisant que la saisie de chiffre
    // à mettre dans format/personnalisé/script de touche

    // (optional) The sound type. Values are associated with sounds as follows:
    // paramètre : nType
    // 0: Error
    // 1: Warning
    // 2: Question
    // 3: Status
    // 4: Default (default value)
    // exemple : app.beep(nType=0);

    var regxp=/^[0-9]$/; // expression régulière n’autorisant que la saisie de chiffre
    if (event.willCommit==false) {
    if (event.change.length>0 && regxp.test(event.change)==false) {
    app.beep(nType=0);
    event.rc=false
    }
    }

    Modifs en pièce jointe.
    J’ai rajouté une alerte sonore en accompagnement des apparitions des annotations :geek:

    Cordialement,
    _____
    D.San

    [attachment deleted by admin]

    #54393
    Merlin
    Maître des clés

    As tu noté que sur Mac c’est toujours le même son, il n’y a pas de différence quel que soit le code utilisé.
    > Le script placé en ouverture de page provoque une erreur.

    :Smiley01:

    #54394
    DanielSan
    Membre

    Oui pour le même son sur Mac (et Linux aussi).

    Je n’ai pas de message d’erreur à l’ouverture … mais j’ai vu laquelle c’était (je suis allé un peu trop vite dans le copié/collé  :jerisjaune:)

    #54395
    Merlin
    Maître des clés

    Je n’ai pas de message d’erreur à l’ouverture

    Un JavaScripteur sachant JavaScripter ne sait pas JavaScripter sans sa Console et son débogueur !

    :Smiley15:

    [attachment deleted by admin]

    #54396
    Lionel
    Membre

    Bonjour,

    Un JavaScripteur sachant JavaScripter ne sait pas JavaScripter sans sa Console et son débogueur !

    :Smiley15:

    Je connais aussi la version en Schtroumpfs : Un JavaSchtroumpfeur sachant JavaSchtroumpfer…  :Smiley08:

    Lionel  :Smiley03: :alien2:

    #54397
    DanielSan
    Membre

    ah ben schtroumpf, je ne schtoumpfais pas ça !
    schtroumpf à vous 2 !
    Ma dernière version schtroumpf mieux maintenant ! :geek:

    #54398
    Nykau
    Membre

    Par contre tes champs RIB sont incorrects.
    Un RIB peut contenir des lettres.
    Quand ça arrive, c’est assez souvent dans le numéro de compte.

    #54399
    Merlin
    Maître des clés

    Je le note !
    :Smiley03:

    #54400
    DanielSan
    Membre

    Un RIB peut contenir des lettres.

    j’en apprends une là … merci !
    Va falloir que je fasse remonter l’info au client.
    cf http://fr.wikipedia.org/wiki/Basic_Bank_Account_Number pour plus d’infos

    #54401
    Merlin
    Maître des clés

    D’ailleurs il y a plus simple que le JavaScript pour le contrôle de ce type de saisie : le Masque arbitraire.
    ==> http://help.adobe.com/fr_FR/acrobat/pro/using/WS58a04a822e3e50102bd615109794195ff-7de4.w.html#WS8CA28D85-6E94-4898-9C2B-5308C15B1F3B.w

    :Smiley15:

    #54402
    DanielSan
    Membre

    oui, tu me l’as déjà suggéré dans ta première réponse… mais le type d’alerte ne me convenait pas.
    D’où l’utilisation de JS de touche personnalisée.

    #54403
    Merlin
    Maître des clés

    OK, il est tard, je vais me coucher…
    :Ooops:  :geek:

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