참고: 이것은 처음에 게시 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/.
이것은 아직 다른 블로그 게시물을 SharePoint에서 데이터 뷰 웹 파트의 XSL에서 날짜 비교.
이것은 내 시나리오:
- 나는 사용자 지정 목록.
- 목록의 사업 목적 내에서 완료 될 새로운 직원 및 그/그녀의 작업의 아이디어를 지 원하는 것입니다. 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)
- 사용자 지정 목록 만들기와 콘텐츠 형식 연결.
- 웹 파트 페이지를 만들.
- 웹 파트 페이지 사용자 지정 목록 추가.
- 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를 =:FormatDateTime(문자열(ddwrt:오늘()), 1033, ' yyyyMMdd') >는;ddwrt를 =:FormatDateTime(문자열(@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를 =:FormatDateTime(문자열(ddwrt:오늘()), 1033, ' yyyyMMdd') >는;ddwrt를 =:FormatDateTime(문자열(@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/이미지/뮤직...) 그래서 그들은 아마 당신을 위해 사용할 수 있는 내 환경에서 상자에서 사용할 수 있습니다..
여기는 나를 위해 어떻게 생겼는지의 스크린샷입니다.:
</끝>
에 지 저 귐에 나를 따르라합니다 http://www.twitter.com/pagalvin