Zum Inhalt springen

VS2008 (Report), Summe:Error wenn Zelle leer


hExapod4

Empfohlene Beiträge

Hallo zusammen:

Folgende Problemstellung:

Ich lese aus meiner SQL-Datenbank im ReportViewer von VS2008 eine Tabelle aus. Die einzelnen Zellen sind varchar und werden auch richtig angezeigt und im Report konvertiert (Beispiel: CDbl(Fields!rund_6.Value)).

Unter der Tabelle bilde ich dann noch die Summer der Spalte.

Problem hierbei ist aber, dass dieses nur funktioniert, wenn in jeder Zelle einer Spalte auch ein Wert steht. Ist eine Zelle leer, bringt er mir unten einen Error.

Weiß jemand, wie man dieses umgehen kann und trotzdem unten die Summe rauskommt? Ich will wegen der Übersichtlichkeit nicht überall eine 0 eintragen lassen, sondern die Zelle lieber frei lassen. :old

Danke bereits im Vorraus!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hmm...um eine Summe zu bilden, müssten die Werte in einen Zahlentyp umgewandelt werden. Macht das der ReportViewer automatisch?

Arrggg...ich hätte richtig lesen sollen. Es gibt ja eine Funktion :-)

Kann man der Funktion nicht sagen, dass ein leeres Feld, was man in einer Datenbank eh nicht haben sollte, dann 0 ist?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Weiß jemand, wie man dieses umgehen kann und trotzdem unten die Summe rauskommt? Ich will wegen der Übersichtlichkeit nicht überall eine 0 eintragen lassen, sondern die Zelle lieber frei lassen. :old

Ich pers. kenne den Reportviewer nicht.

Aber wie wäre es wenn du zwar eine 0 einträgst sie aber in "weiß" ausgibst, somit wäre sie für den Endanwender nicht sichtbar und du kannst deine Summe bilden.

Gruß Hans-Jörg

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

Du kannst die Funktionen jedes einzelnen Feldes ansehen und auch ändern.

Rechtsklick aufs entsprechende Textfeld und hier im Kontextmenü "Ausdruck" wählen. Im oberen Bereich wird die die Funktionalität angezeigt mit der Daten in das entsprechende Feld geschrieben werden.

Hier prüfst Du den Wert auf NULL (hier wird VB verwendet!):


=IIF(Fields!rund_6.Value Is Nothing,"0",Fields!Fields!rund_6.Value)

Wird NULL zurückgegeben wird dann eine "0" eingetragen, ansonsten eben der Feldwert.

Gruß,

Thomas

PS: der ReportViewer ist "nur" ein Control welches dir mehr Möglichkeiten zur Verfügung stellt. Die Definition des Berichts erfolgt in RDL (Report Definition Language), wenn die Datei (*.rdlc) mit einem Editor geöffnet wird, findet man hier reines XML.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also ich habe mir eine Tabelle zum Test gebaut:

Bezeichnung (nvarchar(50)) NOT NULL

NrAlsVarchar (nvarchar(10)) ALLOWS NULL

Zwei Zeilen enthalten im Feld NrAlsVarchar NULL-Werte.

Im Report wird nach dem Einbau der Formel in die "Summenberechnung" der Spalte die Summe auch korrekt berechnet. Die Felder der Tabelle bleiben leer, da ich den Wert der einzelnen Felder nicht anfasse sondern nur in der Summenberechnung eine Formel einbaue.

Formel an der richtigen Stelle?

Oder noch Formeln in den einzelnen Feldwerten der Tabelle?

Gruß,

Thomas

Link zu diesem Kommentar
Auf anderen Seiten teilen

Da ich hier etwas von Kürzeln eintragen gelesen habe...

Es wird also auch Text dort eingetragen?

Das heißt man müsste auch die Möglichkeit abfangen, dass versucht wird mit einem String zu rechnen:


=Sum(CDbl(IIF(Fields!NrVarchar.Value Is Nothing Or Fields!NrVarchar.Value = "","0",IIF(ISNUMERIC(Fields!NrVarchar.Value),Fields!NrVarchar.Value, "0"))))

So wird zwar der Text in einem Feld angezeigt in der Formel allerding wie eine Null (0) behandelt.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...