Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Notestime am 21.03.07 - 08:36:42

Titel: Darstellung bei Fehler in Webansicht
Beitrag von: Notestime am 21.03.07 - 08:36:42
Hallo!

Ich habe folgendes Problem:

In einer Webansicht (Page mit eingeb. View) und Single Categorie möchte ich in der letzten Zeile die Summe der Einträge von einer Spalten ausgeben.
Das mache ich mit
@Text(@Sum(@DbColumn("":""; ""; "bestellungen-auswahl-webmeine"; 2 )))
und das funktioniert auch wunderbar, solange die View mindestens 1 Dokument enthält.

Wenn aber keine Dokumente vorhanden sind, erhalte ich von dem @Sum einen Fehler und ich krieg ihn ums Verrecken nicht weg (siehe Bild)

Hab schon sämtliche Fehlerbehandlungen versucht, z.B.

@IfError(@Text(@Sum(@DbColumn("":""; ""; "bestellungen-auswahl-webmeine"; 1 )));@Text(@Sum(0:0)))

oder

@IfError(@Text(@Sum(@DbColumn("":""; ""; "bestellungen-auswahl-webmeine"; 1 )));0)

oder

@IfError(@Text(@Sum(@DbColumn("":""; ""; "bestellungen-auswahl-webmeine"; 2 )));"0")

auch mit @if(!@Text(@Sum(@DbColumn("":""; ""; "bestellungen-auswahl-webmeine"; 2 )));"") usw.

Kann mir bitte jemand einen Tipp geben?

Danke und LG
Bernd

P.S. Versuche ich bei Fehler eine 0 auszugeben, erwartet er einen Text. Versuche ich eine "0" auszugeben, erwaretet er eine Zahl. Ja was nun?

Ich hab ganz vergessen, zu schreiben, wie ich die letzte Zeile ausgebe:

Nach der eingeb. View kommt

<tr><td width="15%"><b>Summe</b></td><td width="15%">&nbsp;</td><td width="10%">&nbsp;</td><td width="10%"><b><Berechneter Wert> Stück</b></td><td width="25%">&nbsp;</td><td width="25%"><b><Berechneter Wert> EUR</b></td></tr></table>

Sie Summenberechnungen mache in als <Berechneter Wert>(e)

Titel: Re: Darstellung bei Fehler in Webansicht
Beitrag von: Gandhi am 21.03.07 - 16:48:45
Dreisterweise würde ich diesen Fehler per JavaScript entfernen...
Einfach ein DIV/SPAN um das fragliche Element bauen.
Das geht wunderbar, wenn Du den Wert in einem Feld berechnet ausgibst..
if (document.getElementById("Feldname")="FEHLER") document.getElementById('Feldname')=""

Habs nicht ausprobiert - aber ein Versuch schadet kaum.
FEHLER kann irgendwas sein - am Besten noch mit einer Stringfunktion kombinieren.
Titel: Re: Darstellung bei Fehler in Webansicht
Beitrag von: Notestime am 21.03.07 - 17:17:37
Hallo Gandhi,

dnkae für Dein Antwort, aber so krieg ich das hin, da ich mich nicht auf ein Feld beziehe, sondern die Werte in einer Spalte summiere.

Ich wüsste nicht, wie ich das weiter anstellen könnte mit Deinem Tipp.
Hilf mir mal bitte auf die Sprünge.

In <Berechner wert> steht halt nur drin
@Text(@Sum(@DbColumn("":""; ""; "bestellungen-auswahl-webmeine"; 1 )))

LG
Bernd
Titel: Re: Darstellung bei Fehler in Webansicht
Beitrag von: Gandhi am 21.03.07 - 18:34:21
Naja,
mit JS kannst Du ja abfragen, was in einem Feld (HTML Feld in dem Fall) steht.
Also kannst Du auch testen, ob das eine Zahl ist, oder ein String mit dem Wort 'Error' da drin oder ob es ganz leer ist.

Wenn Du doch bei der klassischen Notes variante bleiben willst würde ich folgendermassen vorgehen:
Den Ausdruck zerlegen: Wobei ist das Problem:
Was gibt der Lookup zurück?
Was gibt die Summe zurück?
Was gibt der Text zurück?

An sich funktioniert das mit @ifError bei mir immer
Titel: Re: Darstellung bei Fehler in Webansicht
Beitrag von: Notestime am 21.03.07 - 20:09:43
Habs hinbekommen mit

@IfError(@Sum(@DbColumn("":""; ""; "bestellungen-auswahl-webmeine"; 2 ));0)

Danke

Gruß
Bernd