Notă: Aceasta a fost prima postat la www.endusersharepoint.com aici: http://www.endusersharepoint.com/ 2009/11/02/comparing-dates-in-a-data-view-web-part-to-build-a-wss-kpi-in-sharepoint/.
Acest lucru este încă un alt blog post pe comparând datele în XSL în vedere date parte web în SharePoint.
Acest lucru este meu scenariu:
- Am o listă particularizată.
- Afaceri scopul lista este de a sprijini ideea de un nou angajat şi sarcinile sale să fie finalizate în termen de 7 zile începe treaba.
- Ele sunt într-o "zonă de avertizare" după 4 zile în cazul în care acestea nu au finalizat aceste sarcini.
- Vreau să creeze un tablou de bord simplă care arată verde atunci când au încheiat fie sarcina sau dacă au mai mult 4 zile să-l completeze.
- Vreau tabloul de bord pentru a arăta galben în cazul în care acestea sunt în zona de avertizare.
- Vreau să să arate roşu, dacă acestea nu au finalizat sarcina după data scadentă.
Am împrumutat de la Acest articol la Marc Anderson blog (http://mdasblog.wordpress.com/2008/02/19/comparing-dates-in-sharepoint-using-xsl/) pentru a obţine comparaţie logică şi Acest articol la www.endusersharepoint.com pentru ideile de bază din spatele tabloul de bord (http://www.endusersharepoint.com/2008/12/09/visual-indicators-for-the-masses-kpis-in-wss/) scris de Toni Frankola.
Ar trebui să citiţi Blogurile justificative, dar implementarea merge asa:
- Crea un tip de conținut (coloane + CT)
- Crea o listă personalizată şi l-a asociat cu tipul de conținut.
- Creaţi o pagină parte web.
- Adaugă listă particularizată la pagina parte web.
- Deschide pagina în SPD.
- Conversia listei la o DVWP.
- Modifica XSL pentru a genera biţi tabloul de bord.
Am două date: o dată de avertizare şi o dată scadentă. Pentru a compara datele, xsl meu are următoarele:
<XSL:alege> <!-- Când sunt semnate atât manual, cât şi politici, Suntem verde indiferent de dvs.. -->
<XSL:când test="@Employee_x0020_Handbook_x003F_ = 1 si @Security_x0020_Policies = 1"> <IMG src= "/ _layouts/imagini/KPIDefault-0.GIF" alt= "Fara probleme"/> <o href= "/ HumanResources/liste/nou angajat Checklist/EditForm.aspx?ID ={@ID}&Sursa = / HumanResources/Shared documente/noi angaja Dashboard.aspx"> [Editare]</o> </XSL:când> <!-- Indicatorul Arată culoarea chihlimbarului dacă suntem trecut la data de avertizare. -->
<XSL:când test= "ddwrt:Functia(şir(ddwrt:Astăzi()), 1033, "AAAALLZZ") >= ddwrt:Functia(şir(@TaskDueDate), 1033, "AAAALLZZ")"> <IMG src="/_layouts/images/KPIDefault-2.gif" alt= "Restante"/> <o stil= "de frontieră: 0px" href= "/ HumanResources/liste/nou angajat Checklist/EditForm.aspx?ID ={@ID}&Sursa = / HumanResources/Shared documente/noi angaja Dashboard.aspx"> [Editare]</o> </XSL:când> <!-- Arată indicatorul roşu dacă ne sunteţi trecut data scadenţei. -->
<XSL:când test= "ddwrt:Functia(şir(ddwrt:Astăzi()), 1033, "AAAALLZZ") >= ddwrt:Functia(şir(@Warning_x0020_Date), 1033, "AAAALLZZ")"> <IMG src="/_layouts/images/KPIDefault-1.gif" alt= "Avertisment"/> <o href= "/ HumanResources/liste/nou angajat Checklist/EditForm.aspx?ID ={@ID}&Sursa = / HumanResources/Shared documente/noi angaja Dashboard.aspx"> [Editare]</o> </XSL:când> <!-- În cazul în care vom ajunge aici, Suntem anterioară datei de avertizare, Deci suntem verde. -->
<XSL:în caz contrar> <IMG src= "/ _layouts/imagini/KPIDefault-0.GIF" alt= "Fara probleme"/> <o href= "/ HumanResources/liste/nou angajat Checklist/EditForm.aspx?ID ={@ID}&Sursa = / HumanResources/Shared documente/noi angaja Dashboard.aspx"> [Editare]</o> </XSL:în caz contrar> </XSL:alege> |
Câteva puncte cheie de mai sus:
- Am încercat să compare datele fara a folosi functionalitatea de ddwrt şi am nicăieri. Eu încă nu înţeleg că. Ei datele afişate corect, dar ambele">"şi"<"comparatii întotdeauna a eşuat. În cele din urmă, ddwrt a venit la mea de salvare (mulţumesc, din nou, Marc).
- Eu sunt, de asemenea, afişează un [Editare] leagă de elementul. Am făcut în principal acest lucru, astfel încât am putut testa cu uşurinţă acest lucru. Link-ul în sine poate fi utilă pentru cineva care încearcă să dau seama.
- Acest lucru este implementat în SharePoint online şi lucrări frumos.
- Imagini am de referinţă în directorul _layouts (/_layouts/imagini/KPI-ul...) sunt disponibile din caseta din mediul meu, astfel încât acestea sunt, probabil, disponibile pentru tine, precum şi.
Aici este un ecran shot de ceea ce se pare ca pentru mine:
</scop>
Urmaţi-mă pe Twitter, la http://www.twitter.com/pagalvin