Donnez vie à vos documents numériques !
 

Date calculée modifiable par une date ultérieure mais pas antérieure

abracadabraPDF Forums PDF – Général Date calculée modifiable par une date ultérieure mais pas antérieure

  • Créateur
    Sujet
  • #70690
    Nath65
    Participant

    Bonjour, je dois faire un formulaire avec 3 champs de date :

    • la date de commande nommée « StartDate »
    • la date limite nommée « DateLimite » qui indique par défaut « StartDate » + 5 jours
    • la date de début de livraison nommée « DataLivraison » qui indique par défaut la même date que « StartDate »

    Il faudrait qu’une fois affichées, ces 2 dates puissent être modifiables avec saisie d’une date ultérieure mais bloquée si antérieure à ce qui est affiché en automatique. Je ne sais pas comment faire, je débute en JavaScript.

    Actuellement j’ai ce code en calcul dans le champs « StartDate » :

    var date = util.scand("dd/mm/yyyy", event.value);
    if(event.value == "") this.getField("DateLimite").value = "";
    else { date.setDate(date.getDate() +5);
    this.getField("DateLimite").value = util.printd("dd/mm/yyyy", date);}
    var date = util.scand("dd/mm/yyyy", event.value);
    if(event.value == "") this.getField("DateLivraison").value = "";
    else { date.setDate(date.getDate() +0);
    this.getField("DateLivraison").value = util.printd("dd/mm/yyyy", date);}

    Comment faire pour que l’on ne puisse pas changer une date par une date antérieure ?

    Avance merci de votre aide.

    PS : J’utilise Acrobat Pro DC 2021 sur Mac

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

    bonsoir,
    Voici ma proposition !
    Les calculs ne sont plus en script du champ « StartDate » mais en script de calcul des autres champs et on utilise :
    if (event.source && event.source.name=="StartDate")

    pour dire que le calcul ne se s’effectue que s’il provient du champ « StartDate », ce qui permet de changer manuellement la valeur des champs.
    Par contre, ici, si on modifie la date de commande, les 2 autres dates sont réinitialisée. C’est correct ?

    @+
    😎

    Attachments:
    You must be logged in to view attached files.
    #70693
    Nath65
    Participant

    Bonjour et merci de votre réponse mais cela ne répond pas à mon problème.

    ok, si on modifie la date de commande, les autres dates doivent se mettre à jour automatiquement.

    Mais j’ai besoin que toutes les dates soient bloquées si on essaie de saisir une date antérieure à ce qui est mis en automatique. Il faut que l’on puisse modifier une date vers le futur uniquement mais pas en arrière.

    Avez-vous une idée ?

    D’avance merci de votre aide.

     

    #70694
    bebarth
    Maître des clés

    bonjour,
    Que signifie « bloquée » ?
    Ici il est impossible de modifier les champs avec une date antérieure !!! Sauf StartDate…

    @+
    😎

    #70695
    Nath65
    Participant

    Effectivement, dans votre exemple on ne peux pas mettre de date antérieure à la date de commande dans les autres champs, mais la date limite n’est pas bloquée à +5 jours minimum. y a-t-il un moyen de corriger cela ?

    #70696
    bebarth
    Maître des clés

    Désolé de ne pas comprendre !
    Merci de préciser la procédure.

    1. On indique une date dans le champ « StartDate ».
    2. Le champ « DateLimite » indique la date « StartDate » plus 5 jours. Ce champ devient-il bloqué (impossible à changer) ou modifiable uniquement avec une date postérieure à celle du champ « StartDate »?
    3. Le champ « DateLivraison » indique la même date que « StartDate ». Ce champ devient-il bloqué (impossible à changer) ou modifiable uniquement avec une date postérieure à celle du champ « StartDate »?

    D’autres indications ?

    @+
    😎

    #70697
    Nath65
    Participant

    Désolée de ne pas être assez claire…

    Voici la procédure :

    1 – On indique une date dans le champ « StartDate ».
    2 – Le champ « DateLimite » indique la date « StartDate » plus 5 jours. Ce champ doit être modifiable uniquement avec une date postérieure à celle du champ « StartDate »plus 5 jours ?
    3 – Le champ « DateLivraison » indique la même date que « StartDate ». Ce champ doit être modifiable uniquement avec une date postérieure à celle du champ « StartDate »

    J’espère que c’est plus clair…

    #70698
    bebarth
    Maître des clés

    Et ce n’est pas ce que fait le fichier que j’ai posté ?

    Qu’ai-je oublié ?

    @+
    😎

    #70699
    Nath65
    Participant

    Non, dans « dateLimite » on peut mettre la même date que « StartDate » alors qu’on doit conserver d’écart de 5 jours en plus minimum… est-ce faisable ?

    #70700
    bebarth
    Maître des clés

    OK !

    oui c’est faisable, je fait ça plus tard…

    #70701
    bebarth
    Maître des clés

    J’espère que ce coup ci est le bon !

    @+
    😎

    Attachments:
    You must be logged in to view attached files.
    #70703
    Nath65
    Participant

    Super ! Merci beaucoup de votre aide.

    Bonne soirée

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