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

Je l’ai exécuté depuis la console.
Je n’ai plus le message d’erreur, du coup lorsque je clique sur le bouton, la console me renvoie le message suivant :
Début du process : 20/11/2022 – 16:05:29
Pages à imprimer : 20,32
Fin du process : 20/11/2022 – 16:05:29
Durée :
Mais par contre l’impression ne se lancait pas.
J’ai réactivé la ligne // this.print({bUI: false});
Après ça l’impression se lançait mais pour toutes les pages.
Du coup, j’ai essayé de remplacer cette ligne par : this.print({bUI: true, nStart: "+i+", nEnd: "+i+"});
var t=this.templates;
var bDialog={
DoDialog: function(){return app.execDialog(this);},
validate: function(bDialog) {
oRslt=bDialog.store();
for (var i=0; i<t.length; i++) {
if (i<10) eval("theCB"+i+"=oRslt[\"cb0"+i+"\"];");
else eval("theCB"+i+"=oRslt[\"cb"+i+"\"];");
}
testOK1=1;
var condition="if (";
for (var i=0; i<t.length; i++) {
if (i!=0) condition+=" && ";
condition+="theCB"+i+"==false";
}
condition+=") testOK1=0;";
eval(condition);
var alertReturn=(testOK1);
if(!alertReturn) app.alert("\nSélectionnez au moins une page à imprimer.");
return alertReturn;
},
description: {
name: "Dialog",
align_children: "align_top",
elements: [
{
type: "view",
align_children: "align_left",
elements: [
{
type: "cluster",
name: "Fiches à imprimer",
align_children: "align_top",
elements: [
{
type: "view",
char_width: 10,
char_height: 3,
elements: [
{
type: "view",
align_children: "align_top",
elements: [
{
type: "view",
width: 80,
elements: [
{
type: "check_box",
item_id: "cb00",
name: "Plan de salle"
},
{
type: "check_box",
item_id: "cb01",
name: this.getField("agoto.1").value
},
{
type: "check_box",
item_id: "cb02",
name: this.getField("agoto.2").value
},
{
type: "check_box",
item_id: "cb03",
name: this.getField("agoto.3").value
},
{
type: "check_box",
item_id: "cb04",
name: this.getField("agoto.4").value
},
{
type: "check_box",
item_id: "cb05",
name: this.getField("agoto.5").value
},
{
type: "check_box",
item_id: "cb06",
name: this.getField("agoto.6").value
},
{
type: "check_box",
item_id: "cb07",
name: this.getField("agoto.7").value
},
{
type: "check_box",
item_id: "cb08",
name: this.getField("agoto.8").value
},
{
type: "check_box",
item_id: "cb09",
name: this.getField("agoto.9").value
},
{
type: "check_box",
item_id: "cb10",
name: this.getField("agoto.10").value
},
]
},
{
type: "view",
width: 80,
elements: [
{
type: "check_box",
item_id: "cb11",
name: this.getField("agoto.11").value
},
{
type: "check_box",
item_id: "cb12",
name: this.getField("agoto.12").value
},
{
type: "check_box",
item_id: "cb13",
name: this.getField("agoto.13").value
},
{
type: "check_box",
item_id: "cb14",
name: this.getField("agoto.14").value
},
{
type: "check_box",
item_id: "cb15",
name: this.getField("agoto.15").value
},
{
type: "check_box",
item_id: "cb16",
name: this.getField("agoto.16").value
},
{
type: "check_box",
item_id: "cb17",
name: this.getField("agoto.17").value
},
{
type: "check_box",
item_id: "cb18",
name: this.getField("agoto.18").value
},
{
type: "check_box",
item_id: "cb19",
name: this.getField("agoto.19").value
},
{
type: "check_box",
item_id: "cb20",
name: this.getField("agoto.20").value
},
{
type: "check_box",
item_id: "cb21",
name: this.getField("agoto.21").value
},
]
},
{
type: "view",
width: 80,
elements: [
{
type: "check_box",
item_id: "cb22",
name: this.getField("agoto.22").value
},
{
type: "check_box",
item_id: "cb23",
name: this.getField("agoto.23").value
},
{
type: "check_box",
item_id: "cb24",
name: this.getField("agoto.24").value
},
{
type: "check_box",
item_id: "cb25",
name: this.getField("agoto.25").value
},
{
type: "check_box",
item_id: "cb26",
name: this.getField("agoto.26").value
},
{
type: "check_box",
item_id: "cb27",
name: this.getField("agoto.27").value
},
{
type: "check_box",
item_id: "cb28",
name: this.getField("agoto.28").value
},
{
type: "check_box",
item_id: "cb29",
name: this.getField("agoto.29").value
},
{
type: "check_box",
item_id: "cb30",
name: this.getField("agoto.30").value
},
{
type: "check_box",
item_id: "cb31",
name: this.getField("agoto.31").value
},
{
type: "check_box",
item_id: "cb32",
name: this.getField("agoto.32").value
},
]
},
]
},
]
},
]
},
{
alignment: "align_right",
type: "ok_cancel",
},
]
},
]
}
};
if("ok"==bDialog.DoDialog()) {
//
d0=new Date();
debut=util.printd("dd/mm/yyyy – HH:MM:ss",d0);
console.show();
console.clear();
console.println("Début du process : "+debut);
//
var lesPages=[];
for (var i=0; i<t.length; i++) eval("if (theCB"+i+"==true) lesPages.push("+i+");");
console.println("Pages à imprimer : "+lesPages);
for (var i=0; i<t.length; i++) t.hidden=true;
for (var i=0; i<lesPages.length; i++) t[lesPages].hidden=false;
if (lesPages[lesPages.length-1]!=t.length-1) t[t.length-1].hidden=true;
this.print({bUI: true, nStart: "+i+", nEnd: "+i+"});
for (var i=0; i<t.length; i++) {
t.hidden=true;
t.hidden=false;
}
//
df=new Date();
fin=util.printd("dd/mm/yyyy – HH:MM:ss",df);
console.println("Fin du process : "+fin);
temps=(df.valueOf()-d0.valueOf())/1000/60;
var lesMinutes=parseInt(temps);
var lesSecondes=(temps-lesMinutes)*60;
var lesSecondes=parseInt(lesSecondes*10)/10;
var leTemps="";
if (lesMinutes>0) {
if (lesMinutes==1) var leTemps="1 minute";
else var leTemps=lesMinutes+" minutes";
}
if (lesSecondes>0) {
if (lesSecondes<2) var leTemps=leTemps+" "+lesSecondes+" seconde";
else var leTemps=leTemps+" "+lesSecondes+" secondes";
}
var leTemps=leTemps.replace(/^\s+|\s+$/gm,"");
console.println("Durée : "+leTemps);
//
}
Mais là seulement la 1ère page s’imprime.
Je vais continuer de creuser…
-
Cette réponse a été modifiée le il y a 2 années et 2 mois par
michel c..