SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




Addieren von zwei Spalten in eine dritte mit XSL

Unbeantwortet Dieser Beitrag hat 8 Antworten

Ohne Rang
15 Beiträge
Denver erstellt 10 März 2014 11:31
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Guten Morgen Sharepoint Community :)

Ich bin gerade dabei mich etwas tiefgreifender mit Sharepoint zu beschäftigen und würde nun gerne den Wert zweier Spalten addieren über XSL.
Doch irgendwie klappt das nicht.
Habe die Funktion

<xsl:value-of name="Summe_Test" select="$Wert1 + $Wert2"/>

gefunden, allerdings habe ich ja keine Variable sondern Spalten, und es funktioniert dementsprechend auch (leider) nicht.
Am Ende will ich übrigens das Ergebnis noch in eine andere Liste speichern, ist das möglich?

MfG
Dennis J.

Alle Antworten

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 10 März 2014 13:25
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

[quote user="Denver"] habe ich ja keine Variable sondern Spalten[/quote]

Die Werte werden von SharePoint als Attribute geliefert, also funktioniert @Spalte1+@Spalte2. Aber warum machst Du das nicht einfach mit einer berechneten Spalte?

[quote user="Denver"]Am Ende will ich übrigens das Ergebnis noch in eine andere Liste speichern, ist das möglich?[/quote]

Nicht mit XSL. Wenn schon, könntest Du per XSL JavaSCript erzeugen, das die Werte dann irgendwo speichert. Das würde aber bei jedem Aufruf geschehen...

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
15 Beiträge
Denver Als Antwort am 10 März 2014 13:45
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

[quote user="Andi Fandrich"]

[quote user="Denver"] habe ich ja keine Variable sondern Spalten[/quote]

Die Werte werden von SharePoint als Attribute geliefert, also funktioniert @Spalte1+@Spalte2. Aber warum machst Du das nicht einfach mit einer berechneten Spalte?

[/quote]

Das wäre ja zu einfach :P
Nein, eigentlich ist es so, das ich sone Art "Arbeitszeit" addierer Entwickeln will. Dementsprechenden sollen alle werte aus Liste 1 Spalte 1 addiert und in eine zweite Liste übertragen werden. Natürlich soll auf änderungen reagiert werden, wenn man sich z.B. bei der Arbeitszeit vertippt hat. Mit Workflows habe ich das ganze realisieren können, aber das ist mehr eine NOT Lösung, da im worst case fall vielleicht im selben moment 1000 Benutzer Ihre Arbeitszeit ändern und dann schwirren da 1000 workflows rum.
Das sollte quasi so eine erste fingerübung werden fürs eigentliche Ziel :D

[quote user="Andi Fandrich"]

Nicht mit XSL. Wenn schon, könntest Du per XSL JavaSCript erzeugen, das die Werte dann irgendwo speichert. Das würde aber bei jedem Aufruf geschehen...

[/quote]

Mhh dann muss ich das nochmal durchdenken :/

und vielen Dank an dieser stelle :)

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 10 März 2014 14:35
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Eigentlich ist das ein typischer Fall für einen ausprogrammierten EventReceiver. Alles andere sind wirklich Notlösungen. Wobei es technisch nicht wirklich ein Problem ist, wenn da 1.000 Workflows rumschwirren. Die laufen mit sehr niedriger Priorität im Hintergrund (was zur Überlagerung von Teilrechnungen und damit zu unsauberen Daten führen kann).

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
15 Beiträge
Denver Als Antwort am 11 März 2014 14:31
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Mal ne kurze zwischenfrage, hab hier diese Funktion gefunden

http://blog.mindbusiness.de/blog/2008/10/30/formatierte-felder-und-ampelfunktionen-in-sharepoint-mit-javascript/

Da in SP 2013 der Quelltext editor nicht mehr zur verfügung steht, habe ichs mit dem skript editor probiert, damit gehts aber auch nicht :/

Gibts ne alternative?

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 11 März 2014 15:20
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Du kannst das Script auch per SharePoint Designer fest in die Seite schreiben. Oder eine separate JS-Datei erstellen und die über den Inhaltseditor referenzieren.

Und zum Debuggen des Scripts kannst Du z.B. die Entwicklertools im IE verwenden (F12).

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
15 Beiträge
Denver Als Antwort am 18 März 2014 12:12
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Srry für die späte antwort, war im (Kurz-) Urlaub

Hab die Javascript datei in die maste page eingefügt, hat trotzdem nicht funktioniert :/

Muss ich die JS Datei als Text datei erstellen und dann mit dem Inhaltseditor referenzieren? Das hat nämlich auch nicht geklappt :/

 

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 18 März 2014 12:27
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hört sich so an, als ob Du in beiden Fällen einfach nicht den richtigen Link verwendest.

Am einfachsten ist es meist, wenn man server-relative Pfade angibt. Wenn Deine Website unter http://sharepoint/sites/site1 erreichbar ist, lautet der server-relative Pfad /sites/site1. Beachte den führenden Schrägstrich. Wenn die JS-datei z.B. in der Formatbibliothek liegt, lautet der Pfad also
/sites/site1/Style Library/MyScript.js

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
15 Beiträge
Denver Als Antwort am 18 März 2014 15:47
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

hab meinen Fehler gefunden:

Hatte berechnete textzeile genommen, nicht berechnete zahl, jetzt geht ._.

Vielen dank!