abracadabraPDF › Forums › PDF – Général › Calcul filetages › Répondre à : Calcul filetages

Je te propose ce script valable (sauf erreur) pour toutes tes formes d’écritures.
Si tu as un fichier terminé avec tous les différents filetages, Je te conseille de mettre ce script en fonction et de l’appeler par tous les menus déroulants.
if (!event.willCommit) {
for (var i=0; i<event.target.numItems; i++) {
if (event.changeEx==event.target.getItemAt(i,true)) break;
}
var lesValeurs=event.target.getItemAt(i,false);
//
var filetageRegEx=/^M[ ]*(\d{1,2})[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
if (filetageRegEx.test(lesValeurs)) {
var visPas=lesValeurs.replace(filetageRegEx,"$1-$2".replace(/,/g,"."));
var vis=visPas.split("-")[0];
var pas=visPas.split("-")[1];
} else {
var filetageRegEx=/^(W|(BSF)|G|(PG)|(NPT))[ ]*(\d?["]?[ ]*(\d[/]\d+)?)[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
if (filetageRegEx.test(lesValeurs)) {
var visPas=lesValeurs.replace(filetageRegEx,"$5-$7".replace(/,/g,"."));
var laVis=visPas.split("-")[0].split(/[ "]/);
if (laVis.length==1) {
var vis=(Number(laVis[0].split("/")[0])/Number(laVis[0].split("/")[1]))*25.4;
} else {
var vis=(Number(laVis[0])+(Number(laVis[1].split("/")[0])/Number(laVis[1].split("/")[1])))*25.4;
}
var pas=visPas.split("-")[1];
} else {
var filetageRegEx=/^UN(C|F)[ ]*(\d?["]?[ ]*(\d[/]\d+)?)[ ]*-[ ]*(\d{1,2})[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
if (filetageRegEx.test(lesValeurs)) {
var visPas=lesValeurs.replace(filetageRegEx,"$2-$4-$5".replace(/,/g,"."));
var laVis=visPas.split("-")[0].split(/[ "]/);
if (Number(visPas.split("-")[1])>=28 && /[^"]/.test(lesValeurs) && Number(visPas.split("-")[0])<=12) {
var UN=[1.524,1.854,2.184,2.515,2.845,3.175,3.505,"-",4.166,"-",4.826,"-",5.486];
var vis=UN[Number(visPas.split("-")[0])];
} else if (laVis.length==1) {
var vis=(Number(laVis[0].split("/")[0])/Number(laVis[0].split("/")[1]))*25.4;
} else {
var vis=(Number(laVis[0])+(Number(laVis[1].split("/")[0])/Number(laVis[1].split("/")[1])))*25.4;
}
var pas=visPas.split("-")[2];
} else app.alert("Filetage incorrect",3);
}
}
try {
console.println("vis : "+vis);
console.println("pas : "+pas);
this.getField("Text5").value=vis;
this.getField("Text6").value=pas;
} catch(e) {
app.alert("Filetage incorrect",3);
}
}
@+
😎
-
Cette réponse a été modifiée le il y a 3 semaines et 5 jours par
bebarth.