Nmero di pagina

giovedì 28 giugno 2007 - 13.52

dancur21 Profilo | Newbie

Ciao, sto lavorando ad un progetto C++ in VS2005 utilizzando Crystal Report.
Ho bisogno di conoscere il numero totale di pagina del report attualmente visualizzata nel viewer, esiste un metodo per farlo?

Ho provato il metodo GetLastPageNumber() del Viewer ma appena ho caricato il report viene visualizzata una dialog di errore (del genere "Sto caricando i dati" o simile).
Ho provato con il seguente codice:

IPageGenerator pPageGen = m_Report->GetPageEngine()->CreatePageGenerator(NULL,vtMissing); long i = pPageGen.GetPages()->GetCount();

ma mi da errore in esecuzione perchè non posso creare un oggetto di una classe astratta.
Qualcuno può aiutarmi????

Scusate ma è abbastanza urgente.



Grazie Ciao

freeteo Profilo | Guru

ciao,
io proverei a sottoscrivermi all'evento "Navigate" del viewer e farti dare da lui la pagina corrente.
In c++ io non programmo, ti posto il codice in c# poi tu prova ad adattarlo:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra
ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

dancur21 Profilo | Newbie

Ciao, grazie per il suggerimento ma non esiste un evento tipo OnNavigate(..), ho solo gli eventi OnPrevPageBNutton(), OnNextPageButton(), ecc.. ma penso che siano scatenati dalla pressione dei bottoni sulla toolbar inclusa, che però io non utilizzo.

Ho provato a richiamare il metodo del viewer GetCurrentPageNumber(), dopo aver cambiato pagina ma compare una Popup con il messaggio "Il comando sta caricanso i dati".

Sono in difficoltà per colpa di un problema che a prima vista sembrerebbe una stupidaggine.

Ho trovato qualche suggerimento del genere di scorrere tutto il report (in modo da forzare il suo caricamento) prima di visualizzarlo, ma richiede un ovvio degrado prestazionale che vorrei evitare.

Aiuto.
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 !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5