ciao a tutti mi serve stampare dei dati presi da un database e mi serve poter gestire più pagine per la stampa...
Recupero i dati da un database attraverso varie select una dentro l'altra.. Per intenderci devo ottenere ,con i dati presi dal db, una paginazione del genere:
CLIENTE 1
FORNITORE 1 relativo al cliente 1
ARTICOLO 1 relativo al fornitore1 del cliente1
ARTICOLO 2 relativo al fornitore1 del cliente1
FORNITORE 2 relativo al cliente 1
ARTICOLO 1 relativo al fornitore2 del cliente1
ARTICOLO 2 relativo al fornitore2 del cliente1
CLIENTE 2
FORNITORE 1 relativo al cliente 2
ARTICOLO 1 relativo al fornitore1 del cliente2
ARTICOLO 2 relativo al fornitore1 del cliente2
FORNITORE 2 relativo al cliente 2
ARTICOLO 1 relativo al fornitore2 del cliente2
ARTICOLO 2 relativo al fornitore2 del cliente2
sono riuscito a fare una cosa del genere creandomi una funzioncina che mi permette di effettuare una select sul db e costruendomi la pagina in questo modo:
Codice PHP:
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
Utils utils1 = new Utils();
String ConnStringSQL = utils1.setConnectionString("*****", "******");
DataTable tabella1 = utils1.eseguiSelect("SELECT DISTINCT (Cliente) FROM magazzino WHERE magazzino.ARR='True' AND magazzino.CONS='False' ORDER BY magazzino.Cliente DESC", ConnStringSQL);
float y = 20;
foreach (DataRow dr1 in tabella1.Rows)
{
Object Cliente = dr1[0];
String Cliente_s = Cliente.ToString();
Graphics g = e.Graphics;
Font messageFont = new Font("Arial", 10, System.Drawing.GraphicsUnit.Point);
g.DrawString(Cliente_s, messageFont, Brushes.Black, 20, y);
y = y + 20;
Utils utils2 = new Utils();
DataTable tabella2 = utils2.eseguiSelect("SELECT DISTINCT (Fornitore) FROM magazzino WHERE magazzino.Cliente='" + Cliente + "' ORDER BY magazzino.Fornitore DESC", ConnStringSQL);
foreach (DataRow dr2 in tabella2.Rows)
{
Object Fornitore = dr2[0];
String Fornitore_s = Fornitore.ToString();
Font messageFont2 = new Font("Arial", 8, System.Drawing.GraphicsUnit.Point);
g.DrawString(Fornitore_s, messageFont2, Brushes.Black, 40, y);
y = y + 20;
Utils utils3 = new Utils();
DataTable tabella3 = utils3.eseguiSelect("SELECT DISTINCT (Codice) FROM magazzino WHERE magazzino.Fornitore='" + Fornitore_s + "' ORDER BY magazzino.Codice DESC", ConnStringSQL);
foreach (DataRow dr3 in tabella3.Rows)
{
Object Codice = dr3[0];
String Codice_s = Codice.ToString();
Font messageFont3 = new Font("Arial", 6, System.Drawing.GraphicsUnit.Point);
g.DrawString(Codice_s, messageFont3, Brushes.Black, 60, y);
y = y + 20;
}
}
}
}
In questo modo riesco a ottenere l'impaginazione che volevo...
Quindi richiamo la stampa con un pulsantino:
Codice PHP:
private void BTN_Stampa_Click(object sender, EventArgs e)
{
printDocument1.Print();
}
il Problema è che non ho idea di come fare a gestire più pagine... per ora ottengo la stampa solo di 1 pagina..
spero di avervi fatto capire + o meno qual'è la mia situazione..
Potreste aiutarmi a capire come stampare su più pagine?? 
Grazie 1000