So sánh ngày trong một phần Web xem dữ liệu để xây dựng một KPI WSS

Lưu ý: Điều này lần đầu tiên đã được đăng tại www.endusersharepoint.com Ở đây: http://www.endusersharepoint.com/ 2009/11/02/comparing-dates-in-a-data-view-web-part-to-build-a-wss-kpi-in-sharepoint/.

Đây là một blog đăng trên so sánh ngày trong XSL trong một phần web xem dữ liệu trong SharePoint.

Đây là kịch bản của tôi:

  • Tôi có một danh sách tùy chỉnh.
  • Danh sách doanh nghiệp, mục đích là để hỗ trợ ý tưởng của một nhân viên mới và nhiệm vụ của mình để được hoàn tất trong vòng 7 Ngày bắt đầu công việc.
  • Họ đang có trong một khu vực cảnh báo"" sau khi 4 ngày nếu họ đã không hoàn thành những nhiệm vụ.
  • Tôi muốn tạo ra một bảng điều khiển đơn giản cho thấy màu xanh lá cây khi họ có thể hoàn thành nhiệm vụ, hoặc nếu họ có nhiều hơn 4 ngày để hoàn thành nó.
  • Tôi muốn bảng điều khiển để hiển thị màu vàng nếu họ đang có trong vùng cảnh báo.
  • Tôi muốn để hiển thị màu đỏ nếu họ đã không hoàn thành nhiệm vụ sau ngày hết hạn.

Tôi mượn từ bài viết này tại Marc Anderson Blog (http://mdasblog.wordpress.com/2008/02/19/comparing-dates-in-sharepoint-using-xsl/) để có được so sánh logic và bài viết này tại www.endusersharepoint.com cho các ý tưởng cơ bản đằng sau bảng điều khiển (http://www.endusersharepoint.com/2008/12/09/visual-indicators-for-the-masses-kpis-in-wss/) viết bởi Toni Frankola.

Bạn nên đọc các blog hỗ trợ, nhưng việc thực hiện đi như thế này:

  1. Tạo ra một loại nội dung (cột + CT)
  2. Tạo một danh sách tùy chỉnh và kết hợp nó với các loại nội dung.
  3. Tạo một trang web một phần.
  4. Thêm danh sách tùy chỉnh để một phần trang web.
  5. Mở trang trong SPD.
  6. Chuyển đổi bảng đến một DVWP.
  7. Sửa đổi XSL để tạo ra các bảng điều khiển bit.

Tôi có hai ngày: một cảnh báo ngày và một ngày hết hạn. Để so sánh những ngày, xsl của tôi nào sau đây:

 
 <XSL:chọn>
 
 <!-- Khi đã đăng sách hướng dẫn và chính sách, chúng tôi là màu xanh lá cây bất kể ngày. -->
 <XSL:Khi kiểm tra="@Employee_x0020_Handbook_x003F_ = 1 và @Security_x0020_Policies = 1">
 <IMG SRC= "/ _layouts/hình ảnh/KPIDefault-0.GIF" Alt= "Không có vấn đề"/>
 <một href= "/ HumanResources/danh sách/New nhân viên Checklist/EditForm.aspx?ID ={@ ID}&amp;Nguồn = / HumanResources/chia sẻ tài liệu/mới thuê Dashboard.aspx"> [Chỉnh sửa]</một>
 </XSL:Khi>
 
 <!-- Chỉ báo hiển thị hổ phách nếu chúng tôi qua ngày cảnh báo. -->
 <XSL:Khi kiểm tra= "ddwrt:FormatDateTime(chuỗi(ddwrt:Ngày hôm nay()), 1033, 'yyyyMMdd') &gt;= ddwrt:FormatDateTime(chuỗi(@TaskDueDate), 1033, 'yyyyMMdd')">
 <IMG SRC="/_layouts/Images/KPIDefault-2.gif" Alt= "Overdue"/>
 <một phong cách= "biên giới: 0px" href= "/ HumanResources/danh sách/New nhân viên Checklist/EditForm.aspx?ID ={@ ID}&amp;Nguồn = / HumanResources/chia sẻ tài liệu/mới thuê Dashboard.aspx"> [Chỉnh sửa]</một>
 </XSL:Khi>
 
 <!-- Hiển thị màu đỏ chỉ số nếu chúng tôi đã thông qua ngày đáo hạn. -->
 <XSL:Khi kiểm tra= "ddwrt:FormatDateTime(chuỗi(ddwrt:Ngày hôm nay()), 1033, 'yyyyMMdd') &gt;= ddwrt:FormatDateTime(chuỗi(@Warning_x0020_Date), 1033, 'yyyyMMdd')">
 <IMG SRC="/_layouts/Images/KPIDefault-1.gif" Alt= "Cảnh báo"/> 
 <một href= "/ HumanResources/danh sách/New nhân viên Checklist/EditForm.aspx?ID ={@ ID}&amp;Nguồn = / HumanResources/chia sẻ tài liệu/mới thuê Dashboard.aspx"> [Chỉnh sửa]</một>
 </XSL:Khi>
 
 <!-- Nếu chúng tôi nhận được ở đây, chúng tôi sớm hơn ngày tháng cảnh báo, Vì vậy, chúng tôi màu xanh lá cây. -->
 <XSL:Nếu không>
 <IMG SRC= "/ _layouts/hình ảnh/KPIDefault-0.GIF" Alt= "Không có vấn đề"/>
 <một href= "/ HumanResources/danh sách/New nhân viên Checklist/EditForm.aspx?ID ={@ ID}&amp;Nguồn = / HumanResources/chia sẻ tài liệu/mới thuê Dashboard.aspx"> [Chỉnh sửa]</một>
 </XSL:Nếu không>
 
 </XSL:chọn>

Một vài điểm then chốt từ bên trên:

  • Tôi đã cố gắng để so sánh ngày mà không cần sử dụng các chức năng ddwrt và nhận được hư không. Tôi vẫn không hiểu mà. Họ ngày Hiển thị một cách chính xác, nhưng cả hai">"và"<"so sánh luôn luôn thất bại. Cuối cùng, ddwrt đến để cứu hộ của tôi (Cảm ơn, một lần nữa, Marc).
  • Tôi cũng hiển thị một [Chỉnh sửa] liên kết tới khoản mục. Tôi chủ yếu là đã làm điều này vì vậy mà tôi có thể dễ dàng kiểm tra này ra. Liên kết chính nó có thể hữu ích cho ai đó cố gắng để con số nó ra.
  • Điều này được thực hiện trong SharePoint trực tuyến và làm việc độc đáo.
  • Những hình ảnh tôi tham chiếu trong thư mục _layouts (/_layouts/hình ảnh/KPI...) có sẵn ra khỏi hộp trong môi trường của tôi để họ có thể có sẵn cho bạn là tốt.

Đây là một ảnh chụp màn hình của những gì nó trông giống như đối với tôi:

image

</kết thúc>

Đăng ký vào blog của tôi.

Theo tôi trên Twitter lúc http://www.twitter.com/pagalvin

Để lại câu trả lời

Địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu *