2016-07-14 17 views
0

Ich habe eine SharePoint-Liste mit Job-Informationen. Ich versuche, eine Spalte namens ORGANIZATION für den Wert Infrastruktur zu filtern. Es gibt eine weitere Spalte in der Liste JOB STATUS aufgerufen, die Werte von hat Offene, Angebot oder gefüllt. Also ich zuerst für alle Infrastructure-Datensätze filtern, dann muss ich die Anzahl der offenen Rollen, angebotenen Rollen und gefüllten Rollen dafür zählen.XSL-Filter eine Spalte und dann Werte in einer anderen Spalte

SAMPLE DATA

ORGANISATION | JOBSTATUS 
______________________________ 
Infrastructure |  FILLED 
Infrastructure |  OPEN 
Business  |  OFFER 
Infrastructure |  OPEN 
Business  |  FILLED 
Infrastructure |  OPEN 
Business  |  OPEN 

CODE

<tr><th>ORGANISATION</th><th>OPEN</th><th>OFFER</th><th>FILLED</th></tr> 

<tr> 
<td>Infrastructure Services</td> 
<td><xsl:variable name="OPEN"> 
     <xsl:for-each select="/dsQueryResponse/Rows/Row[(normalize-space(@Title)='Infrastructure')]">                       
      <xsl:value-of select="count(/dsQueryResponse/Rows/Row[(normalize-space(@JobStatus)='OPEN')])"/>             
     </xsl:for-each> 
    </xsl:variable> 

    <xsl:value-of select="$OPEN"/> 
</td> 

<td>Offer Code</td><td>Filled Code</td></tr> 

Die Gesamtzahl der offenen Rollen ist 44. Die Anzahl der Rollen in offenen Infrastruktur 8. Der obige Code ist 44 zurückkehrt, aber ich es brauchen zurückkommen 8. Kann jemand sehen, wo ich falsch liege?

+0

Können Sie bitte Eingabedaten und einen Screenshot der Ausgabe zusammen mit Frage, damit ich es besser verstehen –

+0

@UmairM hinzugefügt ein kleines Schnipsel von, wie die Liste aussieht, tut dies klären es besser ? –

Antwort

1

Statt for-each nur

<xsl:value-of select="count(/dsQueryResponse/Rows/Row[(normalize-space(@Title)='Infrastructure') and (normalize-space(@JobStatus)='OPEN')])"/> 

Diese Sie geben könnte verwenden, was Sie wollen. Lassen Sie mich wissen, wenn es hilfreich ist :)

+0

Ich habe es vorher versucht, bekam aber einen Fehler auf der Seite, aber was immer ich (Sie) getan habe, hat so funktioniert, danke für Ihre Hilfe! –