코드 없는 솔루션: SharePoint 목록 항목을 마지막으로 변경한 후 일 수를 표시

코드 없는 솔루션: SharePoint 목록 항목을 마지막으로 변경한 후 일 수를 표시

참고:  사용자 언어로 가능한 한 빨리 가장 최신의 도움말 콘텐츠를 제공하고자 합니다. 이 페이지는 자동화를 통해 번역되었으며 문법 오류나 부정확한 설명을 포함할 수 있습니다. 이 목적은 콘텐츠가 사용자에게 유용하다는 것입니다. 이 페이지 하단의 정보가 도움이 되었다면 알려주세요. 쉽게 참조할 수 있는 영어 문서 가 여기 있습니다.

9/20/2011 오후 3시 01분

조자룡 Joyce LANtek 하 여

참고: 이 문서는 최종 사용자는 SharePoint에 대 한 요점을 블로그 4 년에서 게시물의 모음의 일부입니다.

개요: 사용자 지정 코드 없이 보고서 에이징

작업 또는 목록 항목에 대 한 에이징 보고서 자주 요청한 기능 장의 SharePoint 사이트 중 하나입니다. 즉, 개월 수 일에는 것이 목록 항목이 마지막으로 수정한 이후?

화면에서이 것은 매우 간단한 요청 수 있습니다. 결국 위해서는 항목 만들고 수정한 날짜를 있으므로 항목에 특정 변경 이벤트 수신기를 통해 수행할 때 사용자 지정 날짜를 저장 하는 기능입니다. 우리는 계산 된 열 우리 정보와 함께 작동 하도록 Excel과 같은 수식을 포함할 수 있습니다. 이 방법은 매우 바로 앞으로 제안을 누르기가. 우리 날짜 필드를 선택, 계산된 된 열 만들기 한 다음 작업을 수행 수식 [DateField]-선을 따라 [오늘]. 아, 빠른 통과 하므로 하지! "간단한"이 작업을 시도한 있는 사람이 알고, 계산 된 열 원인 문제에 다음과 같이 [오늘]을 사용 하려고 합니다. 삽입 [오늘]에 계산 된 열 수식 상자에서 다음과 같이 결과 오류 메시지가 표시:

오류 메시지

이 이유는 무엇 인가요? 무엇을 하는 물론 방식으로 계산 열을 계산 합니다.

예를 들어 간단한 수식을 살펴보겠습니다.

= IF ( [Column1] < = [Column2], "OK", "Not OK")

이 모든으로 표시 하는 경우 Column1 Column2, 보다 작거나 다음 표시 확인, 그렇지 않으면 부적합을 표시 합니다. 계산된 된 열에 대 한 기본 매우 일반적인 수식을 이며이 열을 포함 하는 목록 항목에 대 한 기본 가정 하면: 열 1, 열 2의 값 목록 항목에 대 한 업데이트 이벤트 없이 변경할 수 없습니다.

계산 된 열에서는 목록 업데이트 (또는 만든) 면 다시 계산할만 정답 계산 하는 정보 항목 자체에 포함 된 가정 하기 때문입니다. 오늘 날짜와 같은 항목의 필드와 관계 없이 변경 하는 것을 사용 하려는 경우 문제가 만듭니다.

하지만 이제 이것이 추측할 할 것으로 간주 성능을 유지 하기 위해 이러한 방식으로 작동 하는지 확인 해야 하는 경우 열 작동 것을 계산 하는 방식을 결정은 모임에서 없었다면 합니다. "라이브" 업데이트가 필요한 경우 계산된 된 열에 포함 되는 몇 가지 천 항목 목록이 있는 경우 했다고 가정 하겠습니다. 하는 몇 가지 메커니즘 의미 합니다,: 품목이 타이머 작업 해야 자주 계산 된 열이 포함 되어 있으며 해당 값을 업데이트 하는 각 항목을 반복 합니다. 이 수 수 매우 줄일 경우 성능 대규모로와이 작업 수 있으므로 계속 해 서 수 실행 항목을 변경 합니다. 제 생각 뿐에 해당 하는 것은 아니지만 많은 양의 감지가에 대해 생각 하는 경우.

