請注意: 這首先被張貼在 www.endusersharepoint.com 在這裡: http://www.endusersharepoint.com/2009/11/02/comparing-dates-in-a-data-view-web-part-to-build-a-wss-kpi-in-sharepoint/.
這是另一篇博客文章比較中 XSL 資料檢視 web 部件的 SharePoint 中的日期.
這是我的方案:
- 我有一個自訂清單.
- 清單中的經營宗旨是支援新員工和任務內完成的想法 7 天開始這份工作的.
- 他們是在一個"預警區"後 4 如果他們還沒有完成這些任務的天.
- 我想要創建一個簡單的儀表板,顯示綠色,當他們要麼已經完成了任務,或者如果他們有更多 4 天的時間完成它.
- 我想要顯示黃色的如果他們是在警告區的儀表板.
- 我想顯示紅色,如果他們還沒有完成這項任務後的到期日期.
我從借 這篇文章 在 馬克 · 安德森 博客 (http://mdasblog.wordpress.com/2008/02/19/comparing-dates-in-sharepoint-using-xsl/) 為了得到比較邏輯和 這篇文章 在 www.endusersharepoint.com 在儀表板背後的基本思想 (http://www.endusersharepoint.com/2008/12/09/visual-indicators-for-the-masses-kpis-in-wss/) 寫的 托妮 · Frankola.
您應該閱讀支援博客, 但執行這樣:
- 創建內容類型 (列 + CT)
- 創建自訂清單,並將它與該內容類型相關聯.
- 創建 web 部件頁.
- 向 web 部件頁中添加的自訂清單.
- 打開 SPD 中的頁面.
- 將清單轉換為 DVWP.
- 修改 XSL 生成的儀表板位.
我有兩個日期: 警告日期和到期日期. 要比較的日期, 我的 xsl 將執行以下:
<xsl:選擇> <!-- 手冊和政策簽署時, 我們是綠色而不考慮日期. -->
<xsl:當 測試="@Employee_x0020_Handbook_x003F_ = 1 和 @Security_x0020_Policies = 1"> <img src="/ _layouts/圖像/KPIDefault-0.GIF" alt="沒有問題"/> <一 href="/ HumanResources/清單/新員工 Checklist/EditForm.aspx?ID ={@ ID}&源 = / HumanResources/共用檔或新雇 Dashboard.aspx"> [編輯]</一> </xsl:當> <!-- 顯示琥珀色指示燈是否我們過去的警告日期. -->
<xsl:當 測試="ddwrt:已被格式化為(字串(ddwrt:今天()), 1033, '' yyyyMMdd) >ddwrt =:已被格式化為(字串(@TaskDueDate), 1033, '' yyyyMMdd)"> <img src="/_layouts/images/KPIDefault-2.GIF" alt="過期"/> <一 樣式="邊界: 0px" href="/ HumanResources/清單/新員工 Checklist/EditForm.aspx?ID ={@ ID}&源 = / HumanResources/共用檔或新雇 Dashboard.aspx"> [編輯]</一> </xsl:當> <!-- 顯示紅色指示燈是否我們傳遞的截止日期. -->
<xsl:當 測試="ddwrt:已被格式化為(字串(ddwrt:今天()), 1033, '' yyyyMMdd) >ddwrt =:已被格式化為(字串(@Warning_x0020_Date), 1033, '' yyyyMMdd)"> <img src="/_layouts/images/KPIDefault-1.GIF" alt="警告"/> <一 href="/ HumanResources/清單/新員工 Checklist/EditForm.aspx?ID ={@ ID}&源 = / HumanResources/共用檔或新雇 Dashboard.aspx"> [編輯]</一> </xsl:當> <!-- 如果我們能在這裡, 我們早于警告日期, 所以我們綠色. -->
<xsl:否則> <img src="/ _layouts/圖像/KPIDefault-0.GIF" alt="沒有問題"/> <一 href="/ HumanResources/清單/新員工 Checklist/EditForm.aspx?ID ={@ ID}&源 = / HumanResources/共用檔或新雇 Dashboard.aspx"> [編輯]</一> </xsl:否則> </xsl:選擇> |
從上面的幾個關鍵點:
- 我試圖不使用 ddwrt 功能比較日期和沒有成功. 仍不明白. 他們顯示正確的日期, 但兩者都">"和"<"比較總是失敗. 在結束, ddwrt 來拯救我 (謝謝, 再次, 馬克 ·).
- 我也要顯示 [編輯] 連結到該專案. 我主要是做這,我可以輕鬆地測試一下. 連結本身可能對某人試圖找出有用.
- 這在 SharePoint 中實現線上和很好地工作.
- 引用 _layouts 目錄中的圖像 (/_layouts/圖像/KPI......) 是提供開箱即用在我的環境中,所以他們可能供您以及.
這裡是它對我來說是什麼樣子的螢幕截圖:
</結束>
跟我在 Twitter 上 http://www.twitter.com/pagalvin