2012-04-14 11 views
0

Ich habe eine Anforderung, numerische Werte in einem clientseitigen Bericht mit Dezimalstellen nur anzuzeigen, wenn diese Dezimalstellen verwendet werden. Die Quelldaten sind ein Decimal-Datentyp, der aus einer SQL-Money-Spalte besteht.Numerische Formatierung in SQL-Bericht (lokal, rdlc)

Zum Beispiel:

  • 28,0000 ist als "28" gezeigt werden
  • 2.5000 ist, wie gezeigt werden, "2.5"
  • 2,5500 ist als "2,55"
gezeigt werden,

Ich kann keine Formatierungsoption finden, um dies zu tun. Der nächste, den ich in "#, ###. ####" bekommen habe, zeigt aber immer noch den Dezimalpunkt, auch wenn nichts dahinter steht.

Vorschläge bitte.

Antwort

1

Angenommen, Ihr Datenfeld ist UnitPrice, dann können Sie einen Ausdruck auf das Format des Textfelds anwenden (Rechtsklick ===> Textfeld Eigenschaften => Nummer => Benutzerdefiniert => drücken Sie auf fx) zeige den Wert für das Feld wie dieses.

=IIF(Floor(Fields!UnitPrice.Value) = Fields!UnitPrice.Value,"#,0;(#,0)", 
IIF(Floor(Fields!UnitPrice.Value * 10) = Fields!UnitPrice.Value * 10,"#,0.0;(#,0.0)","#,0.00;(#,0.00)") 
) 

Hoffe diese Hilfe.

+0

Genau das, was ich wollte. Vielen Dank. –

0

Nehmen wir ein Beispiel, wie Betrag Ihr Feld Bildschirm

In dem Ausdruck ist gerade diese folgende Zeile hinzufügen.

Format(CDec(Fields!Amount.Value),"#.##")