Nuovo

mercoledì 07 maggio 2008 - 10.30

lanfra Profilo | Senior Member

Buongiorno, sono nuovo di CrystalReport e mi trovo a dover affrontare la creazione di una stampa web.

Il mio obiettivo è dover stampare il contenuto di una tabella in base a parametri impostati su una pagina web. Una query visualizza l'estrazione a video e questa estrazione dovrà poi essere stampata su carta.

Il problema è che non sò utilizzare crystal, la connessione/creazione report/lancio stampa.
In più se bisogna impostare il webserver con dll o quant'altro.

Qualsiasi aiuto a riguardo è ben gradito (esempi,documentazione specifica...).



Lanfra

sirena82 Profilo | Newbie

in quale linguaggio stai lavorando?

lanfra Profilo | Senior Member

ASP.Net con VB.net
Lanfra

freeteo Profilo | Guru

ciao,
hai possibilità di installare il runtime di Crystal sul server? è un pacchettino msi normale..ma te lo chiedo perchè se sei su host pubblici tipo Aruba etc...non ti danno possibilità di installare, ma solo di usare...

Le operazioni da fare sono queste:

1) costruzione del report.
Lo fai da visual studio, in maniera visuale quindi dovresti riuscire...la cosa da fare è dargli il database al quale collegarsi, e disegnare i campi che vuoi trascinandoli dentro.
hai anche un'anteprima veloce sempre dentroa visual studio...

2) Mettere un viewer nella pagina (darg&drop da toolbox)

3) via codice andrai a settare dati (e li filtrerai) e poi glieli passi con il codice qui sotto:
Dim tabella as new DataTable() ...riempi i dati nella tabella... Dim mioreport as new ReportDocument() mioreport.Load(Server.Mappath("../mioreport.rpt")) mioreport.SetDataSource (tabella) CrystalReportViewer1.ReportSource = mioreport

però queste cose sono vane se non puoi installare il runtime...


ciao.

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

lanfra Profilo | Senior Member

Proverò sicuramente e poi ti faccio sapere.
Per ora grazie sei stato gentilissimo.
Lanfra

freeteo Profilo | Guru

>Proverò sicuramente e poi ti faccio sapere.
ok, aspetto tue notizie

>Per ora grazie sei stato gentilissimo.
di niente, siamo qui per questo...se ti servisse, ti basta installare il runtime che trovi qui nella tua macchina:
C:\Program Files\Microsoft Visual Studio 8\Crystal Reports\CRRedist\
oppure
C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages\CrystalReports

e il file si chiama "CRRedist2005_x86.msi" o qualcosa del genere...

Installato quel file, dovrebbe essere sufficiente per far funzionare il report nella tua applicazione web.


ciao.

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

lanfra Profilo | Senior Member

Ok, creato e visualizzo l'anteprima.

Se lo eseguo mi dice che non riesce a caricare i dati...
Ora passo al secondo step, ovvero passo da codice i parametri per estrarre i dati e poi carico il report.

Ma devo imortare qualche classe per visualizzare il reports?

es.
Imports CrystalDecisions.Shared
Imports CrystalDecisions.CrystalReports.Engine

Scusate, io stò utilizzando per connettermi al DB una serie di classi, quidi mi sembrerebbe giusto utilizzarle anche per creare i report con CR.

Qualcuno sà indicarmi la strada più corretta? Io stò provando con il wizard ma non mi connette neanche il DB [la connessione l'ho impostata nel webconfig ].

Ho associato la connesione al DB ad una mia classe. Quando vado ad indicare il campo da inserire nel mio Report selezionandolo da FieldExplorer la finestra mi si apre al 100% della pagina e non riesco più a fare il drag & drop... , non sò muovermi...


grazie in anticipo per qualsiasi consiglio.

freeteo Profilo | Guru

>Ok, creato e visualizzo l'anteprima.
>Se lo eseguo mi dice che non riesce a caricare i dati...
che messaggio da? se puoi posta un'immagine e magari del codice


>Ora passo al secondo step, ovvero passo da codice i parametri
>per estrarre i dati e poi carico il report.
stai parlando di LogonInfo?
vedi: http://www.dotnethell.it/forum/messages.aspx?ThreadID=21962


>Ma devo imortare qualche classe per visualizzare il reports?
>es.
>Imports CrystalDecisions.Shared
>Imports CrystalDecisions.CrystalReports.Engine
si se usi ReportDocument come mostrato nel link sopra, però ti aiuta già visual studio mentre digiti, se intendi se devi fare riferimenti, allora quello non serve, si è già arrangiato visual studio quando hai aggiunto il report a portarli dentro.
Nel caso stessi facendo tutto da codice in qualche libreria allora si, devi fare riferimento a "CrystalDecisions.Shared" e "CrystalDecisions.CrystalReports.Engine" dovrebbe bastarti per lavorare con "ReportDocument"


>Scusate, io stò utilizzando per connettermi al DB una serie di
>classi, quidi mi sembrerebbe giusto utilizzarle anche per creare
>i report con CR.
ok quindi hai creato il report puntando a quelle classi?


>Qualcuno sà indicarmi la strada più corretta? Io stò provando
>con il wizard ma non mi connette neanche il DB [la connessione
>l'ho impostata nel webconfig ].
nel wizard devi dargli un db dal quale pescare se vuoi, oppure come ti dicevo prima devi dare le classi .net che usi tu.
Quest'ultime però devono essere nello stesso progetto dove c'è il report, questa è una vera scocciatura spesso perchè ce le hai in qualche altro progetto o libreria che si preoccupa di farti l'accesso.
Niente da fare, devi portarle anche solo per puro scopo di costruzione del report.
Tanto poi da codice gli passi direttamente tramite "setDataSource(..)" il risultato della tua chiamata a quelle reali e qundi puoi eliminarle...non è il massimo, io di solito ricorro a qualche file xml che mi dia lo schema, o cmq una query su db per fare i report, e poi da codice ritorno quello che fa veramente parte della mia architettura, e lo passo appunto tramite "setDataSource"


>Ho associato la connesione al DB ad una mia classe. Quando vado
>ad indicare il campo da inserire nel mio Report selezionandolo
>da FieldExplorer la finestra mi si apre al 100% della pagina
>e non riesco più a fare il drag & drop... , non sò muovermi...
questo non l'ho capito, puoi postare l'immagine del comportamento? la finestra deve essere resizable,quindi magari spostandola compare l'angolo per il resize delle form


>grazie in anticipo per qualsiasi consiglio.
di niente, siamo qui per questo, spero solo di esserti stato utile

ciao.

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

lanfra Profilo | Senior Member

Grazie dell'interessamento, ma ho seguito MSDN per creare un report con connessione tramite classi:
http://msdn.microsoft.com/it-it/library/ms227116(VS.80).aspx

grazie
Lanfra
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