SharePoint에서 먼저 오늘, 명명 된 열을 만들려면 한 다음 수식에 추가 하 고 삭제 하 여 현재 값을 수락 하는 데 속이는 행위와 관련 된 말씀 드리 부동 비슷한 솔루션에 대 한 몇 가지 제안이 있습니다. 다음은 유용 합니다 있지만 어떤 말한에 대 한 계산 된 열을 업데이트할 때 해야 합니다. 이 값에 값 곧 올바르지 않을 수, 일 계산의 경우 더욱 그렇습니다 되므로 항목 업데이트 될 때에 변경 됩니다.

다른 사용자는 하였습니다 효과적인 JavaScript를 사용 하 여 페이지에 값을 작성 합니다. 또한이 작동 하지만 거의 라인일 피할 수 때 클라이언트 스크립트에 대 한 해커나 합니다.

구현:

어떻게 해야 할까요? 오늘 같은 하므로 라고도 함된 "잘못 된" 함수에 대 한 질문 아웃 계산 된 열이 있습니다. 일부 사용자 지정 코드 처리 함이 사용자 환경에 대 한 계산 된 열, 타이머 작업 등을 개발할 수는 또는 가자 이루어진이 계산 해야 하는 모든 단일 항목을 업데이트 하는 프로세스 예약 가능 합니다. 하지만 마지막 단락에서 설명한 성능 문제를 다시 고려해 야 하 고 또한는 경량 솔루션 사이트/목록/열으로 질문의 특정 높은 것입니다. 이러한 두 관심사 위에 이동 하는 nerdy guy, 직접, 같은 코드를이 솔루션을 개발 하 게 유도 하는 방법을 알고 있는 찾기 해야 할 수 있습니다. 하지만 쉽게 방법이!

필드를 만들고 사이트에서 페이지를 편집할 수 있는 권한이 있는 XSLT 및 보기를 만드는 방법에 대 한 기술 비트 하는 경우 넣으면 함께 XSL 서식 파일 목록 보기에 포함 될 수 및는 정확 페이지가 요청 될 때마다 사용자가 값을 계산 하는. 이 시나리오 성과 통해 하는데 제거 하 고 사용자 지정 코드를 개발 하 고 해결 방법을 통해 배포한 필요 하지 않습니다.

완벽 하 게 됩니다. 어떻게 작업을 수행 했습니다 있나요?

  1. 만들거나 우리 원본으로 사용할 필드를 선택 합니다. 날짜 형식 이어야 합니다.

  2. 역할을 하 고 계산 된 값에 대 한 개체 틀이 필드를 만듭니다.

  3. 이러한 필드 중 콘텐츠 형식에 추가 하 고 해당 콘텐츠 형식의 목록에 추가 합니다.

  4. 원본 및 개체 틀 열이 포함 된 목록 보기를 만듭니다.

  5. 스타일 라이브러리에 XSL 서식 파일을 업로드 합니다.

  6. UI 통해 목록 보기 웹 파트에 대 한 "XSL 링크" 속성을 설정 합니다.

  7. 성공!

