begin process at 2010 03 21 10:13:37
  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 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 "Disable" tableau dans sous menu [ par toutatix ] bonjour,j ai trouve sur un site internet un script pour menu et sous menu.Je l ai adapte pour ma page.Le script marche super, menu et sous menu appara Impression de plusieurs frames [ par mlelorra ] SalutJ'ai une page avec 3 frames. J'aimerais que tout s'imprime sur une même feuille contrairement à ce que j'ai maintenant (3 feuilles disctinctes).. Figer des colonnes [ par mlelorra ] BonjourJ'ai une page ou il y a un tableau. Ce tableau est constitué d'une quinzaine de colonnes et l'ensemble ne peut pas s'afficher sans faire défile Formulaire : Ajouter une ligne sans reload [ par coraziari ] Bonjour,Je réalise un formulaire de saisie de CV mais je galère un peu pour les expériences. En effet, pour ne pas "polluer" trop la page, j'ai mis un


Nos sponsors


Sondage...

Comparez les prix


HTC Hero

Entre 550€ et 550€

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

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,671 sec (3)

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