Stampare con crystal report da pagina aspx

giovedì 13 settembre 2012 - 17.04
Tag Elenco Tags  VB.NET  |  .NET 3.5  |  Visual Studio 2010  |  SQL Server 2008 R2  |  Javascript  |  Crystal Reports 10.0

trinity Profilo | Guru

salve,
ho creato una pagina anteprima.aspx per far visualizzare e poi stampare un report. in questa pagina nell'evento Init eseguot questo codice:

Dim tiporeport As Integer
tiporeport = Request.QueryString("tiporeport")
gestione_report(tiporeport)

dove gestione_report mi esegue le query sql per riempire il report e caricare il file rpt Fino all'enteprima del report tutto Ok perfetto solo che quando lancio la stampa, viene ripetuto tutto il codice e quindi mi si generano alcuni errori in quanto delle variabili sono vuote.

se inserisco il

If Not IsPostBack Then

ovviamente quando mando in stampa non mi vengono caricati i parametri che invio al report.

come posso fare?

Mi spiego meglio...il database ed i report sono su un server web, i miei clienti attraverso un file url da me creato ossia un semplice file web di collegamento aprono il sito web, eseguono tutte le procedure e poi avviano l'anteprima di stampa la quale si genere con la routine sopracitata gestione_report.
Adesso quando clicco sull'icona della stampante di crystal report noto che mi esegue di nuovo tutto il codice che è stato eseguito già nel caricamento della pagina anteprima.aspx e poi mi apre la seguente finestra come da immagine sotto postata


1920x1080 231Kb


poi se clicco sul pulsante "OK" mi riesegue tutto il codice della routine ovviamente damdomi l'errore perchè le variabili all'interno della routine sono resettate e comunque non mi stampa, come posso fare io devo stampare il report che visualizzo come anteprima da client.

ecco una parte di codice con cui richiamo i report:

Dim report As New ReportDocument()
Dim Credenziali As New TableLogOnInfo
Credenziali.ConnectionInfo.ServerName = "Localhost"
Credenziali.ConnectionInfo.DatabaseName = "DB_GA_PROVA"
Credenziali.ConnectionInfo.UserID = "sa"
Credenziali.ConnectionInfo.Password = "sisinfo"
CrystalReportViewer1.LogOnInfo.Add(Credenziali)
report.Load(Server.MapPath(str_stampa), OpenReportMethod.OpenReportByDefault)

ovviamente il DB_GA_PROVA è la connection che si trova nel web.config e punta al server remoto

ciao
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

algraps Profilo | Junior Member

Ciao,
utilizzi Ajax? Prova a fare un partial update della pagina e caricare solamente il codice del report (che metterai all'interno di un updatepanel). Altrimenti prova ad aprire il report in un'altra pagina in modale.
Fammi sapere...
Ciao
A.G.
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5