Poznámka:: To byl nejprve zaúčtovány na www.endusersharepoint.com Tady: http://www.endusersharepoint.com/2009/11/02/Comparing-Dates-in-a-data-View-Web-Part-to-build-a-WSS-KPI-in-SharePoint/.
To je ještě další blog vystavit na porovnání dat v XSL ve webové části zobrazení dat služby SharePoint..
To je můj scénář:
- Mám vlastní seznam.
- Obchodní účel seznamu je podpořit myšlenku nového zaměstnance a jeho úkoly dokončit v rámci 7 dní od zahájení práce.
- Jsou v "zóně varování" po 4 dnů, pokud tyto úkoly nesplnili.
- Chci vytvořit jednoduchý řídicí panel, který zobrazuje zelená, když buď dokončili úkol nebo pokud mají více než 4 dnů na.
- Chci, aby řídicí panel Zobrazit žlutý, jsou-li v oblasti upozornění.
- Chci ukázat červená, pokud není dokončen úkol po datu splatnosti.
Půjčil jsem si od Tento článek na Marc Anderson Blog (http://mdasblog.wordpress.com/2008/02/19/comparing-dates-in-sharepoint-using-xsl/) získat srovnání logiku a Tento článek na www.endusersharepoint.com pro základní myšlenky za řídicí panel (http://www.endusersharepoint.com/2008/12/09/visual-indicators-for-the-masses-kpis-in-wss/) Napsali Toni Frankola.
Měli byste si přečíst podpůrné blogy, Ale takhle půjde realizace:
- Vytvořit typ obsahu (sloupce + CT)
- Vytvořit vlastní seznam a přidružit k typu obsahu.
- Vytvoří stránku webové části.
- Přidat vlastní seznam na stránce webových částí.
- Otevřít stránku v SPD.
- Převést seznam DVWP.
- Úprava XSL pro generování řídicího panelu bitů.
Mám dvě data: Upozornění datum a datum splatnosti. Chcete-li porovnat data, Moje xsl provádí následující činnosti:
<XSL:zvolit> <!-- Když jsou podepsány příručku a politiky, jsme zelené bez ohledu na data. -->
<XSL:Kdy Testovat="@Employee_x0020_Handbook_x003F_ = 1 a @ Security_x0020_Policies = 1"> <IMG src= "/ _layouts/images/KPIDefault-0.GIF" ALT= "Žádné potíže."/> <a HREF= "/ HumanResources/seznamy/nový zaměstnanec Checklist/EditForm.aspx?ID ={@ ID}&Zdroj = / HumanResources/sdílené dokumenty/nové najmout Dashboard.aspx"> [Upravit]</a> </XSL:Kdy> <!-- Žlutý indikátor zobrazit, pokud jsme za datum varování. -->
<XSL:Kdy Testovat= "ddwrt:FormatDateTime(řetězec(ddwrt:Dnes()), 1033, 'RRRRMMDD') >= ddwrt:FormatDateTime(řetězec(@ TaskDueDate), 1033, 'RRRRMMDD')"> <IMG src="/_layouts/images/KPIDefault-2.gif" ALT= "Nedostatečná"/> <a styl= "okraje: 0PX" HREF= "/ HumanResources/seznamy/nový zaměstnanec Checklist/EditForm.aspx?ID ={@ ID}&Zdroj = / HumanResources/sdílené dokumenty/nové najmout Dashboard.aspx"> [Upravit]</a> </XSL:Kdy> <!-- Červený indikátor zobrazit, pokud jste minuli jsme datum splatnosti. -->
<XSL:Kdy Testovat= "ddwrt:FormatDateTime(řetězec(ddwrt:Dnes()), 1033, 'RRRRMMDD') >= ddwrt:FormatDateTime(řetězec(@ Warning_x0020_Date), 1033, 'RRRRMMDD')"> <IMG src="/_layouts/images/KPIDefault-1.gif" ALT= "Varování"/> <a HREF= "/ HumanResources/seznamy/nový zaměstnanec Checklist/EditForm.aspx?ID ={@ ID}&Zdroj = / HumanResources/sdílené dokumenty/nové najmout Dashboard.aspx"> [Upravit]</a> </XSL:Kdy> <!-- Když jsme se sem dostali, jsme dříve, než datum varování, Takže jsme zelený. -->
<XSL:jinak> <IMG src= "/ _layouts/images/KPIDefault-0.GIF" ALT= "Žádné potíže."/> <a HREF= "/ HumanResources/seznamy/nový zaměstnanec Checklist/EditForm.aspx?ID ={@ ID}&Zdroj = / HumanResources/sdílené dokumenty/nové najmout Dashboard.aspx"> [Upravit]</a> </XSL:jinak> </XSL:zvolit> |
Několik klíčových bodů z výše uvedených:
- Pokusil jsem se porovnat data bez použití funkce ddwrt a nikam. Pořád nechápu, že. Jsou data zobrazena správně, Ale obě">"a"<"porovnání vždy selhal. Na konci, ddwrt mi nepřispěchal na pomoc (Dík, znovu, Marc).
- Jsem také zobrazování [Upravit] odkaz na položku. Hlavně jsem to tak, že jsem mohl snadno to vyzkoušet. Samotný odkaz může být užitečné pro někoho snaží přijít na to.
- To je implementováno v SharePoint online a skvěle funguje.
- Obrazy, které reference v adresáři _layouts (/_layouts/images/KPI…) jsou k dispozici z pole v mé prostředí tak, aby byly pro vás zřejmě k dispozici i.
Tady je jak to vypadá pro mě záběr obrazovky:
</Konec>
Za mnou na Twitter na http://www.twitter.com/pagalvin