Report da vb.net form

lunedì 15 febbraio 2010 - 14.00

biggiu Profilo | Junior Member

Salve a tutti,
avrei bisogno di capire come fare a trasferire in un report di crystal report i dati di una form.
In più questa form contiene dei grafici realizzati con Microsoft Chart for Windows Form. Qualcuno sa dirmi come fare a riversarli su un report CR?

In alternative esiste qualche istruzione ( VB.net) che trasforma un oggetto presente in una form in un'immagine?

Grazie a tutti per la gentile collaborazione.

BigGiu

freeteo Profilo | Guru

Ciao,
per quanto riguarda Crystal devi pensare a farti un report al quale passi i dati che usi nel grafico, ma devi rifare il grafico dentro al report, non esiste un'iumportazione/esportazione tra i 2 formati, sono completamente a se stanti.

Per quanto riguarda la stampa di una form, ci sono degli esempi in rete:
http://bytes.com/topic/c-sharp/answers/505401-printing-winform-graphic
http://www.codeproject.com/KB/printing/printform.aspx
http://www.c-sharpcorner.com/UploadFile/srajlaxmi/PrintingWindowsForm01182008021239AM/PrintingWindowsForm.aspx

guarda se ti possono essere d'aiuto...

Ciao.

Matteo Raumer
[MCAD .net, MVP Visual C#]
http://blogs.dotnethell.it/freeteo

biggiu Profilo | Junior Member

ho provato a generare il grafico da crystal report con il wizard ma non ottengo assolutamente ciò che voglio. Per intenderci, esiste una tabella in cui sono riportati i valori statistici suddivisi per :

tipologia materiale
data rilevazione
valore minimo
valore riscontrato
valore massimo

sai darmi qualche suggerimento per riuscire ad ottenere ciò che voglio ?

l'immagine a seguire è relativa a quanto ottengo con Microsoft Chart.


800x600 94Kb

BigGiu

freeteo Profilo | Guru

Ciao,
fare un grafico che ci assomigli è fattibile, farlo esattamente uguale (come aspetto grafico) non credo sia possibile, ad esempio infatti non c'è la possibilità di dare ad una serie la riga continua (qta xxx), ed ad un'altra dei puntini (qta med in colore verde).

Per farlo simile cmq puoi usare un grafico di tipo "line", mettere nella sezione dati le varie somme nella listbox "show values" (aggiungi i campi e poi gli dici di farti la somma nelle opzioni), e poi la dividi per data (1->26 sono i mesi?) nella listbox "on change of" del designer del grafico.

Ciao.

Matteo Raumer
[MCAD .net, MVP Visual C#]
http://blogs.dotnethell.it/freeteo

biggiu Profilo | Junior Member

Ho provato qualcosa del genere ma non ha funzionato.
In prima istanza non comprendo perchè debbo usare le somme quando la mia tabella contiene già i valori analitici per ogni giorno (1-26) di analisi.
Poi non riesco ad afferrare il concetto che determina la variazione della serie nell'arco temporale.
Per il mio modo di pensare, ogni record della mia tabella determina i valori minimi effettivi e massimi rilevati in un dato giorno.
Il grafico dovrebbe riportare tali variazioni per tutti i giorni di rilevazione.

BigGiu

freeteo Profilo | Guru

>la mia tabella contiene già i valori analitici per ogni giorno
>(1-26) di analisi.
ok allora non ti serve la somma,ma anche se la fai il risultato della somma per quel giorno sarà pari al valore singolo...quindi non dovrebbe farti differenza.


>Poi non riesco ad afferrare il concetto che determina la variazione
>della serie nell'arco temporale.
non ho capito bene cosa intendi qui cmq se puoi posta un report d'esempio con un database che abbia dei dati fittizi ma ragionevolmente simili a quelli che hai in produzione, che vediamo di lavorarci insieme.
Grazie.

Ciao.

Matteo Raumer
[MCAD .net, MVP Visual C#]
http://blogs.dotnethell.it/freeteo

biggiu Profilo | Junior Member

Ti ringrazio per la disponibilià che dimostri.

In allegato ho messo una tabella excel che rappresenta il tipico archivio dati da cui debbo estrapolare i grafici.
Il tipo record indica il materiale per cui è stato eseguita la rilevazione. Dovrebbero sussistere tanti grafici per quanti sono i tipi record presenti in tabella.
Il grafico dovrebbe rappresentare l'andamento di :
valore minimo
valore effettivo
valore massimo
valore medio ( ricalcolato e non essenziale )

BigGiu

freeteo Profilo | Guru

Ciao,
ti allego una versione del report con quello che secondo me si avvicina al tuo obbiettivo.
Siccome provenendo da excel sono tutte stringhe, ho fatto una formula che mi generasse un valore "DateTime" per usarlo poi nel grafico, grafico che come vedi, ho messo nell'Header di raggruppamento per averne uno per ogni tipo.

Dacci un'occhiata...

Ciao.

Matteo Raumer
[MCAD .net, MVP Visual C#]
http://blogs.dotnethell.it/freeteo

biggiu Profilo | Junior Member

Grazie, è la soluzione che cercavo.

BigGiu
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