예제 사용 사례를 탐색 하 고 구현 안내 보겠습니다. 고객 특정 목록 항목은 된 앞에 앉아 있는 상태로 얼마나 이야기 자신의 기본 목록 보기를 원하지 않는 합니다. 이 목록 콘텐츠 형식 항목 형식에서 파생 된 및 목록에 추가할 사용자 지정 사이트를 포함 합니다. 목록 항목의 상태 필드는 각 시간을 캡처하는 현재 위치에서 이벤트 수신기 바뀌고 해당 날짜 "상태 변경 된 날짜" 라는 열에 저장 한 이미 했습니다. 이 모든 배선 필요 하며 모든 날짜 필드와 수행할 수 있습니다 (사용자가 지금 바로이 발생 하는 구현 되었지만 실험을 자유롭게) 합니다. 최소한 만들어야 합니다은 원본 날짜 필드와 기타 pl에서이 솔루션을 다시 사용 하려는 경우에 사이트 열 및 사이트 콘텐츠 형식을 사용할 것이 좋습니다 수도 있지만 사용자 목록에 추가 됩니다 (다음 단락에서이 대 한 자세한) 계산 대기 상태로 전환 자리 표시자 필드 사이트에서 ace 합니다.

오늘 날짜에 대해이 계산에 사용할 수 있는 우리 원본 날짜를 보도록 하겠습니다. 이제이 계산 된 값에 대 한 컨테이너로 사용할 사용자 지정 사이트 열을 만들 수 있습니다. 이 경우 새에서 변경 하거나 항목 양식 편집 수 없지만이 열에서 임의의 값을 입력 하는 사용자가 않도록 하기 보기에 표시 하기 위해 선택할 수 있으므로 계산된 된 열을 사용 하 여 선택 합니다. 이유이 표시 되지 않는 등 보기에 대 한 혼란을 줄 수 있습니다.

사이트 열은 했으므로 목록에서 사용 되는 콘텐츠 형식에 추가할 수 했습니다. 그런 다음, 우리 xslt 나중에 사용자 지정 될 확인해 보기를 만드는 데 필요한 합니다. 원본 날짜 열 및 계산 된 값에 대 한 개체 틀을 수행할 새 계산 된 열에 포함 된 표준 보기를 만들 수 있는지 확인 합니다.

우리 이제 모든 사용자 지정 에이징 보고서를 지 원하는 데 필요한 위치에 있습니다. 모든 남아 사이트의 스타일 라이브러리에 업로드 하 고이 목록 보기에 링크 우리 XSL 서식 파일을 만드는 것입니다. XSL 서식 파일에서는 사용 하는 보기의 특정 부분을 무시 하 고 상황에 대 한이 원하는 값을 계산 하는 데 사용 직접 사용자 지정 태그를 생성 하기 위한 몇 가지 기본 SharePoint에서 생성 된 태그를 포함 것입니다.

신용이 기한 신용 제공,이 솔루션에 대 한 사용 않는 실제 계산을 수행 하기 위한 XSL 서식 많은 제공한 MSDN 포럼에서 "swirch":
http://social.msdn.microsoft.com/Forums/en-US/ sharepointcustomization/스레드/aeda905b-9bc6-40c4-bd22-21306c5cb0d2 /

XSL 스타일 시트 (aging.zip)는 배치 함께 여기에 있는 다운로드:
https://OneDrive.live.com/?cid=c262e8e2d59a86d9&permissionsChanged=1&id=C262E8E2D59A86D9! 104

"DateDiff" 되 고 첫 번째 temp이 나타납니다 기본 SharePoint XSL 태그 보기를 렌더링 하는 데 충분 한 줄의 태그에 추가 하는 사용자 지정 서식 파일의 시작 부분을 볼 수 있습니다 357 아래로 스크롤 유지 하는 경우 즐겨찾기 텍스트 편집기에서 열기, 가능한 가장 늦은 이어서 "계산 율리우스-일" 및 "FieldRef_printTableCell_EcbAllowed.Days_x0020_At_x0020_Status"입니다. 다음은 확인 있고 우리 계산 우리 보기에 표시 되도록 우리 세 가지 서식 파일입니다. 이 문서 앞부분에서 지정 된 것 보다 다른 필드 이름을 사용 하려는 경우 이러한 서식 파일을 통해 이동 하 고 다른 이름에 대 한 참조를 대체 해야 합니다. 필드의 표시 이름의 내부 이름을 사용 하려면이 기억 합니다.

