Приметити: ово је први пут објављена у ввв.ендусерсхарепоинт.цом овде: хттп://www.endusersharepoint.com/2009/11/02/comparing-dates-in-a-data-view-web-part-to-build-a-wss-kpi-in-sharepoint/.
Ово је још један блог пост у односу на датуме у КССЛ података делу приказа веб у СхареПоинт.
Ово је мој сценарио:
- Имам прилагођене листе.
- Пословни циљ листе је да подржи идеју новог запосленог и његове / њене задатке да буде завршен у року 7 дана од дана покретања задатка.
- Они су у "зони упозорења" након 4 дана ако нису завршили ове задатке.
- Желим да направим једноставну контролну таблу која светли зелено када су или завршили задатак, или ако имају више од 4 дана да се заврши.
- Желим да покаже инструмент табла жуте ако су у зони упозорења.
- Желим да покажем црвено ако нису завршили задатак након датума.
Позајмио сам од овај чланак у Марк Андерсон блог (http://mdasblog.wordpress.com/2008/02/19/comparing-dates-in-sharepoint-using-xsl/) да логику поређења и овај чланак у ввв.ендусерсхарепоинт.цом за основне поставке контролне табле (http://www.endusersharepoint.com/2008/12/09/visual-indicators-for-the-masses-kpis-in-wss/) написао Тони ФРАНКОЛА.
Требало би да прочитате пратеће блогове, али примена иде овако:
- Креирање типа садржаја (колоне + ЦТ)
- Креирање прилагођене листе и повезати га са типом садржаја.
- Креирање веб страницу део.
- Додајте прилагођене листе на страници са Веб сегментима.
- Отворите страницу у СПД.
- Претвори листу ка ДВВП.
- Измените КССЛ за генерисање бита Дасхбоард.
Имам два датума: a warning date and a due date. To compare the dates, мој ксл ради следеће:
<клс:изабрати> <!-- Када су и приручник и политика су потписани, ми смо зелени, без обзира на датум. -->
<клс:када тест="@Employee_x0020_Handbook_x003F_ = 1 @ Сецурити_к0020_Полициес и = 1"> <имг срц="/_layouts/images/KPIDefault-0.ГИФ" стар="No problems"/> <a хреф="/HumanResources/Lists/New Employee Checklist/EditForm.aspx?ИД ={@ ИД}&ампер;Извор = / ХуманРесоурцес / Схаред Доцументс / Нови аутомобила Дасхбоард.аспк"> [Измени]</a> </клс:када> <!-- Схов амбер индикатор да ли смо поред упозорења датума. -->
<клс:када тест="ddwrt:ФорматДатеТиме(ниска(ддврт:Данас()), 1033, 'ИИИИММДД') &гт;= Ддврт:ФорматДатеТиме(ниска(@ ТаскДуеДате), 1033, 'ИИИИММДД')"> <имг срц="/_layouts/images/KPIDefault-2.GIF" стар="Overdue"/> <a стил="border: 0пк" хреф="/HumanResources/Lists/New Employee Checklist/EditForm.aspx?ИД ={@ ИД}&ампер;Извор = / ХуманРесоурцес / Схаред Доцументс / Нови аутомобила Дасхбоард.аспк"> [Измени]</a> </клс:када> <!-- Схов црвени индикатор да ли смо прошли рок. -->
<клс:када тест="ddwrt:ФорматДатеТиме(ниска(ддврт:Данас()), 1033, 'ИИИИММДД') &гт;= Ддврт:ФорматДатеТиме(ниска(@ Варнинг_к0020_Дате), 1033, 'ИИИИММДД')"> <имг срц="/_layouts/images/KPIDefault-1.GIF" стар="Warning"/> <a хреф="/HumanResources/Lists/New Employee Checklist/EditForm.aspx?ИД ={@ ИД}&ампер;Извор = / ХуманРесоурцес / Схаред Доцументс / Нови аутомобила Дасхбоард.аспк"> [Измени]</a> </клс:када> <!-- Ако се овде, смо раније од датума упозорења, тако да смо зелени. -->
<клс:иначе> <имг срц="/_layouts/images/KPIDefault-0.ГИФ" стар="No problems"/> <a хреф="/HumanResources/Lists/New Employee Checklist/EditForm.aspx?ИД ={@ ИД}&ампер;Извор = / ХуманРесоурцес / Схаред Доцументс / Нови аутомобила Дасхбоард.аспк"> [Измени]</a> </клс:иначе> </клс:изабрати> |
Неколико кључних тачака из горе:
- I tried to compare dates without using the ddwrt functionality and got nowhere. I still don’t understand that. They dates displayed correctly, али оба ">"И"<” comparisons always failed. На крају, ддврт дошао у моју помоћ (хвала, поново, Воћна пулпа).
- Ја сам такође приказује [Измени] link to the item. I mainly did this so that I could easily test this out. The link itself may be useful to someone trying to figure it out.
- Ово се примењује у СхареПоинт Онлине и ради лепо.
- Слике сам референцу у именику _лаиоутс (/_лаиоутс / имагес / КПИ ...) су доступни из кутије у мом окружењу тако да вероватно су доступни за вас, као и.
Ово је снимак екрана како изгледа за мене:
</крај>
Следите ме на Туиттер на http://www.twitter.com/pagalvin