Frage

Das ähnelt wie diese Frage Aber ich konnte das vorgeschlagene nicht bekommen sumAll funktionieren zu arbeiten. Ich habe auch verschiedene Spalten zu summieren und es scheint nur albern, eine separate Vorlage für jede Spalte zu haben, die ich summieren möchte. Ich habe eine Spalte, in der nicht alle Zeilen einen Wert haben. Ich möchte die Zeilen zusammenfassen, die Werte haben. Ich habe Folgendes ausprobiert:

<xsl:value-of select="sum($nodeset/@MyField[string-length(@MyField) &gt; 0])" />

Dies scheint, als sollte es funktionieren. Ich bekomme jedoch 0 als Gesamtzahl. Die gleiche Datenansicht zeigt einzelne Zeilen unterhalb der Gesamtsumme mit Werten wie 300, 160 usw., sodass 0 offensichtlich eine falsche Gesamtsumme ist. Ich habe versucht zu wickeln @MyField in number(), aber am Ende werde ich NaN als insgesamt. Alle Beispiele, über die ich Online gesehen habe, sprachen translate() Und mit Dezimalstellen im britischen Stil zu tun, aber ich arbeite mit Dezimalstellen im amerikanischen Stil und sehe keine individuellen Werte mit Kommas.

Wie kann ich diese Spalte zusammenfassen?

War es hilfreich?

Lösung

Ich bin mir nicht sicher, dass dies Ihre gesamte Frage beantwortet, da ich mich nicht sicher bin, dass Sie Dezimalstellen usw. verwenden.

Versuchen Sie, die String-Länge (@myfield) durch String-Length (.) Zu ersetzen:

<xsl:value-of select="sum($nodeset/@MyField[string-length(.) &gt; 0])" />

Ich habe dies schnell getestet und dies gibt einen Wert zurück, bei dem Ihr Ausdruck 0 zurückgegeben hat. Daher sollte es einen großen Beitrag zur Lösung Ihrer Probleme leisten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit sharepoint.stackexchange
scroll top