했으면이 서식 파일은 이동 스타일 라이브러리로 이동 하 고 "XSL 스타일 시트" 폴더 아래 업로드 다음 파일에 링크를 아래로 복사 하는 합니다. 나중에 변경 내용을 쉽게 만들 수 있도록 되거나 하십시오 것 처럼 해당 사이트의 다른 부분에 추가 됩니다.

그런 다음, 목록으로 이동 하 고이 문서 앞부분에서 만든 보기를 선택 합니다. "사이트 작업"에서 "페이지 편집" 메뉴 클릭 합니다.

사이트 작업 메뉴에 있는 페이지 편집 명령

목록 보기 웹 파트 페이지에 표시 하 고 있는 작은 아래쪽 화살표 오른쪽 위 모서리에서를 클릭 하 여 웹 파트 메뉴를 엽니다. 이 메뉴에서 "웹 파트 편집"를 선택 합니다.

웹 파트 메뉴의 웹 파트 편집 명령

브라우저 창의 오른쪽에 웹 파트 메뉴를 엽니다.

웹 파트 메뉴

+ "기타"에 대 한 섹션을 클릭 하 고 "XSL 링크" 속성을 찾습니다.

웹 파트 메뉴의 XSL 링크 속성

이전 아래로 복사 하 여 스타일 라이브러리의 XSL 파일 링크를 붙여 넣습니다 (절대 또는 상대 링크 될 수 있음).

붙여 넣은 XSL 파일 링크

"승인" 페이지의 맨 위에 "페이지" 리본 메뉴에서 "편집 중지" 단추를 클릭 한 다음 변경 내용을 저장을 클릭 합니다.

페이지 탭의 편집 중지 단추

올바르게 구성 된 모든 이제 "상태에서 일" 열에서 숫자가 표시 됩니다.

상태 일수 열에 숫자 표시

및 마지막으로, 어떤 것 것 처럼 보이게 일부 선택 된 다양 한 날짜의 데이터를 테스트 다음과 같습니다.

테스트 데이터를 표시하는 에이징 보고서

요약:

이 있는: 간단한 코드 없는 구현 된 SharePoint.에서 에이징 보고서를 만들 수 있는 좋고, 강력 하 고 뛰어난 방법 완료 합니다. 이 다시 시도 몇 가지 잠재적인 응용 프로그램이 것 외에도 여기에서 살펴본 대/소문자를 사용 합니다. 이 유형의 보고서의 다른 일반적인 시나리오는 첨부 작업 목록에 요약 작업을 만든 후에 되었는지 확인할 수 있도록 합니다.

즐겨 보세요!

-조자룡

조자룡 Joyce LANtek

메모

누락 된 단계를
2012-10-8 오전 3시 51분
확인는 단계를 하지만 있어야 누락 된 것-를 사용 하려면 어느 날짜 XSL 확인 방법 따르거나로 이후의 날짜를 추가 하려면 필드는 무엇 인가요? 단계 누락 되 면 마음에 안 들어 있습니다.

코드 없는 합의!
2012-8-30 오후 12시 12분
동의-없나요 "코드"로 계산이 생각 합니다.
흥미로운 SharePoint의 몇 가지 screwup 통해 됩니까... Today를 사용 하 여 작업 계산된 열 확실 하지 않은 경우 어떻게 또는 이유를 다시 실행 되도록 얻을 수 없는 경우 하지만 것은 여전히 있고 작업 때문입니다.

"상태에서 일"에 대 한 수식을 계산 열?
2012-2-5 오전 7시 39분
조자룡-"상태에서 일" 계산 된 사이트 열 (개체 틀 열)에 사용 되는 수식 이란? 있었습니까 "오늘 =" 무엇 인가요?

SharePoint 2007
12/2/2011 오전 11시 29분
현재는 하지 적용 하려고 했습니다이 솔루션 SharePoint 2007에 원하는 많지만 합니다. 하지만 UI 통해 웹 파트에서 데이터로 XslLink 속성이 없는 경우

