abracadabraPDF › Forums › PDF – Général › Calcul filetages
- Ce sujet contient 34 réponses, 4 participants et a été mis à jour pour la dernière fois par
homer, le il y a 22 heures et 29 minutes.
-
CréateurSujet
-
17 mars 2025 à 08:52 #75699
homer
ParticipantBonjour,
J’aimerai créer une double valeurs a partir de la casse “Filtageperçagesimple” une le Pas (text5) et l’autre par exemple M1 une valeur de 1 (text6) comme cela depuis la cellule “Filtageperçagesimple” et ainsi faire les calculs pour chaque filetage,
Merci a vous
Cordialement et bonne journée
Attachments:
You must be logged in to view attached files. -
CréateurSujet
-
AuteurRéponses
-
17 mars 2025 à 12:30 #75701
bebarth
Maître des clésbonjour,
Je te propose un script de touches personnalisé :
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).split(" - Pas ");
this.getField("Text5").value=lesValeurs[0];
this.getField("Text6").value=lesValeurs[1];
}
@+
😎Attachments:
You must be logged in to view attached files.17 mars 2025 à 13:26 #75704michel c.
ParticipantChez moi ça ne fonctionne pas, ça affichait la valeur précédemment sélectionnée dans le tableau.
J’ai fait une petite modif en ajoutant un bouton valider sous la liste déroulant (j’ai également remplacé le “ç” de perçage par un “c” dans le nom de champ).
Sinon, tu compte faire évoluer le formulaire pour que ça calcule les différents diamètres, hauteur de filet… ?
-
Cette réponse a été modifiée le il y a 1 semaine et 1 jour par
michel c..
Attachments:
You must be logged in to view attached files.17 mars 2025 à 14:21 #75708homer
ParticipantBonjour à tous,
Oui mais je n’ai trouvé que les formules pour le pas métrique pour l’instant (je cherche les autres, a moins que cela fonction sur d’autre filetage ? Mais pas le pas GAZ vu qu’il est conique ainsi qu’un autre) , je vous joins l’autre page deja faite ou j’ai répertorié d’autre pas et perçage
En tout un grand merci Bebarth et Michel !
Cordialement
17 mars 2025 à 14:58 #75709bebarth
Maître des clésça affichait la valeur précédemment sélectionnée dans le tableau
Le premier fichier que j’ai partagé n’était pas le bon… mais le script est correct.
J’ai maintenant remplacé le fichier. Ça évite d’avoir un bouton !@+
😎17 mars 2025 à 15:08 #75710bebarth
Maître des clésOui mais je n’ai trouvé que les formules pour le pas métrique pour l’instant (je cherche les autres, a moins que cela fonction sur d’autre filetage ?
Dire que j’avais tout ça et que je m’en suis séparé il n’y a pas très longtemps…
@+
😎17 mars 2025 à 16:03 #75712homer
ParticipantRe 🙂
Voila ca me donne cela, reste a trouver les autres !
Merci
Attachments:
You must be logged in to view attached files.17 mars 2025 à 21:13 #75714bebarth
Maître des clés…reste a trouver les autres !
On doit bien trouver les formules sur internet !
@+
😎https://www.h7g6.fr/data/article/37/memento-des-types-filetages (Par exemple – A vérifier).
18 mars 2025 à 15:01 #75726homer
ParticipantBonjour,
Par contre pour les normes suivantes pas : métrique fin, GAZ … je regarde de meilleur dessin, et j’ai essayé de le script en GAZ mais cela bloque ou ? c’est en page 3 il y a un beug !!! la page 2 ne fonctionne plus
Je suis conscient qu’il faut que je complète vu que je n’ai pas enregistré les PAS
Merci et bonne journée
Cordialement
-
Cette réponse a été modifiée le il y a 1 semaine par
homer.
-
Cette réponse a été modifiée le il y a 1 semaine par
homer.
Attachments:
You must be logged in to view attached files.18 mars 2025 à 18:32 #75730bebarth
Maître des clésbonjour,
Ça a l’air de fonctionner !@+
😎19 mars 2025 à 12:30 #75732homer
ParticipantSalut,
Oui cela fonctionne pour les pas métriques mais je rencontre un nouveau problème pour les pouces 3/8 ou 1 1/4 par exemple je fais comment pour les transformer en mm ?
Merci d’avance
Bonne journée
Cordialement
-
Cette réponse a été modifiée le il y a 6 jours et 22 heures par
homer.
-
Cette réponse a été modifiée le il y a 6 jours et 19 heures par
homer.
Attachments:
You must be logged in to view attached files.19 mars 2025 à 14:57 #75735bebarth
Maître des clésbonjour,
Pour passer de pouces à millimètres il faut multiplier par 25,4.
Exemple 5/8″ = 5*25.4/8 = 15.875 mm@+
😎PS : Je n’avais pas vu sur ton fichier : 1″1/4 = 1.25″ = 1.25*25.4 = 31.75 mm
-
Cette réponse a été modifiée le il y a 6 jours et 19 heures par
bebarth.
19 mars 2025 à 15:14 #75740homer
ParticipantBonjour,
Oui x 25.4 mais avec ma celulle ou j’ai ecris : G 1/16 – Pas 0.907 comment je fais
Idem avec : W 1/16 – Pas 0.423
BSF 3/16 – Pas 0.79Cela est ce possible ?
Ordre du PDF :
Page-1.pdf
Page-2-fini.pdf
Pouce-en-mm-1.pdf (en cours)Cordialement
-
Cette réponse a été modifiée le il y a 6 jours et 19 heures par
homer.
-
Cette réponse a été modifiée le il y a 6 jours et 19 heures par
homer.
Attachments:
You must be logged in to view attached files.20 mars 2025 à 00:23 #75751bebarth
Maître des clésJe 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 4 jours par
bebarth.
20 mars 2025 à 08:03 #75752homer
ParticipantSalut Bebarth,
Merci a toi encore ! Mais est ce bien dans l’onglet “Format” et la 2eme casse ? car le Pas est bon, mais le diamètre ne correspond pas, ou je dois mètre le script ?
Et faut il que j’enlève ( ” ) pour les valeurs 1″ 2″ …. car j’ai un beug pour c’est valeurs ?
Car par exemple 2″ j’ai la mention “Nan” et je peux pas le leurrer par 2/2, 1″ ca passe mais les Pas sont bon !
Merci 🙂
Bonne journée
-
Cette réponse a été modifiée le il y a 6 jours et 2 heures par
homer.
-
Cette réponse a été modifiée le il y a 6 jours et 2 heures par
homer.
-
Cette réponse a été modifiée le il y a 6 jours par
homer.
Attachments:
You must be logged in to view attached files.20 mars 2025 à 14:14 #75758bebarth
Maître des clés<p style=”text-align: left;”>bonjour,
J’ai fait une petite modification du script :
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("\""," ").replace(/[ ]+/g," ").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 {
if (laVis[1]) var vis=(Number(laVis[0])+(Number(laVis[1].split("/")[0])/Number(laVis[1].split("/")[1])))*25.4;
else var vis=Number(laVis[0])*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("\""," ").replace(/[ ]+/g," ").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);
}
}
</p>
@+
😎-
Cette réponse a été modifiée le il y a 4 jours par
bebarth.
Attachments:
You must be logged in to view attached files.20 mars 2025 à 15:50 #75760homer
ParticipantBonjour Bebarth,
Merci deja pour le temps passé dessus,
Mais la ma question est pourquoi j’ai 3.18 au lieu de 26.441 quand je regèle sur :
G 3/4 – Pas 1.814 :
– Pas nikel 1.814
– Perçage nickel 24.5
– le diamètre lui indique 3.18 au lieu de 26.441 ?Ccomme sur l’exemple 2, je ne comprend pas a quoi corresponds cette cote dans le rectangle ?
La je ne comprend pas quand je regarde le tableau, les 3.18 correspond a quoi ?
Merci en tout cas !
https://www.h7g6.fr/data/article/42/dimensions-des-filetages-gaz-bsp
Bonne journée 🙂
-
Cette réponse a été modifiée le il y a 5 jours et 18 heures par
homer.
Attachments:
You must be logged in to view attached files.20 mars 2025 à 16:14 #75765bebarth
Maître des clésComme indiqué sur la page “la lettre G suivi de la taille (qui, pour rappel, n’a aucun rapport avec le diamètre)“.
Il me semble que pour le gaz la taille indiquée correspond au diamètre intérieur du tube, alors que le diamètre correspondant est son diamètre extérieur.
Il faudra donc utiliser une table pour indiquer ces diamètres car le rapport intérieur/extérieur n’est pas constant. Je regarde plus tard…@+
😎-
Cette réponse a été modifiée le il y a 5 jours et 18 heures par
bebarth.
-
Cette réponse a été modifiée le il y a 5 jours et 16 heures par
bebarth.
Attachments:
You must be logged in to view attached files.21 mars 2025 à 08:52 #75769bebarth
Maître des clésbonjour,
Voici un nouveau script ou les diamètres pour les filetages gaz sont indiqués dans une table.
Pour info, j’ai retiré de ta liste le modèle 1″3/8 qui n’existe pas et que je prenais en exemple… ce qui m’a perturbé un moment car bien entendu il n’était pas dans la table !
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 vis="";
var pas="";
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)|(PG)|(NPT))[ ]*(\d?["]?[ ]*(\d[/]\d+)?)[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
if (filetageRegEx.test(lesValeurs)) {
var visPas=lesValeurs.replace("\""," ").replace(/[ ]+/g," ").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 {
if (laVis[1]) var vis=(Number(laVis[0])+(Number(laVis[1].split("/")[0])/Number(laVis[1].split("/")[1])))*25.4;
else var vis=Number(laVis[0])*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("\""," ").replace(/[ ]+/g," ").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 {
var filetageRegEx=/^G[ ]*(\d?["]?[ ]*(\d[/]\d+)?)[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
if (filetageRegEx.test(lesValeurs)) {
var visPas=lesValeurs.replace("\""," ").replace(/[ ]+/g," ").replace(filetageRegEx,"$1-$3".replace(/,/g,"."));
var laVis=visPas.split("-")[0].split(/[ ]/);
var filetageGaz=[["1/16",7.723],["1/8",9.728],["1/4",13.157],["3/8",16.662],["1/2",20.955],["5/8",22.911],["3/4",26.441],["7/8",30.201],["1",33.249],["1 1/8",37.897],["1 1/4",41.91],["1 1/2",47.803],["1 3/4",53.746],["2",59.614],["2 1/4",65.71],["2 1/2",75.184],["2 3/4",81.534],["3",87.884],["3 1/2",100.33],["4",125.73],["4 1/2",125.73],["5",138.43],["5 1/2",151.13],["6",163.83]];
if (laVis.length>1 && laVis[1]) var filetage=laVis[0]+" "+laVis[1];
else var filetage=laVis[0];
for (var j=0; j<filetageGaz.length; j++) {
if (filetageGaz[j][0]==filetage) {
var vis=filetageGaz[j][1];
break;
}
}
if (j==filetageGaz.length) app.alert("Filetage incorrect",3);
else var pas=visPas.split("-")[1];
} 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);
}
}
Attention, le dernier élément de la table filetageGaz doit être [“6”,163.83] (avec un point).
@+
😎-
Cette réponse a été modifiée le il y a 4 jours par
bebarth.
Attachments:
You must be logged in to view attached files.21 mars 2025 à 10:00 #75773homer
ParticipantBonjour Bebarth,
Ca tue ! merci ! Waouh !
J’ai juste a changer les valeurs pour PG et NPT pour que cela passe ? (FiletageGAZ par FiletageNPT, … et les valeur numerique des Pas et Diametre ?)
Et juste pour savoir, c’est normal que l’exportation de valeurs perçage ne se fait plus ? je me dis que c’est normal vu le script
Bonne journée
Cordialement
-
Cette réponse a été modifiée le il y a 4 jours et 22 heures par
homer.
-
Cette réponse a été modifiée le il y a 4 jours et 22 heures par
homer.
Attachments:
You must be logged in to view attached files.21 mars 2025 à 13:51 #75778homer
ParticipantRE …
Cette ligne correspond a quoi ? : var UN=[1.524,1.854,2.184,2.515,2.845,3.175,3.505,”-“,4.166,”-“,4.826,”-“,5,486];
J’ai voulu modifier le script car j’ai vu ou etait les diametres, je les mis mais le script sonne, je ne vois pas l’erreur
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 vis=””;
var pas=””;
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(/,/w,”.”));
var vis=visPas.split(“-“)[0];
var pas=visPas.split(“-“)[1];
} else {
var filetageRegEx=/^(W|(BSF)|(PG)|(NPT))[ ]*(\d?[“]?[ ]*(\d[/]\d+)?)[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
if (filetageRegEx.test(lesValeurs)) {
var visPas=lesValeurs.replace(“\””,” “).replace(/[ ]+/g,” “).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 {
if (laVis[1]) var vis=(Number(laVis[0])+(Number(laVis[1].split(“/”)[0])/Number(laVis[1].split(“/”)[1])))*25.4;
else var vis=Number(laVis[0])*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(“\””,” “).replace(/[ ]+/g,” “).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 {
var filetageRegEx=/^G[ ]*(\d?[“]?[ ]*(\d[/]\d+)?)[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
if (filetageRegEx.test(lesValeurs)) {
var visPas=lesValeurs.replace(“\””,” “).replace(/[ ]+/g,” “).replace(filetageRegEx,”$1-$3″.replace(/,/g,”.”));
var laVis=visPas.split(“-“)[0].split(/[ ]/);
var filetageBSW=[[“1/16”,1.588],[“3/32”,2.381],[“1/8”,3.175],[“5/32”,3.969],[“3/16”,4.763],[“7/32”,5.556],[“1/4”,6.35],[“5/16”,7.938],[“3/8”,9.525],[“7/16”,11.113],[“1/2”,12.7],[“9/16”,26.14.288,[“5/8”,15.875],[“3/4”,19.05],[“7/8”,22.25],[“1”,25.4],[“1 1/8”,28.575],[“1 1/4”,31.75],[“1 3/8”,34.925],[“1 1/2”,38.1],[“1 5/8”,41.275],[“1 3/4”,44.45],[“1 7/8”,47.625],[“2”,50.8],[“2 1/4”,57.15],[“2 1/2”,63.5],[“2 3/4”,69.85],[“3”,76.2],[“3 1/4”,82.55],[“3 1/2”,88.9],[“3 3/4”,92.25],[“4”,101.6],[“4 1/4”,107.95],[“4 1/2”,114.3],[“4 3/4”,120.65],[“5”,127],[“4 1/4”,133.35],[“5 1/2”,151.13],[“5 3/4”,146.05],[“6″,152.4]];
if (laVis.length>1 && laVis[1]) var filetage=laVis[0]+” “+laVis[1];
else var filetage=laVis[0];
for (var j=0; j<filetageBSW.length; j++) {
if (filetageBSW[j][0]==filetage) {
var vis=filetageBSW[j][1];
break;
}
}
if (j==filetageBSW.length) app.alert(“Filetage incorrect”,3);
else var pas=visPas.split(“-“)[1];
} 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);
}
}Cordialement
-
Cette réponse a été modifiée le il y a 4 jours et 20 heures par
homer.
-
Cette réponse a été modifiée le il y a 4 jours et 20 heures par
homer.
Attachments:
You must be logged in to view attached files.21 mars 2025 à 20:47 #75784bebarth
Maître des clésEt juste pour savoir, c’est normal que l’exportation de valeurs perçage ne se fait plus ?
Il faut cocher la case du menu déroulant “Valider la valeur sélectionnée immédiatement”.
@+
😎Attachments:
You must be logged in to view attached files.21 mars 2025 à 20:55 #75787bebarth
Maître des clésCette ligne correspond a quoi ? : var UN=[1.524,1.854,2.184,2.515,2.845,3.175,3.505,”-“,4.166,”-“,4.826,”-“,5,486];
Cette ligne est une table de correspondance des petites vis UNC/UNF dont le numéro de 0 à 12 n’indique pas le diamètre.
Attention, le dernier élément de la table doit être 5.486 (avec un point).
@+
😎Attachments:
You must be logged in to view attached files.21 mars 2025 à 20:57 #75790bebarth
Maître des clésJ’ai voulu modifier le script car j’ai vu ou etait les diametres, je les mis mais le script sonne, je ne vois pas l’erreur
Je regarderai lundi car ce ne sera pas possible ce weekend !
Quelles sont les lignes modifiées ? Ça m’évitera de chercher trop longtemps…
@+
😎-
Cette réponse a été modifiée le il y a 4 jours et 13 heures par
bebarth.
22 mars 2025 à 19:31 #75796homer
ParticipantSalut Bebarth,
Voila ce que j’ai fait grâce a toi !
https://www.grosfichiers.com/juz6yw9MdQR
en tout cas un grand merci et pour tes explication et surtout ton aide !
Passez un bon week end et semaine
Cordialement
23 mars 2025 à 16:53 #75797homer
ParticipantRe,
la page PG Beug, pourquoi aucune idée §
Toutes les autre page fonctionne,
https://www.grosfichiers.com/Wq4DzHuz7aE
Cordialement
Attachments:
You must be logged in to view attached files.24 mars 2025 à 07:54 #75803homer
ParticipantBonjour
- La page PG Beug, pourquoi aucune idée ? Il y a que les deux premières lignes qui fonctionne dans le menu déroulant
- Et sur une page que j’ai recréé “UNEF” il y a 2 valeurs que je ne sais pas entrer ( 1.11/16-18 Pas 1,720 Perage 44,45 — 2″-18 Pas 1,971 Perçage 50.8)
Toutes les autre page fonctionne sinon,
https://www.grosfichiers.com/Wq4DzHuz7aE
Cordialement
-
Cette réponse a été modifiée le il y a 2 jours et 2 heures par
homer.
-
Cette réponse a été modifiée le il y a 2 jours et 2 heures par
homer.
-
Cette réponse a été modifiée le il y a 2 jours et 2 heures par
homer.
-
Cette réponse a été modifiée le il y a 2 jours et 1 heure par
homer.
-
Cette réponse a été modifiée le il y a 2 jours et 1 heure par
homer.
Attachments:
You must be logged in to view attached files.24 mars 2025 à 12:17 #75812bebarth
Maître des clésbonjour,
la page PG Beug, pourquoi aucune idée §
Tout le monde aura remarqué (lol) qu’avec cette expression régulière :
var filetageRegEx=/^(W|(BSF)|(PG)|(NPT))[ ]*(\d?["]?[ ]*(\d[/]\d+)?)[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
il n’est possible d’indiquer qu’un seul chiffre pour le diamètre. pour qu’il soit possible d’en indiquer 2, il faut écrire :
var filetageRegEx=/^(W|(BSF)|(PG)|(NPT))[ ]*(\d{1,2}["]?[ ]*(\d[/]\d+)?)[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
et comme je viens de m’apercevoir de la possibilité d’une décimale, l’expression régulière devient :
var filetageRegEx=/^(W|(BSF)|(PG)|(NPT))[ ]*(\d{1,2}[.]?\d?["]?[ ]*(\d[/]\d+)?)[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
Dans mon fichier de retour j’ai mis en fonction une parie du script ce qui permet de ne l’écrire qu’une seule fois dans le fichier et juste d’appeler cette fonction avec le menu déroulant.
// Script de document
function filetages() {
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 vis="";
var pas="";
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)|(PG)|(NPT))[ ]*(\d{1,2}[.]?\d?["]?[ ]*(\d[/]\d+)?)[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
if (filetageRegEx.test(lesValeurs)) {
var visPas=lesValeurs.replace("\""," ").replace(/[ ]+/g," ").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 {
if (laVis[1]) var vis=(Number(laVis[0])+(Number(laVis[1].split("/")[0])/Number(laVis[1].split("/")[1])))*25.4;
else var vis=Number(laVis[0])*25.4;
}
var pas=visPas.split("-")[1];
} else {
var filetageRegEx=/^UN(C|F)[ ]*(\d{1,2}["]?[ ]*(\d[/]\d+)?)[ ]*-[ ]*(\d{1,2})[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
if (filetageRegEx.test(lesValeurs)) {
var visPas=lesValeurs.replace("\""," ").replace(/[ ]+/g," ").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 {
var filetageRegEx=/^G[ ]*(\d{1,2}["]?[ ]*(\d[/]\d+)?)[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
if (filetageRegEx.test(lesValeurs)) {
var visPas=lesValeurs.replace("\""," ").replace(/[ ]+/g," ").replace(filetageRegEx,"$1-$3".replace(/,/g,"."));
var laVis=visPas.split("-")[0].split(/[ ]/);
var filetageGaz=[["1/16",7.723],["1/8",9.728],["1/4",13.157],["3/8",16.662],["1/2",20.955],["5/8",22.911],["3/4",26.441],["7/8",30.201],["1",33.249],["1 1/8",37.897],["1 1/4",41.91],["1 1/2",47.803],["1 3/4",53.746],["2",59.614],["2 1/4",65.71],["2 1/2",75.184],["2 3/4",81.534],["3",87.884],["3 1/2",100.33],["4",125.73],["4 1/2",125.73],["5",138.43],["5 1/2",151.13],["6",163,83]];
if (laVis.length>1 && laVis[1]) var filetage=laVis[0]+" "+laVis[1];
else var filetage=laVis[0];
for (var j=0; j<filetageGaz.length; j++) {
if (filetageGaz[j][0]==filetage) {
var vis=filetageGaz[j][1];
break;
}
}
if (j==filetageGaz.length) app.alert("Filetage incorrect",3);
else var pas=visPas.split("-")[1];
} else app.alert("Filetage incorrect",3);
}
}
}
return [vis, pas]
}
// Script de touches personnalisé
if (!event.willCommit) {
var visETpas=filetages();
try {
/*
console.println("vis : "+vis);
console.println("pas : "+pas);
this.getField("Text5").value=vis;
this.getField("Text6").value=pas;
*/
this.getField("FiltagePGR").value=visETpas[0];
this.getField("PasPGconv").value=visETpas[1];
} catch(e) {
app.alert("Filetage incorrect",3);
}
}
@+
😎Attachments:
You must be logged in to view attached files.24 mars 2025 à 12:34 #75814bebarth
Maître des clésEt sur une page que j’ai recréé “UNEF”
Il ne faut pas écrire :
var filetageRegEx=/^UN(C|EF)[ ]*(\d?["]?[ ]*(\d[/]\d+)?)[ ]*-[ ]*(\d{1,2})[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
mais
var filetageRegEx=/^UNE?(C|F)[ ]*(\d?["]?[ ]*(\d[/]\d+)?)[ ]*-[ ]*(\d{1,2})[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
@+
😎24 mars 2025 à 14:51 #75817bebarth
Maître des clésil y a 2 valeurs que je ne sais pas entrer ( 1.11/16-18 Pas 1,720 Perage 44,45 — 2″-18 Pas 1,971 Perçage 50.8)
C’est compliqué de modifier toujours l’énoncé du problème. Il faut réadapter à chaque fois l’expression régulière… Maintenant elle en est à :
var filetageRegEx=/^UNE?(C|F)[ ]*(\d{0,2}["]?[ ]*(\d+[/]\d+)?)[ ]*-[ ]*(\d{1,2})[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
Tu devrais maintenant pouvoir entrer tes nouvelles valeurs.
@+
😎-
Cette réponse a été modifiée le il y a 1 jour et 19 heures par
bebarth.
Attachments:
You must be logged in to view attached files.24 mars 2025 à 14:57 #75820homer
ParticipantSalut
Merci beaucoup Bebarth !!
🙂
24 mars 2025 à 18:45 #75821Merlin
Maître des clésEn ce moment je crée des regex pour identifier les NIF (Numéro d’Identification Fiscale) de plusieurs pays.
Dire que je trouvais ça compliqué, ce n’est rien a côté des filetages !
😉
25 mars 2025 à 08:18 #75822homer
ParticipantBonjour,
J’ai changé la ligne a modifier, mais cela ne passe pas,
Bonne journée
Cordialement
Attachments:
You must be logged in to view attached files.25 mars 2025 à 10:54 #75824bebarth
Maître des clésbonjour,
L’expression régulière vérifie les chaines de caractères strictement !
UNEF 1.11/16 – – 32 – Pas 1.720 n’est donc pas la même chose que UNEF 1 11/16 – 32 – Pas 1.720 (sans point et avec un simple tiret). La première chaine testée est donc fausse alors que la seconde est vraie.@+
😎25 mars 2025 à 12:20 #75825homer
ParticipantBonjour,
J’ai corrigé comme sur la photo, et adapter le script avec les valeurs qui lui correspondes, mais il y a toujours une double erreur :
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 vis=””;
var pas=””;
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=/^UNE?(C|F)[ ]*(\d{0,2}[“]?[ ]*(\d+[/]\d+)?)[ ]*-[ ]*(\d{1,2})[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
if (filetageRegEx.test(lesValeurs)) {
var visPas=lesValeurs.replace(“\””,” “).replace(/[ ]+/g,” “).replace(filetageRegEx,”$5-$7″.replace(/,/g,”.”));
var laVis=visPas.split(“-“)[0].split(/[ ]/);
console.println(“visPas : “+visPas);
console.println(“laVis : “+laVis);
console.println(“laVis.length : “+laVis.length);
if (laVis.length==1) {
var vis=(Number(laVis[0].split(“/”)[0])/Number(laVis[0].split(“/”)[1]))*25.4;
} else {
if (laVis[1]) var vis=(Number(laVis[0])+(Number(laVis[1].split(“/”)[0])/Number(laVis[1].split(“/”)[1])))*25.4;
else var vis=Number(laVis[0])*25.4;
}
var pas=visPas.split(“-“)[1];
} else {
var filetageRegEx=/^UNEF[ ]*(\d{0,2}[“]?[ ]*(\d+[/]\d+)?)[ ]*-[ ]*(\d{1,2})[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
if (filetageRegEx.test(lesValeurs)) {
var visPas=lesValeurs.replace(“\””,” “).replace(/[ ]+/g,” “).replace(filetageRegEx,”$2-$4-$5″.replace(/,/g,”.”));
var laVis=visPas.split(“-“)[0].split(/[ ]/);
console.println(“visPas : “+visPas);
console.println(“laVis : “+laVis);
console.println(“laVis.length : “+laVis.length);
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 {
if (laVis[1]) var vis=(Number(laVis[0])+(Number(laVis[1].split(“/”)[0])/Number(laVis[1].split(“/”)[1])))*25.4;
else var vis=Number(laVis[0])*25.4;
}
var pas=visPas.split(“-“)[2];
} else {
var filetageRegEx=/^G[ ]*(\d{0,2}[“]?[ ]*(\d+[/]\d+)?)[ ]*-[ ]*\w*[ ]*(\d{1,2}[.,]\d{1,3})$/;
if (filetageRegEx.test(lesValeurs)) {
var visPas=lesValeurs.replace(“\””,” “).replace(/[ ]+/g,” “).replace(filetageRegEx,”$1-$3″.replace(/,/g,”.”));
var laVis=visPas.split(“-“)[0].split(/[ ]/);
console.println(“visPas : “+visPas);
console.println(“laVis : “+laVis);
console.println(“laVis.length : “+laVis.length);
var filetageUNEF=[[“1/4”,6.350],[“5/16”,7.938],[“3/8”,9.525],[“7/16”,11.113],[“1/2”,12.700],[“9/16”,14.288],[“5/8”,15.875],[“11/19”,17.463],[“3/4”,19.050],[“13/16”,20.638],[“7/8”,22.225],[“15/16”,23.813],[“1”,25.4],[“1 1/16”,26.988],[“1 1/8”,28.575],[“1 3/16”,30.163],[“1 1/4”,31.750],[“1 5/16”,33.338],[“1 3/8”,34.965],[“1 7/16”,38.100],[“1 9/16”,39.688],[“1 5/8”,41.275],[“1 11/16”,41.5],[“1 3/4”,41.5],[“2”,49.4]];
console.println(“filetageGaz.length : “+filetageGaz.length);
if (laVis.length>1 && laVis[1]) var filetage=laVis[0]+” “+laVis[1];
else var filetage=laVis[0];
console.println(“filetage : “+filetage);
console.println(“filetage.length : “+filetage.length);
for (var j=0; j<filetageGaz.length; j++) {
console.println(j+” : “+filetageGaz[j]);
if (filetageGaz[j][0]==filetage) {
var vis=filetageGaz[j][1];
break;
}
}
if (j==filetageGaz.length) app.alert(“Filetage incorrect”,3);
else var pas=visPas.split(“-“)[1];
} else app.alert(“Filetage incorrect”,3);
}
}
}
try {
console.println(“vis : “+vis);
console.println(“pas : “+pas);
this.getField(“DiametreUNEFconv”).value=vis;
this.getField(“PasUNEFconv”).value=pas;
} catch(e) {
app.alert(“Filetage incorrect”,3);
}
}Merci d’avance ! 🙂
-
Cette réponse a été modifiée le il y a 20 heures et 17 minutes par
homer.
Attachments:
You must be logged in to view attached files. -
Cette réponse a été modifiée le il y a 1 semaine et 1 jour par
-
AuteurRéponses
- Vous devez être connecté pour répondre à ce sujet.