Not: Bu ilk at yayınlanmıştır www.endusersharepoint.com Burada: http://www.endusersharepoint.com/ 2009/11/02/comparing-dates-in-a-data-view-web-part-to-build-a-wss-kpi-in-sharepoint/.
Başka bir blog yazısı henüz SharePoint veri görünümü web bölümündeki XSL içindeki tarihler karşılaştırma budur.
Bu benim senaryo olduğunu:
- Özel bir liste var.
- Liste iş amacı içinde tamamlanması gereken yeni bir yaş ve seçtiğin bu kullanıcı görevleri fikri desteklemektir 7 işe başlayan gün.
- Onlar bir "uyarı" sonra bulunan 4 Onlar bu görevleri tamamlandı gün.
- Onlar da görev tamamlandığında veya eğer onlar yeşil gösteren basit bir kontrol paneli oluşturmak istediğiniz daha fazla 4 tam o gün.
- Eğer onlar uyarı bölgesi sarı göstermek için pano istiyorum.
- Onlar vade sonra görev tamamlandı kırmızı göstermek istiyorum.
Ben aldım Bu makale at Marc Anderson'ın Blog (http://mdasblog.wordpress.com/2008/02/19/comparing-dates-in-sharepoint-using-xsl/) karşılaştırma mantığı almak ve Bu makale at www.endusersharepoint.com Pano arkasındaki temel fikir (http://www.endusersharepoint.com/2008/12/09/visual-indicators-for-the-masses-kpis-in-wss/) tarafından yazıldı Toni Frankola.
Sen-meli okumak destekleyen Bloglar, Ama şöyle: uygulama:
- İçerik türü oluştur (sütunlar + CT)
- Özel liste oluşturma ve içerik türüyle ilişkilendirme.
- Web bölümü sayfası oluşturmak.
- Özel liste web bölümü sayfasına ekleme.
- SPD'de sayfasını aç.
- Liste dönüştürmek için DVWP.
- XSL Pano bitlik oluşturmak için değiştirme.
I-si olmak iki Tarih: bir uyarı tarihi ve son tarih. Tarihleri karşılaştırmak için, benim xsl şunları yapar:
<XSL:seçin> <!-- Ne zaman el kitabı ve ilke imzaladı, Biz Tarih ne olursa olsun yeşil. -->
<XSL:Ne zaman test="@Employee_x0020_Handbook_x003F_ = 1 ve @Security_x0020_Policies = 1"> <IMG src= "/ _layouts/imge/KPIDefault-0.GIF" alt"Sorunları ="/> <bir href= "/ Insankaynakları/liste/yeni bir yaş Checklist/EditForm.aspx?KİMLİĞİ ={@ID}&Kaynak = / Insankaynakları/paylaşılan belgeler/yeni Dashboard.aspx Kiralık"> [Düzenle]</bir> </XSL:Ne zaman> <!-- Uyarı tarihi olup olmadığımızı Amber göstergesini göster. -->
<XSL:Ne zaman test"ddwrt =:FormatDateTime(dize(ddwrt:Bugün()), 1033, 'alan') >ddwrt =:FormatDateTime(dize(@TaskDueDate), 1033, 'alan')"> <IMG src="/_layouts/images/KPIDefault-2.GIF" alt"Gecikmiş ="/> <bir Stil"sınır =: 0PX" href= "/ Insankaynakları/liste/yeni bir yaş Checklist/EditForm.aspx?KİMLİĞİ ={@ID}&Kaynak = / Insankaynakları/paylaşılan belgeler/yeni Dashboard.aspx Kiralık"> [Düzenle]</bir> </XSL:Ne zaman> <!-- Vade geçtik kırmızı gösterge göster. -->
<XSL:Ne zaman test"ddwrt =:FormatDateTime(dize(ddwrt:Bugün()), 1033, 'alan') >ddwrt =:FormatDateTime(dize(@Warning_x0020_Date), 1033, 'alan')"> <IMG src="/_layouts/images/KPIDefault-1.GIF" alt"Uyarı ="/> <bir href= "/ Insankaynakları/liste/yeni bir yaş Checklist/EditForm.aspx?KİMLİĞİ ={@ID}&Kaynak = / Insankaynakları/paylaşılan belgeler/yeni Dashboard.aspx Kiralık"> [Düzenle]</bir> </XSL:Ne zaman> <!-- Eğer bu hale geldik, Biz uyarı tarihinden önce, Bu yüzden biz yeşil. -->
<XSL:Aksi takdirde> <IMG src= "/ _layouts/imge/KPIDefault-0.GIF" alt"Sorunları ="/> <bir href= "/ Insankaynakları/liste/yeni bir yaş Checklist/EditForm.aspx?KİMLİĞİ ={@ID}&Kaynak = / Insankaynakları/paylaşılan belgeler/yeni Dashboard.aspx Kiralık"> [Düzenle]</bir> </XSL:Aksi takdirde> </XSL:seçin> |
Yukarıda birkaç anahtar nokta:
- Ddwrt işlevini kullanarak olmadan tarihleri karşılaştırmaya çalıştık ve hiçbir yerde var. Bu hala anlamış değilim. Onlar doğru görüntülenen tarihleri, Ama her ikisi de">"ve"<"karşılaştırmaları her zaman başarısız oldu. Sonunda, ddwrt beni kurtarmaya geldi. (teşekkürler, tekrar, Marc).
- Ben de görüntüleniyor bir [Düzenle] öğesine bağlamak. Ben kolayca bu test böylece esas olarak bunu yaptı.. Bağlantının kendisini anlamaya çalışan biri için faydalı olabilir.
- Bu SharePoint içinde online uygulanır ve güzel çalışıyor.
- Ben _layouts dizininde referans resimleri (/_layouts/imge/KPI...) Böylece de seçebilmeniz için muhtemelen benim ortamda kutudan mevcuttur.
İşte benim için gibi görünüyor, bir ekran görüntüsü:
</sonunda>
Heyecan beni izleyin http://www.twitter.com/pagalvin