훌륭한 게시물
년 11 월 30 일과 2011 9:53
Hello,
게시물 것이 좋습니다.
SharePoint 2007을 사용 중입니다.
위에서 언급 했 듯이 기타 섹션을 보유 합니다.
SP2007 구성에 대 한 단계 있습니까?
감사 합니다.

회신: 코드 없는 솔루션: SharePoint 목록 항목을 마지막 된 이후 일 수를 표시 변경
10/11/2011 오전 8시 24분
안녕하세요 Chris 합니다.
훌륭한 찾기!
i는 어떤 게시를 바랍니다 오늘 나중에 참조 하 고 i 강력한 만들 수이 솔루션을 좀 더 표시 합니다.
게시, 좋아요 및 유럽 날짜 서식으로 해결 방법을 찾을 수 없었던 사람이 팔 사람이 팔 합니다. :)
-조자룡

유럽 날짜 형식에 대 한 해결 방법
10/11/2011 오전 6 시 45
안녕하세요 다시 조자룡
참고 정보는 발견 솔루션;이 페이지에 앞서 설명한 문제에 대 한
https://sharepointbydummies.wordpress.com/2011/07/13/possible-work-around-to-date-format-issue-sharepoint-2010/

유럽 날짜 형식
10/7/2011 오전 3시 59분
안녕하세요 조자룡
가 솔루션 감사 이며 객체 종류는 본 경험이 찾고 마지막 2 일! 그러나에 문제가 비트 데 및 나 도움이 될 수는 고요.
Calcultate 것 이므로, 보다 생기면 될 때까지 일 수를 약간 코드를 변경 했습니다 "DateDiff" 함수의 마지막 줄에서 변수를 전환 하 여 하지만

< xsl:value-select = "$JulianToday-$JulianStartDate" >< / xsl:value-의 >

올바르게 절반 시간 차이가 caclulate을 볼 수만 라인일 합니다. 예를 들어이 날짜 (서식 dd/MM/yyyy); 사용

30/12/2011

를 올바르게 하지만이 날짜 (같은 서식)를 계산

2011-12-10

로 계산 합니다 나타나면 2011 년 12-10-12-10 월 2011 것 보다 합니다.
는 단순히 "JulianStartDate" 변수에, 같은 일 보기 및 월 값의 위치를 전환 시도

< xsl: 있는 매개 변수 이름 "월" select="substring(ddwrt:FormatDateTime(string($StartDate), 1033, 'yyyyMMdd' =), 7, 2)" / >
< xsl: 있는 매개 변수 이름 "Day" 선택 = "부분 (ddwrt:FormatDateTime (문자열 ($= 하지만 시작 날짜), 'yyyyMMdd' 1033), 5, 2) "/ >

이 올바르지 않습니다 다음 첫 번째 날짜에 대 한 두 번째 날짜의 문제 해결이!
는 또한 방법을 시도 FormatDateTime 호출 및 사용 하 여 유럽 Lcid 다양 한 변경 사항을 마지막 FormatDateTime (예: ddMMyyyy, MMddyyyy)의 매개 변수 문자열을 적절 하 게 조정 된 없이 위치 매개 변수 변경 성공 합니다.
크게 제공할 수 있는 모든 조언을 주셔서 감사 합니다.
고 맙 다,
Chris

코드 없는
9/21/2011 오전 4시 27분
XSL XSL 언어 없는-모든 사용자를 위한 프로그래밍이 포함 되어 있지 않지만 이해와 "코드" 솔루션으로 한정 생각 합니다. 하는 것 외에도: 멋진 솔루션, 감사 합니다!

Office 기술 확장
교육 살펴보기
새로운 기능 우선 가져오기
Office Insider 참여

이 정보가 유용한가요?

의견 주셔서 감사합니다!

피드백을 주셔서 감사합니다. Office 지원 에이전트와 연락하는 것이 도움이 될 것 같습니다.

×