begin process at 2012 02 13 11:23:48
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Javascript

 > 

Archives

 > 

AU SECOURS !!!

 > 

Impression tableau sur plusieurs pages


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Impression tableau sur plusieurs pages

dimanche 4 décembre 2005 à 14:44:47 | Impression tableau sur plusieurs pages

willinfeo

Bonjour a tous,

Comment peut-on imprimer un tableau sur plusieurs pages en repetant entete et pied de page sans connaitre le nombre de ligne a l'avance ?

Merci
lundi 5 décembre 2005 à 22:25:24 | Re : Impression tableau sur plusieurs pages

quebectech

J'aimerais bien savoir cette solution moi aussi
mercredi 28 décembre 2005 à 14:10:12 | Re : Impression tableau sur plusieurs pages

PetoleTeam

Membre Club


Là il faut mettre la main au clavier...

Cela devrait ressembler à ce qui suit...

Pour cela créer des functions
 - Tableau_WriteDeb() pour l'écriture de l'entête
 - Tableau_WriteLigne() pour l'écriture des données
 - Tableau_WriteEnd() pour l'écriture du pied de page

Toutes ces fonctions écriront dans un document vierge crée par exemple comme ceci...
  Win = window.open("","",..etc..);
  Win.document.open();

On écrit l'entête...
Tableau_WriteDeb()

A chaque écriture on incrémente un compteur...
Tableau_WriteLigne();
NbrLigne ++;

Quand le compteur atteind le nombre de lignes souhaitées par page on écrit l'enpied...
Tableau_WriteEnd()

Puis on écrit dans le document la ligne suivante...

document.write('<BR style="page-break-after: always";>');
pour forcer un saut de page...

...et on continu tant que des données sont à traiter...

En final on ferme le document ainsi écrit...

  Win.document.close();

Et on envoie à l'impression avec
  Win.document.print();

Soyez indulgent je ne l'ai pas fait mais cela devrait marcher...

Bonne programmation...
mercredi 28 décembre 2005 à 19:16:05 | Re : Impression tableau sur plusieurs pages

quebectech

Merci PetoleTeam,

  mais concretement dans un script ca ressemblerait a quoi ? Je suis un peu perdu dan tout ca....
jeudi 29 décembre 2005 à 10:43:44 | Re : Impression tableau sur plusieurs pages

PetoleTeam

Membre Club

La maison ne reculant devant aucun sacrifice...

Copie les lignes suivantes dans un new fichier et essaies de te rendre compte d'une possible méthode, il y en a d'autres...

Cela dépend de la façon de gérer tes données bien sur...

