OVH Cloud OVH Cloud

Acrobat et Java multiplication d'un champ avec un nombre

22 réponses
Avatar
JJacques
Bonjour,
Tout d'abord c'est la première fois que je touche à Java.
En effet j'en ai besoin pour calculer une valeur dans un formulaire PDF
d'acrobat.
Je veux juste multiplier la valeur indiquée d'un un champs( un nombre) par
un un autre nombre définit (par exemple 5).
Il me faut donc traduire celà en java :
champ1=champ0 x 5

voilà c tout.

Voilà mon seul et unique besoin.
Merci pour votre aide

JJacques

10 réponses

1 2 3
Avatar
Alex
Bonjour,

//s'il faut les déclarer :
double champ1;
double champ0;

champ1 = champ0 * 5 ;


ça marche?

Alex

Bonjour,
Tout d'abord c'est la première fois que je touche à Java.
En effet j'en ai besoin pour calculer une valeur dans un formulaire PDF
d'acrobat.
Je veux juste multiplier la valeur indiquée d'un un champs( un nombre) par
un un autre nombre définit (par exemple 5).
Il me faut donc traduire celà en java :
champ1=champ0 x 5

voilà c tout.

Voilà mon seul et unique besoin.
Merci pour votre aide

JJacques




Avatar
JJacques
double champ1;
double champ0;

champ1 = champ0 * 5 ;

Non, marche pas

Syntax error double is a reserved identifier à la igne

"Alex" a écrit dans le message de news:
4332a804$0$29667$
Bonjour,

//s'il faut les déclarer :
double champ1;
double champ0;

champ1 = champ0 * 5 ;


ça marche?

Alex

Bonjour,
Tout d'abord c'est la première fois que je touche à Java.
En effet j'en ai besoin pour calculer une valeur dans un formulaire PDF
d'acrobat.
Je veux juste multiplier la valeur indiquée d'un un champs( un nombre)
par un un autre nombre définit (par exemple 5).
Il me faut donc traduire celà en java :
champ1=champ0 x 5

voilà c tout.

Voilà mon seul et unique besoin.
Merci pour votre aide

JJacques




Avatar
Alex
Bonjour,

Je ne connais pas Acrobat, vos champs sont peut-être déclarés implicitement.
Peut être en essayant :

champ1 = champ0 * 5 ;



double champ1;
double champ0;

champ1 = champ0 * 5 ;

Non, marche pas

Syntax error double is a reserved identifier à la igne

"Alex" a écrit dans le message de news:
4332a804$0$29667$

Bonjour,

//s'il faut les déclarer :
double champ1;
double champ0;

champ1 = champ0 * 5 ;


ça marche?

Alex


Bonjour,
Tout d'abord c'est la première fois que je touche à Java.
En effet j'en ai besoin pour calculer une valeur dans un formulaire PDF
d'acrobat.
Je veux juste multiplier la valeur indiquée d'un un champs( un nombre)
par un un autre nombre définit (par exemple 5).
Il me faut donc traduire celà en java :
champ1=champ0 x 5

voilà c tout.

Voilà mon seul et unique besoin.
Merci pour votre aide

JJacques









Avatar
JJacques
je me dirige vers cette solution

var a;
var b;
var c;
var a = this.getField("champ0");
var b = this.getField("champ1");
c.value=a.value+b.value ;

reste à definir que le champ2 prenne la valeur c.value mais avec quelle
fonction ?
Avatar
Alex
Ah mais c'est du Javascript, ça, pas du Java...

dans ce cas là :

var a;
var b;
var c;
var a = this.getField("champ0");
var b = this.getField("champ1");
var c = this.getField("champ2");
c.value = a.value + b.value ;


Attention à ce que champ2 n'ait pas de champs enfants.




reste à definir que le champ2 prenne la valeur c.value mais avec quelle
fonction ?




var c = this.getField("champ2");


je me dirige vers cette solution

var a;
var b;
var c;
var a = this.getField("champ0");
var b = this.getField("champ1");
c.value=a.value+b.value ;

reste à definir que le champ2 prenne la valeur c.value mais avec quelle
fonction ?




Avatar
JJacques
Désole pour java et javascript et merci de m'avoir dirigé.
On reprennant mon énnoncé de base j'arrive maintenant à finaliser ainsi et
celà marche:
var a;
var b;
var a = this.getField("a");
b=a.value*5 ;
getField("b").value=b;

"Alex" a écrit dans le message de news:
4332c1d0$0$29676$
Ah mais c'est du Javascript, ça, pas du Java...

