Microsoft의 내부 지원 정보

버그 번호: 164609 (콘텐츠 유지 관리)

요약

이 문서는 2012 년 3 월 9 일자 프로젝트 서버 2010 핫픽스 패키지에서 해결 된 Microsoft 프로젝트 서버 2010 문제를 설명 합니다.

소개

이 핫픽스 패키지로 해결 되는 문제

프로젝트 웹 응용 프로그램 (PWA)의 프로젝트 센터 페이지에 액세스 하려고 하면 페이지가 로드 되지 않습니다, 그리고 및 "알 수 없는 오류" 오류 메시지가 나타납니다. 또한 프로젝트 세부 정보 페이지 (PDP)에서 프로젝트 정보를 편집할 때 Enterprise 프로젝트 사용자 정의 필드 값이 여러 개 표시 됩니다.

Microsoft의 내부 지원 정보

버그 번호: 32642 (OfficeQFE)

해결 방법

다음 핫픽스를 Microsoft에서 구할 수 있습니다. 이 여기서 검색 하 고이 문제를 일으키는 중복 된 레코드를 정리 하는 데 필요한 단계를 설명 합니다. 이 핫픽스를 적용 한 후 다음과 같은 정리 스크립트를 실행 해야 합니다. 한 번 정리 스크립트 실행 하기만 하면 됩니다.

스크립트는 다음 작업을 수행 합니다.

  • 1 스크립트는이 문제가 발생 하는지 여부와 관련된 프로젝트와 사용자 지정 필드 표시를 검색 합니다.

  • 스크립트 2는 영향을 받는 테이블을 백업합니다.

  • 3 스크립트는 중복 레코드를 제거합니다.

  • 4 스크립트 백업 테이블에서 레코드를 복원 하 여 삭제를 취소 합니다.

  • 5 스크립트 백업 테이블을 제거합니다.

스크립트를 프로덕션 환경에서 구현 하기 전에 결과 확인할 수 있도록 개발 환경에서 정리 스크립트를 테스트 하는 것이 좋습니다. 또한 네트워크에 사용자 작업이 있을 때이 작업을 수행 해야만 합니다.

스크립트 1

다음 SQL 쿼리는 데이터베이스에이 문제가 있는지 확인 합니다. 반환 되는이 문제가 발생 하지 않는. Project Server 게시 데이터베이스 이름을 첫 번째 쿼리 줄에서 자리 표시자 값에서을 대체 합니다.

USE <ProjectServer_Published>
SELECT CFV.PROJ_UID, MP.PROJ_NAME, CFV.MD_PROP_UID, CFPV.MD_PROP_NAME, COUNT (*) TOTALCOUNT FROM MSP_PROJ_CUSTOM_FIELD_VALUES AS CFV
INNER JOIN MSP_PROJECTS AS MP ON CFV.PROJ_UID=MP.PROJ_UID
INNER JOIN MSP_CUSTOM_FIELDS_PUBLISHED_VIEW AS CFPV
ON CFV.MD_PROP_UID=CFPV.MD_PROP_UID
where CFPV.MD_PROP_MAX_VALUES=1
GROUP BY CFV.PROJ_UID,MP.PROJ_NAME, CFV.MD_PROP_UID, CFPV.MD_PROP_NAME HAVING COUNT (*) >1
ORDER BY TOTALCOUNT DESC


스크립트 2

스크립트 2 MSP_PROJ_CUSTOM_FIELD_VALUES 테이블의 모든 레코드를 백업 하 고 MSP_PROJ_CUSTOM_FIELD_VALUES_Backup 라는 테이블을 만듭니다. 실행 하는이 스크립트 스크립트 3를 실행 하기 전에 한 번에 있는지 확인 하십시오. 3 스크립트에 의해 수행 되는 정리 작업을 실행 취소 하려면 2 스크립트를 다시 실행할 수 있습니다.

USE <ProjectServer_Published>
SELECT * INTO MSP_PROJ_CUSTOM_FIELD_VALUES_BACKUP FROM MSP_PROJ_CUSTOM_FIELD_VALUES



스크립트 3

3 스크립트는 먼저이 문제가 발생 하는지 여부를 검색 합니다. 이 문제가 되지 발생 하는 경우 아무 작업도 수행 합니다. 이 문제가 발생 하는 경우 스크립트는 중복 레코드를 제거 합니다.