--------------------------------------------------------------------------
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Bout de code...</title>
<STYLE media="print" TYPE="text/css">.noPrint {display:none}</STYLE>
<STYLE TYPE="text/css">
BODY   {color:#000000;font-size:13px;font-family:Verdana;text-align:normal;}
.Text  {color:#0000f0;font-size:11px;font-family:Verdana;text-align:normal;}
.Entete{color:#000000;font-size:13px;font-family:Verdana;text-align:center;font-weight:bold;}
.Empied{color:#000000;font-size:11px;font-family:Verdana;text-align:center;font-weight:normal;}
</STYLE>
<SCRIPT language="JavaScript">
var NbrLigne;
var NbrPage;
var NbrParPage = 5;

//-------------
function Data(){
 this.Col0   = new Array();
 this.Col1   = new Array();
 this.Col2   = new Array();
 this.Col3   = new Array();
 this.AddData= AddData;
}
//-------------------------------------------
function AddData( col0_, col1_, col2_, col3_){
 var i = this.Col1.length;
 this.Col0[i] = col0_;
 this.Col1[i] = col1_;
 this.Col2[i] = col2_;
 this.Col3[i] = col3_;
}
//--------------------
function WriteEntete(){
 var Html="";
 NbrLigne = 0;
 NbrPage ++;
 Html +="<TABLE BORDER='1'><TR><TD class=Entete BGCOLOR='#ccddff' colspan=4>D&eacute;but de Page "+ NbrPage +"</TD></TR>";
 document.write( Html);
}
//-------------------------
function WriteLigne( data_, index_){
 var Html="";
 with( data_){
   Html +="<TR>";
   Html +="<TD class=Text width=80>" +Col0[index_] +"</TD>";
   Html +="<TD class=Text width=80>" +Col1[index_] +"</TD>";
   Html +="<TD class=Text width=80>" +Col2[index_] +"</TD>";
   Html +="<TD class=Text width=80>"+ Col3[index_] +"</TD>";
   Html +="</TR>";
 }
 NbrLigne ++;
 document.write( Html);
}
//--------------------
function WriteEnpied(){
 var Html="";
 Html +="<TR><TD class=Empied BGCOLOR='#f0f0f0' colspan=4>Fin de Page</TD></TR></TABLE>";
 document.write( Html);
}
//----------------------
function WriteSautPage(){
 document.write('<BR style="page-break-after: always";>');
}
//---------------------
function DocWriteData(){
  var i;
  NbrPage =0;
  WriteEntete();
  for( i =0; i < Ligne.Col0.length;i++){
    WriteLigne( Ligne, i);
    if( NbrLigne > NbrParPage){
      WriteEnpied();
      WriteEntete();
      WriteSautPage();
      NbrLigne=0;
    }
  }
  WriteEnpied();
}

//---------------------
 var Ligne = new Data();
 Ligne.AddData( "Ligne  1", "Colonne 1", "Colonne 2", "Colonne 3");
 Ligne.AddData( "Ligne  2", "Colonne 1", "Colonne 2", "Colonne 3");
 Ligne.AddData( "Ligne  3", "Colonne 1", "Colonne 2", "Colonne 3");
 Ligne.AddData( "Ligne  4", "Colonne 1", "Colonne 2", "Colonne 3");
 Ligne.AddData( "Ligne  5", "Colonne 1", "Colonne 2", "Colonne 3");
 Ligne.AddData( "Ligne  6", "Colonne 1", "Colonne 2", "Colonne 3");
 Ligne.AddData( "Ligne  7", "Colonne 1", "Colonne 2", "Colonne 3");
 Ligne.AddData( "Ligne  8", "Colonne 1", "Colonne 2", "Colonne 3");
 Ligne.AddData( "Ligne  9", "Colonne 1", "Colonne 2", "Colonne 3");
 Ligne.AddData( "Ligne 10", "Colonne 1", "Colonne 2", "Colonne 3");
</SCRIPT>
</HEAD>
<BODY>
<CENTER>
<script language="JavaScript">
  DocWriteData();
</script>
<div class=noPrint>
<br>&nbsp;
<br><b>SCRIPT</b> fait &agrave;&nbsp;la va vite,
<br>il reste pas mal de probl&egrave;me &agrave;&nbsp;r&eacute;soudre mais....
<br><b>A TOI</b> de jouer...
<br>&nbsp;
<br>Maintenant va voir dans l'aper&ccedil;u avant impression...
</div>
</CENTER>
</BODY>
</HTML>

--------------------------------------------------------------------------
Allez bon travail...

vendredi 30 décembre 2005 à 08:33:05 | Re : Impression tableau sur plusieurs pages

PetoleTeam

Membre Club

Du nouveau...

J'ai bossé toute la nuit, heu c'est faux, pour livrer un exemple complet d'impression de tableau..

Va voir sur les nouveaux codes....
En espérant t'avoir donné un coup de main...
Bonne PROG pendant les fêtes....!!!
;O])



Cette discussion est classée dans : impression, pages, tableau


Répondre à ce message

Sujets en rapport avec ce message

Comment lancer l'impression de plusieurs pages? [ par keskispas ] KesKisPasBonjour à tous!Alors, voilà je voudrais faire un truc tout simple mais je ne sais pas comment le faire : _ Déjà, comment faire pour lancer l' impression dans une autre fenêtre et sélection [ par mlelorra ] BonjourJ'ai une page html contenant un tableau de 20 colonnesJ'aimerais qu'il y ait un bouton ouvrant un petit pop-up (ou une petite fenêtre) qui fera IMprimante [ par maghrebi ] <TD id=HB_Focus_Element vAlign=top width="100%" background="" height=250 UNSELECTAB Impression tableau html [ par amita ] merci à l'équipemes chers amis, voici mon problème:je viens de créer une page php qui contient des tableaux html, ces tableaux sont remplis avec une b Imprimer DIV sur plusieurs pages [ par Dadams69 ] Bonjour, tout d'abord je tiens à signaler que j'ai effectué pas mal de recherches avant de poster ici. C'est seulement la 2eme fois que je poste sur Numéroter des pages lors d'une impression [ par lock07 ] Bonjour à tous, j'ai un petit problème javascript.Je suis en train de faire un site de vente en ligne et je travaille sur l'édition des factures. J'ai Impression de header et de footer d'images [ par jessak ] Par exemple, si l'on a image1.gif comme header et image2.gif commme footer, mais que le texte entre est trop long. (Donne 2 pages à l'impression) . Po impression [ par wafa45 ] bj, j'ai une page jsp qui contient un grand tableau qui contient un grand nombre de colonnes et de lignes et j'aimerai bien l'imprimer mais tj mon tab Un ^peu d`aide si possible [ par SamJC ] Bonjour, j'avais besoin de laide en JS donc je me suis inscrit a ce site, si c'est possible sa serait apprecier Donc, comme exercice pour une classe c Faire communiquer ses pages avec des mobiles (recherche de testeurs) [ par hhoareau ] Bonjour à tous, Nous cherchons des webmasters / développeurs intéressés pour tester gratuitement un nouveau concept de widget permettant de faire co


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,343 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales