任意の累積的な更新プログラムまたは Service Pack が 2008 年 10 月以降にリリースされた Project Server 2007 をインストールした後、SharePoint 製品とテクノロジ構成ウィザードが失敗します。

文書翻訳 文書翻訳
文書番号: 971217 - 対象製品
すべて展開する | すべて折りたたむ

現象

任意の累積的な更新プログラムをインストールまたは Service Pack の Microsoft Office Project Server 2008 年 10 月以降にリリースされた 2007年、SharePoint 製品とテクノロジ構成ウィザードが失敗したとします。 また、次のエラー メッセージ、Upgrade.log ファイルに記録。

"Microsoft.Office.Project.Server.Upgrade.ReportingDatabaseUpgrader_12_1_153_0.Upgrade()"という、DELETE ステートメントが REFERENCE 制約と競合しています"FK_MSP_TimesheetLine_TaskNameUID"。 データベース内の競合が発生した"TaskConsistency_ <instance_name> _Reporting"、テーブル"dbo.MSP_TimesheetLine"、列 'TaskNameUID'。 ステートメントが終了しました。 at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at Microsoft.Office.Server.Data.SqlSession.ExecuteScript(TextReader textReader, Int32 commandTimeout) at Microsoft.SharePoint.Upgrade.SPDatabaseAction.ExecuteSql(String sql, Int32 commandTimeout) at Microsoft.SharePoint.Upgrade.SPDatabaseAction.ExecuteSql(String sql)at Microsoft.Office.Project.Server.Upgrade.ReportingDatabaseUpgrader_12_1_153_0.Upgrade() at Microsoft.SharePoint.Upgrade.SPActionSequence.Upgrade()
メモ 既定では、Upgrade.log ファイルは次のフォルダーには: %ProgramFiles%\Common Files\Microsoft Shared\Web Server Extensions\Logs\

原因

この問題は、レポート データベースで非常に特定の条件のために発生します。 ケースの非常に小さい数では、可能性重複レコードでレポート データベースがあります。 これらの重複レコードは、SharePoint 製品とテクノロジ構成ウィザードが失敗する可能性があります。

解決方法

累積的な更新を Project Server 2007 と 2008 年 10 月以降にリリースされる Service Pack をインストールする前に、レポート データベースの条件を確認するのには、次のスクリプトを使用します。

メモ
  • この検出スクリプト 1 回だけ実行します。 [回復スクリプトを実行する正の値が表示される場合。 問題がない場合でも、正を再度表示されますので、検出スクリプトをもう一度実行しないでください。 2 回検出スクリプトを実行しては、正の結果を得るため、誤認のし、この動作は仕様です。 検出スクリプトは、エラーが発生した問題のすべてを示すには非常に重要なことに書き込まれました。 修正プログラムのスクリプト、ただし、障害を引き起こす正確な問題を解決するのに pinpointed です。 検出スクリプトを再実行する場合がまだいくつかの小さな詳細をデータベース内のピッキングしますが、修正スクリプトが既にルート障害の固定が可能です。
  • Project Server の既定のインストールがある場合は、ProjectServer_Reporting、データベースの名前と呼びます。 また、Project Server サイトを通じて、SharePoint サーバー全体管理 Web サイトに関連付けられているレポート データベースの名前を確認できます。

IF
(
      SELECT
            DuplicatesCount = COUNT(*)
      FROM  (
                        -- Returns the TaskUID and the Latest date that are duplicates, along with the number of times they are duplicated
                        SELECT
                              TSTask.TaskUID,
                              TSTask.LatestDate,
                              DuplicatesCount = COUNT(TSTask.TaskNameUID)
                        FROM (
                                          -- This will return a 'copy' of the MSP_TimesheetTask table, but with the TaskUID fixed (by looking at the Assignments table)
                                          SELECT
                                                distinct(MSP_TimesheetTask.TaskNameUID), --Distinct, because when joining with lines we will have one row for each line, and so on
                                                MSP_TimesheetTask.LatestDate,
                                                TaskUID = ISNULL(MSP_EpmAssignment.TaskUID, MSP_TimesheetTask.TaskUID)
                                          FROM dbo.MSP_TimesheetTask
                                          LEFT OUTER JOIN MSP_TimesheetLine
                                                ON MSP_TimesheetLine.TaskNameUID = dbo.MSP_TimesheetTask.TaskNameUID
                                          LEFT OUTER JOIN dbo.MSP_TimesheetProject
                                                ON MSP_TimesheetLine.ProjectNameUID = MSP_TimesheetProject.ProjectNameUID
                                          LEFT OUTER JOIN dbo.MSP_EpmAssignment
                                                ON MSP_EpmAssignment.ProjectUID = MSP_TimesheetProject.ProjectUID AND
                                                      MSP_EpmAssignment.AssignmentUID = MSP_TimesheetLine.AssignmentUID
                                ) AS TSTask
                        GROUP BY TSTask.TaskUID, TSTask.LatestDate --Define groups: all the rows that have the same TaskUID and LatestDate
                        HAVING COUNT(TSTask.TaskNameUID) > 1 --See if we have any groups that have more than one row in them. If there are this means the old upgrade will fail.
                  ) AS Duplicates
) > 0
      PRINT 'A correctable data issue has been detected.  Please run the data correction script before upgrading your installation.'
ELSE
      PRINT 'No data issues were detected.  You can continue with your upgrade.'
このスクリプトは、正の結果を提供する場合は、Microsoft カスタマー サポートに問い合わせてこの問題を解決します。

状況

マイクロソフトでは、この問題を記載されているマイクロソフト製品の問題として認識しています。

詳細

この懸案事項、展開の場合は、それが問題を 1 回だけになります。 したがって、次の条件のいずれかに該当する場合は、このスクリプトを実行する必要はありません。
  • 2008 年 10 月以降にリリースされる、Project Server 2007 の累積的な更新が正常に展開されています。
  • 2007 Office サーバー Service Pack 2 は正常に展開されています。

プロパティ

文書番号: 971217 - 最終更新日: 2009年10月30日 - リビジョン: 3.0
この資料は以下の製品について記述したものです。
  • Microsoft Office Project Server 2007
キーワード:?
kbtshoot kbprb kbexpertiseinter kbmt kbsurveynew KB971217 KbMtja
機械翻訳の免責
重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。
英語版 KB:971217
Microsoft Knowledge Base の免責: Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com