USE <ProjectServer_Published>
DECLARE @ITERATIONS AS INT
SET @ITERATIONS=
(SELECT TOP 1 COUNT (*) TOTALCOUNT FROM MSP_PROJ_CUSTOM_FIELD_VALUES AS CFV
INNER JOIN MSP_PROJECTS AS MP ON CFV.PROJ_UID=MP.PROJ_UID
INNER JOIN MSP_CUSTOM_FIELDS_PUBLISHED_VIEW AS CFPV ON CFV.MD_PROP_UID=CFPV.MD_PROP_UID
INNER JOIN MSP_CUSTOM_FIELDS AS CF ON CFV.MD_PROP_UID = CF.MD_PROP_UID
WHERE CF.MD_PROP_MAX_VALUES=1
GROUP BY CFV.PROJ_UID,MP.PROJ_NAME, CFV.MD_PROP_UID, CFPV.MD_PROP_NAME
HAVING COUNT (*) >1
ORDER BY TOTALCOUNT DESC )-1

IF @ITERATIONS IS NULL
BEGIN
PRINT 'DID NOT FIND ANY DUPLICATES TO PROCESS'

END
ELSE
BEGIN

PRINT 'TOTAL ITERATIONS TO PROCESS: '
PRINT @ITERATIONS

WHILE @ITERATIONS <>0
BEGIN
PRINT 'ITERATION COUNT: '
PRINT @ITERATIONS

DECLARE @PROJ_UID AS UNIQUEIDENTIFIER
DECLARE @MD_PROP_UID AS UNIQUEIDENTIFIER
DECLARE @MOD_DATE AS DATETIME
DECLARE ACDELETEDUPLICATERECORDS CURSOR FOR

SELECT PROJ_UID, MD_PROP_UID, MIN(MOD_DATE) AS MOD_DATE FROM MSP_PROJ_CUSTOM_FIELD_VALUES WHERE PROJ_UID IN
(
SELECT CFV.PROJ_UID FROM MSP_PROJ_CUSTOM_FIELD_VALUES AS CFV
INNER JOIN MSP_PROJECTS AS MP ON CFV.PROJ_UID=MP.PROJ_UID
INNER JOIN MSP_CUSTOM_FIELDS_PUBLISHED_VIEW AS CFPV
ON CFV.MD_PROP_UID=CFPV.MD_PROP_UID
INNER JOIN MSP_CUSTOM_FIELDS AS CF
ON CFV.MD_PROP_UID = CF.MD_PROP_UID
WHERE CF.MD_PROP_MAX_VALUES=1
GROUP BY CFV.PROJ_UID,MP.PROJ_NAME, CFV.MD_PROP_UID, CFPV.MD_PROP_NAME HAVING COUNT (*) >1
)
AND MD_PROP_UID IN
(
SELECT CFV.MD_PROP_UID FROM MSP_PROJ_CUSTOM_FIELD_VALUES AS CFV
INNER JOIN MSP_PROJECTS AS MP ON CFV.PROJ_UID=MP.PROJ_UID
INNER JOIN MSP_CUSTOM_FIELDS_PUBLISHED_VIEW AS CFPV
ON CFV.MD_PROP_UID=CFPV.MD_PROP_UID
INNER JOIN MSP_CUSTOM_FIELDS AS CF
ON CFV.MD_PROP_UID = CF.MD_PROP_UID
WHERE CF.MD_PROP_MAX_VALUES=1
GROUP BY CFV.PROJ_UID,MP.PROJ_NAME, CFV.MD_PROP_UID, CFPV.MD_PROP_NAME HAVING COUNT (*) >1
)

GROUP BY PROJ_UID, MD_PROP_UID
HAVING COUNT (*) >1
ORDER BY PROJ_UID

OPEN ACDELETEDUPLICATERECORDS
FETCH NEXT FROM ACDELETEDUPLICATERECORDS
INTO @PROJ_UID, @MD_PROP_UID, @MOD_DATE
WHILE @@FETCH_STATUS =0

BEGIN

DELETE FROM MSP_PROJ_CUSTOM_FIELD_VALUES
WHERE PROJ_UID=@PROJ_UID
AND MD_PROP_UID=@MD_PROP_UID
AND MOD_DATE=@MOD_DATE

FETCH NEXT FROM ACDELETEDUPLICATERECORDS
INTO @PROJ_UID, @MD_PROP_UID, @MOD_DATE

END

CLOSE ACDELETEDUPLICATERECORDS
DEALLOCATE ACDELETEDUPLICATERECORDS