dans ce cas là :

var a;
var b;
var c;
var a = this.getField("champ0");
var b = this.getField("champ1");
var c = this.getField("champ2");
c.value = a.value + b.value ;


Attention à ce que champ2 n'ait pas de champs enfants.




reste à definir que le champ2 prenne la valeur c.value mais avec quelle
fonction ?




var c = this.getField("champ2");


je me dirige vers cette solution

var a;
var b;
var c;
var a = this.getField("champ0");
var b = this.getField("champ1");
c.value=a.value+b.value ;

reste à definir que le champ2 prenne la valeur c.value mais avec quelle
fonction ?





Avatar
JJacques
Bon, maintenant que j'ai mis les pied dans "javascript" je vais essayer de
continuer.

mon pdf est donc rempli de champs de c1 à c10 et de R1 à R10
J'ai au total 10 scripts pour calculer la valeur de mes 10 champs R1 à R10
Existe t il au autre moyen, genre tableau pour stocker les valeurs à
l'infini ?

Merci
JJacques
Avatar
alexandre cartapanis
Bonjour,
Tout d'abord c'est la première fois que je touche à Java.
En effet j'en ai besoin pour calculer une valeur dans un formulaire PDF
d'acrobat.
Je veux juste multiplier la valeur indiquée d'un un champs( un nombre) par
un un autre nombre définit (par exemple 5).
Il me faut donc traduire celà en java :
champ1=champ0 x 5

voilà c tout.

Voilà mon seul et unique besoin.
Merci pour votre aide

JJacques




C'est pas plutot du javascript qu'il te faut? parce que je ne crois pas
que les documents PDF integre une machine virtuelle Java...

Avatar
Alex
Si effectivement vos champs sont nommés de cette façon, vous n'avez même
pas besoin d'un tableau :

for (i=1; i<11; i++){
this.getField("R" + i).value = this.getField("c" + i).value * 5;
}


Si vos noms sont plus aléatoires, vous pouvez définir des tableau de
cette façon :
var champsc = new Array("c1", "c2", "champc2", "champc3");
var champsR = new Array("R1", "R2", "R3", "R4");

var i=0;
for (i=0; i<champsc.length, i++){
this.getField(champsR[i]).value = this.getField(champsc[i]).value * 5;
}

Pour cette méthode, assurez vous que que les deux tableaux aient la même
taille.



Bon, maintenant que j'ai mis les pied dans "javascript" je vais essayer de
continuer.

mon pdf est donc rempli de champs de c1 à c10 et de R1 à R10
J'ai au total 10 scripts pour calculer la valeur de mes 10 champs R1 à R10
Existe t il au autre moyen, genre tableau pour stocker les valeurs à
l'infini ?

Merci
JJacques




Avatar
JJacques
Super, bien vu c'est top.
J'ai essaié d'inserer une autre ligne pour changer le multipliant, car au
lieu de faire *5, j'aurais aimé dans le même script inscrire les différentes
valeurs.
Par exemple:
r1Á*5 (ok, ça ca marche)
r2Â*2
r3Ã*9 etc...

Je cherche donc a faire un truc du genre i=1 to <11 mais qu'il n'incremente
pas ma multiplication par 1 mais par le nombre suivant correspondant ) ma
série, par ex: (5,2,9,8,12,45,36,102,1,47...)
Je dois donc stoker ces valeurs qq part non ?.

Merci en tout cas, ça me plait bcp.

JJacques

"Alex" a écrit dans le message de news:
4333afb3$0$19170$
Si effectivement vos champs sont nommés de cette façon, vous n'avez même
pas besoin d'un tableau :

for (i=1; i<11; i++){
this.getField("R" + i).value = this.getField("c" + i).value * 5;
}


Si vos noms sont plus aléatoires, vous pouvez définir des tableau de cette
façon :
var champsc = new Array("c1", "c2", "champc2", "champc3");
var champsR = new Array("R1", "R2", "R3", "R4");

var i=0;
for (i=0; i<champsc.length, i++){
this.getField(champsR[i]).value = this.getField(champsc[i]).value * 5;
}

Pour cette méthode, assurez vous que que les deux tableaux aient la même
taille.



Bon, maintenant que j'ai mis les pied dans "javascript" je vais essayer
de continuer.

mon pdf est donc rempli de champs de c1 à c10 et de R1 à R10
J'ai au total 10 scripts pour calculer la valeur de mes 10 champs R1 à
R10
Existe t il au autre moyen, genre tableau pour stocker les valeurs à
l'infini ?

Merci
JJacques




1 2 3