Condizione IF su label del Report

giovedì 10 aprile 2008 - 09.15

elsinore Profilo | Junior Member

Ciao a tutti,

volevo sapere se è possibile aggiungere una condizione dell'esistenza di una parametro sulla visualizzazione della label sull'asse X del report....una cosa simile si trova nel campo "Expression" tipo

=IIF(Parameters!XXX.Value , Day(Fields!MIOCAMPO.Value) , Fields!MIOCAMPO.Value) )

mentre nel campo label per ora ho

=Fields!MIOCAMPO.Value


è possibile mettere una sintassi simile al campo "Expression", nel campo Label?

Se non è pèossibile come potrei fare per visualizzare una label diversa a seconda del parametro che valorizzo dal codice?

grazie!

freeteo Profilo | Guru

ciao,
non so se ho capito bene cosa vuoi fare, ma se si tratta del grafico, nelle opzioni del campo che metti nelle x (tastoDX sopra al campo->Proprieta->General->Casella Label->Pulsante Expression)

li dentro puoi fare il solito codice che dicevi anche tu, per controllare cosa far comparire...

ciao.

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

elsinore Profilo | Junior Member

è vero......ho messo lo stesso codice e funziona bene........sto usando il parametro month per raggruppare per mesi

=IIF(Parameters!mesi.Value , Month(Fields!MESI_TABLE.Value)


il mese mi appare come numero......è possibile formattare in modo da farlo apparire come nome?

freeteo Profilo | Guru

ciao,
se è una data il campo mesi, puoi fare il "ToString("MMM")" o cmq usare "String.Format(...)" in modo da formattare l'output del valore...
Altrimenti devi passare prima su una variabile "DateTime" e fare richiamare cmq il ToString come dicevo...

ciao.

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

elsinore Profilo | Junior Member

si è una data il valore.......

quindi posso mettere

=IIF(Parameters!mesi.Value , Month(Fields!MESI_TABLE.Value).ToString("MMM")

no perchè mi appare "MMM"!

freeteo Profilo | Guru

ciao,
no, il Month(..) è un numero
Devi usare l'oggetto data direttamente, al quale dici di stampare il solo "mese", e in formato "lungo" (MMM => Mar, Apr, Gen etc...) oppure "completo" (MMMM => Marzo, Aprile etc...).

Quindi:

=IIF(Parameters!mesi.Value , Fields!MESI_TABLE.Value.ToString("MMM")

questo se "Fields!MESI_TABLE.Value" è un dateTime, altrimenti puoi passare tramite oggetto DateTime:

DateTime.Parse(Fields!MESI_TABLE.Value).ToString("MMM")

dato che è il metodo "ToString" di un DateTime che ha il tipo di "formato" di stringa da restituire...


ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo
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-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5