Cumul d'heures de déplacement journalier et hebdomadaire. -  (Lu 3175 fois) Partager ce sujet Imprimer

1 B


spldim  17 février 2013 : 20:24

Bonsoir à tous,

Faisant suite à la création de mon document (toujours en cours d'élaboration, cumul d'heures de travail), j'ai trouvé sur le net un script complet et opérationnel "Simpletimesheet.pdf" mais je souhaiterai multiplier certains champs afin de les ajuster à mon formulaire.

J'ai donc tenté de copier (sans conviction) les champs manquants résultat duplication x 4 : même résultat avec le menu "placer plusieurs champs". Bref si un technicien ès-javascript aurais pu jeter un petit coup sur le PDF, j'en serai très reconnaissant.

Merci.
Jacques
Acrobat X

IP archivée


jsamica  18 février 2013 : 09:26

Bonjour Jacques,
Tu as effectivement copié tous les champs de ton modèle.
Jusque là ok, il faut cependant les renommer, étant nommer tous pareil lorsque tu en rentres une valeur dans un, la valeur se répète sur tous les champs portant le même nom.

J'espère t'avoir aidé
Bonne continuation
 :Smiley03:

IP archivée


spldim  18 février 2013 : 18:19

Bonsoir à tous , merci pour ta réponse Jsamica.
J'ai volontairement laisser le copier-coller tel quel afin de visualiser le problème qui vient du script original car il ne prend que les cinq ou six premiers champs originaux dans le calcul final même après renommage de mes nouveaux champs.
Donc je souhaiterai savoir où je doit effectuer les modifications (noms des champs(facile) puis script  :mur:   pour obtenir le décompte journalier puis le décompte hebdomadaire).
Il me semble qu'il y est quatre scripts au niveau document et un au niveau de chaque décompte.
A chaque fois que j'ai renommer et/ou dupliquer et/ou copier-coller plus de calcul final.....  :doute:

Au plaisir Jacques.

IP archivée


Merlin  18 février 2013 : 18:43

Salut,

Il ne faut pas modifier les scripts de documents.
Les seuls script à modifier se trouvent dans l'onglet "Calcul" de chaque champ de résultat.
Par exemple pour la 1re rangée :

event.value = '';
// get the start time
var sStart = this.getField('TimeIn.0').value;
// get the end time
var sEnd = this.getField('TimeOut.0').value;
// complete script if we have data
if(sStart != '' & sEnd != '') {
// convert sStart string to seconds
var fStart = Time2Num('hh:mm', sStart);
// convert sEnd string to seconds
var fEnd = Time2Num('hh:mm', sEnd);
// convert sEnd string to seconds
var fEnd = Time2Num('hh:mm', sEnd);
// compute difference in seconds
var fDiff = fEnd - fStart;
// convert to rounded minutes
fDiff = Math.round(fDiff / 60);
// get hours from fDiff
fHours = Math.floor(fDiff / 60);
// get minutes less than hour from fDiff
fMins = ((fDiff / 60) - fHours ) * 60;
// format fMins with leading zero
sMins = util.printf("%,302.0f", fMins);
// build display string
event.value = fHours + ':' + sMins;
}


La seule chose à y modifier ce sont les numéros de champs qui correspondent à chaque rangée (en bleu ci-dessus).


D'autre part, pour effectuer des calculs sur deux demi-journées le plus simple est d'utiliser des champs de résultats masqués (invisible)  pour chaque 1/2 journée et de les additionner au final.

 :Smiley15:

IP archivée


GERYGOLPA  18 septembre 2020 : 07:26

Bonjour,je relance cette discussion car je ne m'en sors pas, après avoir trouvé se script sur le forum, aucun résultat sur le Champ "Temps1"
J'ai besoin d'aide, une âme charitable SVP

LE SCRIPT APPLIQUE DANS CALCUL SUR LE CHAMPS Temps1:
event.value = '';
// get the start time
var sStart = this.getField('Heured1').value;
// get the end time
var sEnd = this.getField('Heuref1').value;
// complete script if we have data
if(sStart != '' & sEnd != '') {
// convert sStart string to seconds
var fStart = Time2Num('hh:mm', sStart);
// convert sEnd string to seconds
var fEnd = Time2Num('hh:mm', sEnd);
// compute difference in seconds
var fDiff = fEnd - fStart;
// convert to rounded minutes
fDiff = Math.round(fDiff / 60);
// get hours from fDiff
fHours = Math.floor(fDiff / 60);
// get minutes less than hour from fDiff
fMins = ((fDiff / 60) - fHours ) * 60;
// format fMins with leading zero
sMins = util.printf("%,302.0f", fMins);
// build display string
event.value = fHours + ':' + sMins;
}

Merci d'avance

IP archivée


Merlin  18 septembre 2020 : 08:52

Bonjour

Sans autre précision et sans le document il est très difficile de t'aider.

IP archivée


bebarth  18 septembre 2020 : 09:01

bonjour,
Il y a un script de document "Time2Num" pour que ce script fonctionne.
L'as-tu intégré ?
Regarde cette discussion :
http://abracadabrapdf.net/forum/index.php/topic,3092.msg17968.html#msg17968
@+
 :bonjour:

IP archivée


GERYGOLPA  18 septembre 2020 : 12:14

Merci pour votre réponsenon pas d'integratoion de script de document
Quel est ce script ?Comment puis je l'intégré je suis débutant ?



IP archivée


GERYGOLPA  18 septembre 2020 : 12:32

C'est merci
j'ai trouvé, une fois Time2Num ajouté tout fonctionne

Merci a toi

IP archivée


bebarth  18 septembre 2020 : 15:41

Maintenant tu sais où trouver les scripts de document !  :extra:
@+
 :bonjour:

IP archivée


Merlin  19 septembre 2020 : 15:07


IP archivée