Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Problema salto pagina
domenica 02 ottobre 2016 - 12.19
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
VB.NET
|
Windows 7
|
Visual Studio 2010
|
SQL Server 2008 R2
Peppino
Profilo
| Junior Member
186
messaggi | Data Invio:
dom 2 ott 2016 - 12:19
Ciao a tutti.
Uso Sql Server 2008 R2, Visual Basic 2010 Express e per la stampa PrintDocument
Ho un problema con il salto pagina e.HasMorePages che non riesco a risolvere. Sono giorni
che giro in rete sperando di trovare qualcosa che mi aiutasse a risolvere il problema ma
senza successo. Con il salto pagina con un solo ciclo, non ho problema, ma adesso mi serve
una stampa con cicli annidati e non riesco a fargli fare il salto pagina. Provo a fare un
piccolo esempio di quello che vorrei realizzare.
'Dichiarazione del numero di righe per pagine da stampare
Dim RighePerPagina As Integer = 20
Static j AS Integer
Static i As Integer
Static RigheStampate As Integer = 0
Dim Causale As String
Dim Articolo As String
'Con una query mi ricavo il totale dei record della tabella 'Causali'
Dim RecordCausali As Integer ' = risultato della query
'Con un'altra query mi ricavo il totale dei record della tabella 'Uscite'
Dim RecordUscite As Integer ' = risultato della query
'Con un'altra query mi richiamo la tabella delle 'Causali'
'Creo il primo ciclo esterno per lo scorrimento delle causali
For j = j To j + RecordCausali - 1
If j < BindingSource.Count Then
'Estraggo il valore della causale in base al ciclo
causale = CStr(DataSet.Tables("Causale").Rows(j).Item(0))
'Con un'altra query vedo s'è la causale estratta è presente nella tabelle delle 'Uscite'
If la causale esiste Then
'Stampo la riga della causale
e.Graphics.DrawString(causale, Font3, Brushes.Red, x, y)
y += 20
righeStampate += 1
End If
'Con un'altra query mi richiamo la tabella delle 'Uscite' con il parametro della causale
'Creo il secondo ciclo interno per lo scorrimento degli articoli che fanno parte della causale
'Se il ciclo sarebbe solo questo lo farei nel modo seguente e funziona bene
For i = i To i + RighePerPagina
If i < BindingSource.Count Then
'Estraggo il valore dell'articolo in base al ciclo
articolo = CStr(DataSet.Tables("Articolo").Rows(i).Item(2))
'Stampo la riga dell'articolo in base al ciclo e alla causale
e.Graphics.DrawString(articolo, Font5, Brushes.Black, x + 15, y)
y += 20
righeStampate += 1
'Se il ciclo sarebbe solo questo il codice del salto pagina e.HasMorePage = True
'lo metto qui e funziona bene
e.HasMorePages = True
Else
e.HasMorePages = False
End If
Next
End If
Next
Come impostato questo codice con il ciclo esterno non funziona. Vorrei sapere perché non funziona,
ma vorrei che il salto pagina lo facesse in base alle Righe Stampate. Ho provato in tanti modi seguendo
anche diversi esempi trovati in rete, ma il risultato è sempre lo stesso. Chiedo scusa se mi sono
prolungato un poco, ma cosi spero di aver espresso il problema in modo chiaro. In attesa di una eventuale
risposta (che spero tanto) con la quale gradirei un vostro suggerimento, aiuto o correzione del codice
che sarebbe il massimo.
Ringrazio anticipatamente come sempre.
Ciao a tutti. Peppino.
Ho risolto, forse non in modo appropriato, ma ho risolto.
Grazie comunque a tutti.
Ciao a tutti. Peppino.
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !