Campi non valorizzati come se fossero NULL

mercoledì 15 febbraio 2012 - 11.11
Tag Elenco Tags  C#  |  .NET 3.5  |  Windows XP  |  Visual Studio 2008  |  SQL Server 2008 R2  |  Crystal Reports XI

ysdemarc Profilo | Expert

Ho un Report composto con sottoreports

quindi supponiamo il dataTable del report principale tira fuori i dati del tipo :
Zona int,
Codice char(6),
Nome varchar(100),
Indirizzo varchar(250)

nel sotto report ho un datatable del tipo:
Zona int,
Codice char(6),
Elemento char(1),
DescrizioneElemento varchar(150),
Imp1 money
Imp2 money
Imp1Zona money
Imp2Zona money

i reports sono collegati per i campi Zona e Codice

Il problema è questo:
Nel report principale viene visualizzato tutto perfettamente
nel sotto report vengono visualizzati in esecuzione solo i campi Zona, Codice e Descrizione Elemento tutti gli altri vengono stampati come se fossero campi NULL
però se al posto di visualizzare il campo nudo e crudo lo metto dentro un campo formula questi vengono visualizzati correttamente.
Il tutto potrebbe andarmi bene salvo che se inserisco un grafico questo non verrà mai visualizzato sia utilizzando i dati nudi e crudi sia utilizzando i campi all0'interno delle formule.

Ho installato la SP1 di crystal report ma il bug non è risolto.

PS: dimenticavo se clicco in fase di sviluppo in "Anteprima Report principale" il report è visualizzato e valorizzato correttamente. Ho ricontrollato più volte la posizione dei campi ed il loro nome con quello della query sql, guardato i dati che tira fuori la query ed sembra essere tutto corretto. Sto uscendo pazzo!!

Datemi una dritta per favore!!!

PS: ho provato ad inserire nel sottoreport un raggruppamento per il campo Elemento e non appena durante l'esecuzione faccio un qualsiasi SetDatasource ottengo l'errore seguente:
Nome di campo sconosciuto.
Errore nel file C:\DOCUME~1\admin\IMPOST~1\Temp\temp_1cb11d56-6563-4954-90d0-7a224af9a4c4 {C77F26DE-A726-4DBA-9063-2E8C55319062}.rpt:
Errore nella formula <CodiceElemento>.
'{comando.Elemento};'
Nome di campo sconosciuto.

che significa?.. non c'è errore e comunque da "Anteprima Report principale" è sempre tutto ok


Ciao

PS: si tratta di CR 10.5 ossia Crystal report basic per visual studio 2008

freeteo Profilo | Guru

Ciao,
se non ricordo male l'anteprima lavora su valori fittizi, quindi non presi dalla sorgente dati che gli passi, e forse è proprio per questo che hai errore a runtime.
A parte questo, il problema dei nulli potresti provare a risolverlo mettendo al posto del campo diretto, un controllo che sia nullo, nelle formule:
IsNull({campo})

Perchè ricordo che Crystal è abbastanza rompi scatole per il fatto che un'operazione su un campo nullo, da errore, oppure torna un valore cmq sbagliato...cose di questo tipo, quindi ricordo ad esempio che per vedere se un campo era > 0 mettevo sempre nelle formule un controllo con la funzione IsNull...

Ciao.

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

ysdemarc Profilo | Expert

non c'entra niente. I campi non sono NULL perchè li so per certi, non è un problema di verificare se o no sono valorizzati.

E' un bug di crystal report di visual studio che non è stato isolto neanche con la versione 2010.

ciao
Vincenzo
Programmatore sbilenco
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