Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
Crystal Reports e reportistica
Erore nella stampa
sabato 01 settembre 2007 - 15.01
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
bostongeorge985
Profilo
| Newbie
10
messaggi | Data Invio:
sab 1 set 2007 - 15:01
Salve,
Sono un novello programmatore in vb.net,
ho creato un programma,in vb.net, che contiene un report creato con cr8 e ho associato i dati tramite l'esperto database.
Quando provo ad eseguire la stampa dal mio pc tutto va bene, ma cambiando pc, mi visualizza una finestra che richiede
Nome server,Database,Id collegamento e password.
Ho capito che il problema consiste nel percorso del database che ho associato tramite l'esperto database.
Qualcuno mi potrebbe dire come devo fare per far stampare i dati su tutti i pc?
grazie.
P.S.Utilizzando l'esperto database e associando i dati al dataset che utilizzo nel mio programma, i dati delle tabelle non vengono visualizzati correttamente.
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
sab 1 set 2007 - 15:08
>Salve,
Ciao e benvenuto...
>Sono un novello programmatore in vb.net,
>ho creato un programma,in vb.net, che contiene un report creato con cr8 e ho associato i dati tramite l'esperto database.
>Quando provo ad eseguire la stampa dal mio pc tutto va bene, ma cambiando pc, mi visualizza una finestra che richiede
>Nome server,Database,Id collegamento e password.
>Ho capito che il problema consiste nel percorso del database che ho associato tramite l'esperto database.
>Qualcuno mi potrebbe dire come devo fare per far stampare i dati su tutti i pc?
>grazie.
>P.S.Utilizzando l'esperto database e associando i dati al dataset che utilizzo nel mio programma, i dati delle tabelle non vengono >visualizzati correttamente.
A questo link trovi un thread a cui ho partecipato che dovrebbe fare al caso tuo:
http://www.dotnethell.it/forum/messages.aspx?ThreadID=17496
Ciao
Alessandro
http://blogs.dotnethell.it/alebadalin
bostongeorge985
Profilo
| Newbie
10
messaggi | Data Invio:
dom 2 set 2007 - 13:55
Grazie per il tuo interesse Alessandro,
ma non ho capito cosa devo assegnare al mio 'CrystalReportViewer.ReportSource' affinchè mi possa caricare il report.
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
dom 2 set 2007 - 19:21
>Grazie per il tuo interesse Alessandro,
di nulla.
>ma non ho capito cosa devo assegnare al mio 'CrystalReportViewer.ReportSource' affinchè mi possa caricare il report.
ecco la procedura:
Rifacendomi all'esempio del link che ti avevo allegato:
CrystalReportViewer.ReportSource = Stampa <== Oggetto di tipo ReportDocumenti precedentemente creato
CrystalReportViewer.SelectionFormula = StrFiltro <== Eventuale select per filtrare i dati
CrystalReportViewer.Show()
Ciao
Alessandro
http://blogs.dotnethell.it/alebadalin
bostongeorge985
Profilo
| Newbie
10
messaggi | Data Invio:
lun 3 set 2007 - 18:26
Caro alessandro,
ho inserito il seguente codice nell'evento load del form che contiene il mio crystalreportviewer ma non visualizza nessun dato del database,devo inserire qualcosa tipo imports.....o altro?
Dim Stampa As New ReportDocument
Dim Tabella As Table
Dim StrReport As String = Application.StartupPath & "\fatt.rpt"
Stampa.Load(StrReport)
For Each Tabella In Stampa.Database.Tables
Tabella.SetDataSource(Me.Dssimply)
Next Tabella
view1.ReportSource = Stampa
view1.Show()
-view1 è il mio crystalreportviewer
-dssimply è il mio dataset
freeteo
Profilo
| Guru
6.542
messaggi | Data Invio:
lun 3 set 2007 - 22:21
ciao,
forse nel passare il dataset non passi i dati giusti, andiamo con ordine:
- primo passo: creare il report basato su una struttura di dati che poi dovreai passare tale e quale (ovviamente cambieranno i dati, ma la lista di campi e l'ordine deve essere uguale)
- secondo passo riempire il dataset e magari verificare a debug che ci siano dati dentro (non si sa mai)
- caricato il report come fai tu, nel cicolo dove associ i dati, verifica di associare la tabella giusta del dataset alla tabella gisuta del dataset es:
mioreport.Database.Tables[0].SetDatasource( mioDataset.Tables[0]);
mioreport.Database.Tables[1].SetDatasource( mioDataset.Tables[1]);
...
il tuo ciclo assegnava sempre lo stesso set di dati a tutte le tabelle.
Cmq sia il tuo codice andava abbastanza bene, controlla bene la "mappatura" dei dati tra il dataset e Tabels del report.
ciao.
Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo
bostongeorge985
Profilo
| Newbie
10
messaggi | Data Invio:
mer 5 set 2007 - 18:12
Grazie Matteo,
ho inserito il tuo codice ma non funziona ugualmente.
Non so cosa devo fare perchè i dati li carica ma non li visualizza.
freeteo
Profilo
| Guru
6.542
messaggi | Data Invio:
sab 8 set 2007 - 00:30
ciao,
puoi scorporare il pezzo relativo al report e allegarlo? cosi' verifico direttamente cosa c'e' che non va...
ps: se puoi mettimi anceh un db di esempio che cosi' provo con qualche dato...
ciao.
Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo
bostongeorge985
Profilo
| Newbie
10
messaggi | Data Invio:
sab 8 set 2007 - 10:51
Mi dispiace matteo ma non riesco ad allegare il file perchè è troppo grande.
Potrsti postarmi qualche frammento di codice che conosci tu cosi provo ad adattarlo?
grazie
freeteo
Profilo
| Guru
6.542
messaggi | Data Invio:
sab 8 set 2007 - 11:24
ciao,
conviene che me lo mandi alla mia mail che trovi sul mio profilo, magari prova a togliere le parti che non sono necessarie...grazie
ciao.
Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo
freeteo
Profilo
| Guru
6.542
messaggi | Data Invio:
sab 8 set 2007 - 18:03
ciao,
sto guardando 1po il progetto che mi hai mandato, ho trovato 2 errori:
1- non passi un dataset con le tabelle piene al report, e lo vedi a debug perhce' non hanno righe (Me.Dssimply.Tables(x).Rows.Count è 0)
2- non hai messo i campi trascinandoli dallì'esperto database nel report, hai messo olo campi di testo che sono le "label" della stampa
Risoluzione:
1- abilita il copdice che hai commentato che carica i dati dal db prima di passarli al report (passali settatndo tabella per tabella per sicurezza)
2- nel report, vicino alle label trascina i campi che hai nella "document outline" di vs quando hai aperto il report.Per sicurezza in basso c'e' anche il pseudopulsante per avere un'anteprima senza passare tramite compilazione, verifica anche li che carichi i dati del db e si visualizzino correttamente.
ciao.
Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo
bostongeorge985
Profilo
| Newbie
10
messaggi | Data Invio:
dom 9 set 2007 - 13:13
ciao matteo,
le operazioni che mi hai elencato le ho già fatte e non ho avuto un buon esito.
prima di mandarti il progetto ho cancellato i campi del report associati a al dataset tramite trascinamento.
siccome sono un progammatore ho provato a portare il mio progetto in azienda ma nessuno sa come risolverlo.
se provi ad associare i dati del dataset nel report vedrai che quando avvii l'anteprima di stampa visualizza solo il report con i campi non associati ad alcun dato.
attendo una tua gentile risposta....
freeteo
Profilo
| Guru
6.542
messaggi | Data Invio:
ven 14 set 2007 - 22:40
ciao e scusami del ritardo ma mi ero dimenticato di questo post...perdono!
Cmq sia, pensando al tuo problema, il punto sta nel fatto che Crystal nasce per visualizzare tanti dati, e legarli insieme.
Nel tuo caso invece le tabelle che hai aggiunto al report sono scollegate (ed è giusto visto come hai gestito il progetto) quindi si incarta nel render del report e quindi ti fa questi comportamenti anomali.
Per risolvere ti consiglio di usare i sottoreport al posto delle tabelle, accorpando alcuni dati insieme (left join o cmq risultato "piatto" della query) in modo da snellire il report (e velocizzarlo) ma anche in modo da avere ogni report (sia principale che sottoreport) con una sola tabella.
In poche parole, piu' o meno questa situazione:
- 1a sola tabella nel report principale (vedi se riesci ad accorpare tramite left-join 1po di dati tipo il vettore/spedizione/ etc...)
- 1sottoreport per il destinatario (anche qui se accorpi 1po di dati di indirizzo fai entrambe le aree con una sola tabella)
- 1sottoreport per gli articoli (qui passerai n righe mentrenegli altri passerai una sola riga)
da codice poi invece di passare il setdatasource della table, lo passi al sottoreport relativo
...
Stampa.Subreports("destinatario").SetDataSource(Me.Dssimply.Tables("destinatorio"))
...
Questo è l'unico consiglio che posso darti per avere una struttura piu' semplice e facilemnte gestibile, ma soprattutto funzionante, altrimenti mi sa proprio che non ce la farai a meno di impostare vari llink tra le tabelle e sinceramente non garantisco su prestazioni di report con tante tabelle collegate, io ho sempre lavorato a monte nella query...
ciao.
Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo
bostongeorge985
Profilo
| Newbie
10
messaggi | Data Invio:
sab 15 set 2007 - 11:13
Ciao Matteo,
ho risolto il problema in modo pressochè rudimentale,ma alla fine funziona.
In pratica ho creato tanti dataset per quante sono le tabelle utilizzate nel report, poi a runtime associo i dati, e il gioco è fatto.
Ti ringrazio fortemente per la tua disponibilità.
Gabriele
freeteo
Profilo
| Guru
6.542
messaggi | Data Invio:
sab 15 set 2007 - 11:18
>ho risolto il problema in modo pressochè rudimentale,ma alla
>fine funziona.
>In pratica ho creato tanti dataset per quante sono le tabelle
>utilizzate nel report, poi a runtime associo i dati, e il gioco
>è fatto.
ok fa niente, se sei riuscito e le prestazioni e la facilita' di manutenzione ti sembrano buone per il tuo progetto,ottima soluzione!
>Ti ringrazio fortemente per la tua disponibilità.
figurati, siamo qui per questo...
ciao.
Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo
Torna su
Stanze Forum
Elenco Threads
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 !