abracadabraPDF › Forums › PDF – Général › Nom du template ou nom d’un champ avec regex › Répondre à : Nom du template ou nom d’un champ avec regex
25 avril 2018 à 21:13
#63756

Maître des clés
bonjour,
Avez-vous une idée de comment mettre en pratique ?
J’ai écris un petit script qui supprime les pages qui possèdent un champ dont le nom contient “ACC_FR”.
Code:
var test = “ZERO”;
var pagesAsupprimer = new Array();
// On teste tous les noms des champs
for (var i = 0; i < this.numFields; i++) {
var fname = this.getNthFieldName(i);
// Page relative au champ
var fpage = this.getField(fname).page;
// Ici on teste si le nom du champ con tient ACC_FR
var str = fname;
var n = str.indexOf(“ACC_FR”);
// Si ACC_FR a été trouvé et la page n’est pas identique à la précédente trouvée
if (n > -1 && fpage != test) {
pagesAsupprimer.unshift(fpage);
var test = fpage;
}
}
// On remet les numéros de pages dans l’ordre décroissant
pagesAsupprimer.sort(function(a, b){return b-a});
// On supprime les pages trouvées dans l’ordre de la table (sens inverss)
for (var i = 0; i < pagesAsupprimer.length; i++) {
this.deletePages({nStart: pagesAsupprimer});
}
var pagesAsupprimer = new Array();
// On teste tous les noms des champs
for (var i = 0; i < this.numFields; i++) {
var fname = this.getNthFieldName(i);
// Page relative au champ
var fpage = this.getField(fname).page;
// Ici on teste si le nom du champ con tient ACC_FR
var str = fname;
var n = str.indexOf(“ACC_FR”);
// Si ACC_FR a été trouvé et la page n’est pas identique à la précédente trouvée
if (n > -1 && fpage != test) {
pagesAsupprimer.unshift(fpage);
var test = fpage;
}
}
// On remet les numéros de pages dans l’ordre décroissant
pagesAsupprimer.sort(function(a, b){return b-a});
// On supprime les pages trouvées dans l’ordre de la table (sens inverss)
for (var i = 0; i < pagesAsupprimer.length; i++) {
this.deletePages({nStart: pagesAsupprimer});
}
Il faudra adapter le script selon le nom des champs à tester !
@+
:bonjour: