Donnez vie à vos documents numériques !
 

Répondre à : Renommer indices

abracadabraPDF Forums PDF – Général Renommer indices Répondre à : Renommer indices

#75302
bebarth
Maître des clés

bonjour,
Voici les lignes pour pouvoir supprimer les anciens champs avec ton script :

function Renommer_c() {
var anciensChamps=[];
for (var i=0; i<this.numFields; i++) {
var nomChamp=this.getNthFieldName(i);
var Menu = this.getField("Menu").value;
var CaR = this.getField("nom_champ").value;
var an = this.getField("AN").value;
var P1new = this.getField("NN").value;
var P2new = this.getField("NN").value;
var b = nomChamp.split(".");
var P1 = (b[0]);
var P2 = (b[1]);
var P3 = (b[2]);

if (Menu == 1 && an == P1) {
try{
var ts=this.getField(P1+"."+P2+"."+P3).textSize;
var tf=this.getField(P1+"."+P2+"."+P3).textFont;
var rct=this.getField(P1+"."+P2+"."+P3).rect;
var pg=this.getField(P1+"."+P2+"."+P3).page;
var f=this.addField(P1new+"."+P2+"."+P3,"text",pg,rct);
anciensChamps.push(P1+"."+P2+"."+P3);
f.textSize=ts;
f.textFont=tf;
}catch(e){break}
//this.removeField(P1+"."+P2+"."+P3)
}

if (Menu == 2 && an == P2 && CaR == P1) {
try{
var ts=this.getField(P1+"."+P2+"."+P3).textSize;
var tf=this.getField(P1+"."+P2+"."+P3).textFont;
var rct=this.getField(P1+"."+P2+"."+P3).rect;
var pg=this.getField(P1+"."+P2+"."+P3).page;
var f=this.addField(P1+"."+P2new+"."+P3,"text",pg,rct);
anciensChamps.push(P1+"."+P2+"."+P3);
f.textSize=ts;
f.textFont=tf;
}catch(e){break}
//this.removeField(P1+"."+P2+"."+P3)
//app.alert("Champ retiré : "+P1+"."+P2+"."+P3);
}

}
for (var j=0; j<anciensChamps.length; j++) this.removeField(anciensChamps[j]);
}

Ton script fonctionne correctement, par contre il ne duplique pas toutes les propriétés. Tu devrais plutôt t’inspirer du miens…

Pour ce qui est de ton autre problème ce n’est pas très compliqué, il suffit de créer le nouveau champ juste au dessus de l’ancien et de ne pas l’insérer dans la table des champs à supprimer si son nom est “Q”. J’essayerai de te faire ça demain !

@+
😎

Attachments:
You must be logged in to view attached files.