Donnez vie à vos documents numériques !
 

Générer un numéro de commande automatique

abracadabraPDF Forums PDF – Général Générer un numéro de commande automatique

  • Ce sujet est vide.
  • Créateur
    Sujet
  • #43652

    Bonjour,
    J’ai réalisé un formulaire qui fait office de ‘bon de commande’. J’ai une problématique que je n’arrive pas à résoudre que je vous expose.
    Dans un champs nommé ‘Numéro de commande », je voudrai qu’à l’ouverture du pdf, ça génère un numéro quelconque, le but étant d’identifier cette commande via ce numéro de commande.
    J’ai pensé à utiliser la fonction ‘heure automatique’ : ainsi dès qu’un utilisateur ouvre le document, l’heure du moment s’affiche et ferait office de ‘numéro de commande’.
    Le problème avec cette fonction c’est que dès qu’on ouvre à nouveau le doc, l’heure change à chaque ré-ouverture du document.
    Quelqu’un a-t-il une autre fonction à me proposer ou bien celle-ci mais sans que l’heure bouge à chaque ré-ouverture du document.
    Merci beaucoup pour votre aide
    Catherine

Affichage de 7 réponses de 1 à 7 (sur un total de 7)
  • Auteur
    Réponses
  • #49795
    bebarth
    Maître des clés

    Bonjour,
    Voici une première idée : Pourquoi ne pas créer un bouton qui générerait un numéro aléatoire (avec “Math.random()”) et qui deviendrait invisible lorsqu’on aurait appuyé dessus, ou bien ce numéro serait généré automatiquement à la première ouverture grâce à une variable qui contrôlerait cette première ouverture !
    @+
    :doute:

    #49796
    Merlin
    Maître des clés

    La variable c’est une bonne idée mais ça ne conviendra pas :
    la variable est stockée sur l’ordinateur, pas dans le fichier : donc si l’utilisateur change d’ordinateur…

    Par contre il suffit de tester si le champ est déjà rempli ou bien s’il est encore vide, dans le 1er cas on laisse intact, dans le 2e on le rempli, comme dans l’exemple ci-dessous qui ne rempli un champ avec la date que s’il est vide :

    Code:
    if (this.getField(“NOMDUCHAMP”).value == “”)
        {this.getField(“NOMDUCHAMP”).value = util.printd(“dd/mm/yyyy”, new Date());
        }

    Voir le champ date dans le fichier ci-joint, le script est déclenché à l’ouverture du fichier : menu Options avancées > Traitement du doc > Script JavaScript > Startup1
    :soleil:

    Dans le ci-joint il y a également un script qui génère un n° de commande unique à l’ouverture dans le champ situé au dessus de l’adresse, malheureusement cette fonction pose des problèmes depuis la version 7 d’Acrobat et de Reader : elle avait été verrouillé dans la version 7, et dans les versions 8 et 9 il faut décocher une case (cochée par défaut) au libellé ésotérique dans les Préférences de sécurité pour que cela fonctionne. Sinon cela provoque le renvoi d’un message d’erreur très perturbant pour l’utilisateur final…
    :'(

    #49797
    alex
    Participant

    Voici comment je procède face à ce problème:
    Préliminaires:
    Il faut obligatoirement travailler avec Acrobat 8 ou 9 pour élaborer le document.
    A l’usage, le système fonctionne sous le seul Reader (version 7 minimum).
    Réalisation:
    Je crée un champ qui contiendra la valeur à contrôler (ici votre numéro de commande).
    J’autorise l’enregistrement des données de champ de formulaire pour conserver la dernière valeur contrôlée (numéro de commande).
    Par script je force l’enregistrement du formulaire dès que la valeur du champ a changé.
    A la prochaine ouverture vous retrouvez votre valeur et vous pouvez la modifier manuellement ou la redéfinir automatiquement par script.

    Plus de détails ?

    #49798
    Merlin
    Maître des clés

    Oui, je veux bien des détails parce que je n’ai rien compris…
    ;)
    :Euuuh: :???: :Euuuh:

    #49799
    alex
    Participant

    Plus de détails:
    Préliminaires:
    Il faut obligatoirement travailler avec Acrobat 8 ou 9 pour élaborer le document.
    A l’usage, le système fonctionne sous le seul Reader (version 7 minimum).
    Réalisation:
    Je crée un champ qui contiendra la valeur à contrôler (ici votre numéro de commande).
    J’autorise l’enregistrement des données de champ de formulaire pour conserver la dernière valeur contrôlée (numéro de commande) en utilisant Options avancées>Activer les droits d’utilisation dans Adobe Reader.
    Nota:Attention à ce stade si le document doit être protégé par mot de passe ou signature il faut le protéger et l’enregistrer avant d’activer les droits du Reader. En cas d’erreur, utiliser la commande Enregistrer une copie et elle seule dans une version d’Acrobat égale ou supérieure.
    Par script je force l’enregistrement du formulaire dès que la valeur du champ a changé.
    A la l’ouverture suivante, vous retrouvez votre valeur et vous pouvez la modifier manuellement ou la redéfinir automatiquement par script (ce que je préfère ) autant de fois que vous le désirez.
    Mon Karma est à 0 ?
    Merlin, en ai-je dit assez ?

    #49800
    Lionel
    Membre

    Bonjour,

    Bien.  :PouceHaut:

    Mon Karma est à 0 ?

    À un maintenant.  :fleurstulipes: Nous sommes donc, pour l’instant, à égalité.

    Bien cordialement.
    Lionel :bonjour:

    #49801
    Merlin
    Maître des clés

    Merlin, en ai-je dit assez ?

    Oui, cette fois j’ai bien compris le principe.
    :soleil:

    Mon Karma est à 0 ?

    Je ne sais pas trop à quoi ça correspond mais c’est certainement du au fait que tu t’es ré-inscris, perdant ainsi tous les acquis sur le forum.
    Je vais voir ce que je peux faire.
    ;)

    Edit : allez soyons fous : 5 partout !
    :geek:

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