Ciao,
perdona il ritardo nella risposta mi era sfuggito il thread.
Come dici tu, chiamare un WebMetho da dentro il report non è possibile, devi farlo da codice .net, quindi dentro alla tua applicazione, quello che puoi fare è provare a recuperare il numero di pagine dall'oggetto che hai caricato (e a cui hai passato i dati):
ReportDocument report = new ReportDocument();
report.Load(@"....\report.rpt", OpenReportMethod.OpenReportByTempCopy);
...
report.FormatEngine.GetLastPageNumber(new ReportPageRequestContext())
...
*: Attento però che questo numero di pagine potrebbe non venire conteggiato sempre, perchè a volte non viene fatto per velocizzare il caricamento (deve elaborarsi tutte le pagine prima di darti il conto di quante sono). Però se hai messo un campo speciale come "page N of M" dentro al report (tipicamente nel pie-pagina) allora lo fa di sicuro.
Ciao.
Matteo Raumer
[MVP Visual C#]
http://blogs.dotnethell.it/freeteo