JavaScript - Impresiones sucesivas

 
Vista:

Impresiones sucesivas

Publicado por Germán Enríquez (2 intervenciones) el 03/08/2006 20:53:18
Bueno, mi problema es el siguiente, estoy intentando imprimir varias hojas de un documento. Como es logico, este documento esta dividido en varias paginas, pero en el browser solo se muestra una pagina a la vez. Entoces cada vez que mando a imprimir una pagina, se carga la siguiente y se manda a imprimir de nuevo, se carga la siguiente pagina y asi sucesivamente. El problema es que el tiempo que demora en cargarse una pagina hace que al mandar la siguiente impresion se imprima la misma pagina, asi cada vez que mando a imprimir todo, la primera pagina se imprime 2 veces.
Aqui pongo mi codigo con la esperanza de que alguien pueda ayudarme:
//Las paginas del docmento se argan en un IFRAME
//Uso el objeto factory del SriptX
function ImprimirTodo(){
factory.printing.header = "";
factory.printing.footer = "";
factory.printing.paperSize = "A4";
factory.printing.topMargin = 0.4;
factory.printing.bottomMargin = 0.4;
factory.printing.leftMargin = 0.4;
factory.printing.rightMargin = 0.4;
var oDependencia = document.forms[0].ltbBiblioteca;
var sValor=oDependencia.options[oDependencia.selectedIndex].value;;
var sDesde=document.forms[0].txtDe.value;
var sHasta=document.forms[0].txtHasta.value;
var sUsuario=document.forms[0].hdnUsu.value;
var ultimo=fraAuxiliar.document.forms[0].hdnPag.value;
var i=1;
if(parseInt(fraAuxiliar.document.forms[0].Pag.value)!=1){
Cargar(0); //carga la primera pagina
//alert(fraAuxiliar.document.forms[0].Pag.value);
}
while(parseInt(ultimo)<parseInt(sHasta)){
fraAuxiliar.exploracion.style.display='none'; //oculta unos botones
var s="Se está imprimiendo la página "+fraAuxiliar.document.forms[0].Pag.value;
if(factory.printing.print(false,fraAuxiliar)){ //imprime directamente
//fraAuxiliar.exploracion.style.display='none';
ultimo = fraAuxiliar.document.forms[0].hdnPag.value;
ultimo=parseInt(ultimo)+1;
fraAuxiliar.location.href = "frmCodResult.aspx?Valor=" + sValor + "&Desde=" + sDesde + "&Hasta=" + sHasta+"&Inicio="+ultimo; //Carga la siguiente pagina
i=parseInt(i)+1;
alert(s);
}
}
OcultarBotones();
document.forms[0].txtDe.value=ultimo;
document.forms[0].txtHasta.value="";
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder