2017-03-22 1 views
0

Je suis très novice dans les scripts JS et l'écriture de scripts. En ce moment, je crée un formulaire en Acrobat et je calcule 5 champs, dont le résultat sera la valeur d'un autre champ. Je ne sais rien sur l'écriture des instructions if/else, mais je pense que c'est ce dont j'ai besoin pour que le script fonctionne correctement, car la valeur totalisée n'apparaît (et fonctionne bien) que si toutes les autres valeurs sont entrées. Mais tous ne seront pas toujours entrés (parfois v1, v2 & v3 ne sera pas entré du tout), donc j'ai besoin de quelque chose qui permettra au script/valeur de fonctionner même si une ou plusieurs de ces valeurs ne sont pas présent. Ce que j'ai droit est maintenant:Déclarations manquantes pour le script JS court pour le formulaire PDF

(function() { 
 

 
var v1 = +getField("Charges1").value; 
 

 
    var v2 = +getField("Charges2").value; 
 

 
    var v3 = +getField("Charges3").value; 
 

 
    var v4 = +getField("NetWeight").value; 
 

 
    var v5 = +getField("MRMRate").value; 
 

 
    event.value = (v4 * v5) * (v1 + v2 + v3); 
 
    
 
})();

Toute aide tout serait appréciée - merci!

Répondre

1

Vous n'avez pas besoin d'une définition de fonction pour cela, si vous placez le script dans l'événement Calculate du champ contenant le résultat.

Ce code devrait fonctionner (à moins, voir ci-dessous)

var v1 = this.getField("Charges1").value; 
var v2 = this.getField("Charges2").value; 
var v3 = this.getField("Charges3").value; 
var v4 = this.getField("NetWeight").value; 
var v5 = this.getField("MRMRate").value; 
event.value = (v4 * v5) * (v1*1 + v2*1 + v3*1); 

Cela devrait afficher une valeur, même si elle est juste 0. Il ne peut pas afficher quoi que ce soit si le champ de résultat est formaté pour rien afficher si son la valeur est 0 (vérifiez l'onglet Format dans les propriétés du champ à ce sujet).

+0

Salut Max - cela totalise tout correctement. Le seul problème est qu'il ne les totalise pas à moins que tous les champs aient une valeur, ce qui est le problème que j'essaie de résoudre avec le script. Je suis fondamentalement à la recherche d'une solution qui calcule séparément les Charges 1-3 et NetWeight & MRM Rate, indépendamment de l'autre, tout en ayant ces totaux dans le champ Total. J'ai essayé de télécharger une capture d'écran pour aider à clarifier la forme ici, mais pour avoir une sorte de problème avec le téléchargeur. – alxmntrvl

+0

Vous pouvez définir une autre variable et l'affecter à la somme des champs de frais. Gardez également à l'esprit que vous obtiendrez uniquement un résultat différent de zéro lorsque Netweight, MFMRate et l'un des champs Charges ont une valeur différente de zéro. –