SET @ITERATIONS = @ITERATIONS-1
END
END


4 스크립트

4 스크립트 스크립트 3 지 정리 작업을 실행 취소 하려는 경우에 실행. 대부분의 경우가이 스크립트를 사용할 필요가 없습니다. 그러나, 스크립트는 필요한 경우 제공 됩니다. 4 스크립트 스크립트 2 백업 레코드를 복원 하 여 작동 합니다.

참고: 시스템은 프로덕션 환경에 다시 배치 후 스크립트 4를 실행 하지 마십시오. 백업 시간 내에 스냅숏 이므로 새 편집 작업을 수행한 후이 백업을 복원할 경우 이러한 변경 내용은 손실 됩니다.

USE <ProjectServer_Published>
DELETE FROM MSP_PROJ_CUSTOM_FIELD_VALUES
INSERT INTO MSP_PROJ_CUSTOM_FIELD_VALUES
SELECT * FROM MSP_PROJ_CUSTOM_FIELD_VALUES_BACKUP


스크립트 5

백업 테이블을 제거 하려면 다음 스크립트를 실행 합니다.

USE <ProjectServer_Published>
DROP TABLE MSP_PROJ_CUSTOM_FIELD_VALUES_BACKUP




핫픽스 정보

지원되는 핫픽스를 Microsoft에서 구할 수 있습니다. 그러나 이 핫픽스는 이 문서에서 설명하는 문제만을 수정하는 데 사용됩니다. 이 문서에서 설명한 문제가 발생하는 시스템에만 이 핫픽스를 적용합니다. 이 핫픽스는 추가 테스트가 필요할 수도 있습니다. 따라서, 이 문제로 심각하게 영향을 받지 않는 경우 이 핫픽스가 포함된 다음 소프트웨어 업데이트가 나올 때까지 기다리는 것이 좋습니다.

핫픽스를 다운로드할 수 있는 경우, 이 기술 자료 문서의 상단에 "핫픽스 다운로드 가능" 섹션이 있습니다. 이 섹션이 나타나지 않으면, Microsoft 고객 지원에 문의하여 핫픽스를 얻으십시오.

참고: 추가 문제가 발생하거나 문제 해결이 필요한 경우, 별도로 서비스를 요청해야 할 수도 있습니다. 추가 지원 질문과 이 특정 핫픽스가 필요하지 않은 문제에는 일반 지원 비용이 적용됩니다. Microsoft 고객 서비스 및 지원 전화 번호의 전체 목록이 필요하거나 별도로 서비스를 요청하려면, 다음 Microsoft 웹 사이트를 방문하십시오.

참고: "핫픽스 다운로드 사용 가능" 형식은 핫픽스 사용이 가능한 언어를 표시합니다. 사용자 언어가 표시되지 않는 것은 핫픽스를 해당 언어로 사용할 수 없기 때문입니다.

전제 조건

이 핫픽스 패키지를 설치 하려면 Project Server 2010 또는 Project Server 2010 서비스 팩 1 설치 되어 있어야 합니다.

다시 시작 요구 사항

이 핫픽스를 적용 한 후 컴퓨터를 다시 시작 해야 수 있습니다.

핫픽스 대체 정보

이 핫픽스는 이전에 릴리스된 핫픽스를 대체하지 않습니다.

레지스트리 정보

이 패키지에서 핫픽스 중 하나를 사용할 수 레지스트리를 변경한 필요가 없습니다.

파일 정보

이 핫픽스에 제품을 최신 빌드로 완전히 업데이트 하는 데 필요한 모든 파일을 포함할 수 없습니다. 이 핫픽스에이 문서에 나와 있는 문제를 해결 하는 데 필요한 파일만 포함 되어 있습니다.

이 핫픽스 패키지의 글로벌 버전 Microsoft Windows Installer 패키지를 사용 하 여 핫픽스 패키지를 설치 합니다. 날짜와 시간은 이러한 파일에 대 한 다음 해당에서 utc (협정 세계시)로 나열 됩니다. 파일 정보를 볼 때 현지 시간으로 변환 됩니다. UTC와 로컬 시간의 시차를 찾으려면 제어판의 날짜 및 시간 항목에서 표준 시간대 탭을 사용 합니다.

다운로드 정보

추가 도움이 필요하신가요?

기술 향상
교육 살펴보기
새로운 기능 우선 가져오기
Microsoft Insider 참가

이 정보가 유용한가요?

번역 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?

소중한 의견에 감사드립니다.

×