SharePoint 統合に関するトラブルシューティング
このトピックでは、ドキュメント管理に発生する可能性がある一般的な問題を修正する方法 SharePoint を説明します。
[ドキュメント] ボタンがない - 検証して修正する
ドキュメント が取引先企業などのエンティティにない場合、以下を使用して復元します。
Dynamics 365 Customer Engagement (on-premises) のシステム管理者セキュリティ ロールまたは同等のアクセス許可を持っている必要があります。 セキュリティ ロールの確認:
- 「ユーザー プロファイルの表示」の手順を実行してください。
- 適切なアクセス許可を持っていない場合は、 システム管理者に問い合わせてください。
なくなっている ドキュメント ボタンを修正します。 次の手順を実行します。
- ドキュメント リンクを表示する必要があるエンティティを特定します (取引先企業、取引先担当者、営業案件など)。
- 設定>ドキュメント管理設定に移動します。
- ドキュメント リンクが必要なエンティティ (ステップ 1 で選択) が選択されており、有効な SharePoint URL が指定されていることを確認します。
- ウィザードの完了。
- ドキュメント ボタンが表示されていることを確認します。
詳細については、特定のエンティティの SharePoint ドキュメント管理を有効にする を参照してください。
なくなっているドキュメント関連グリッド - 検証して修正する
ドキュメント関連グリッドがない場合、以下を使用して復元します。
ドキュメント関連グリッドが読み込まれない最も一般的な原因は、破損した FetchXML と LayoutXML です。 次のセクションは、多くの理由で破損する可能性があります。 エンティティ/グリッド ビューのカスタマイズ、列の追加/削除、他の同様のカスタマイズなどが最も一般的な理由です。
システム管理者セキュリティ ロールまたは同等のアクセス許可を持っている必要があります。 セキュリティ ロールの確認: a. 「ユーザー プロファイルの表示」の手順を実行してください。 b. 適切なアクセス許可を持っていない場合は、 システム管理者に問い合わせてください。
設定>カスタマイズ>ソリューションに順に移動します。
ソリューションを作成します (SharePointDocumentSolution という名前)。 詳細については、ソリューションの作成を参照してください。
エンティティ>既存を追加>エンティティ の順に選択し>SharePoint ドキュメント エンティティを検索して追加します (すべてのフィールド、フォーム、ビューを選択します)。
保存 と 閉じる を選択します。
すべてのカスタマイズを公開します。
作成した (SharePointDocumentSolution) ソリューションを選択します。
ソリューションをエクスポートし、アンマネージドとしてパッケージの種類を選択します。 (SharePointDocumentSolution.zip がダウンロードされます)。
zip ファイル (ステップ 8 からダウンロード) を展開します。
フォルダーを参照し、customization.xml を見つけて開きます。
ドキュメント関連グリッドの LayoutXml を検索します (ドキュメント関連を検索)。
LayoutXML セクションに対して以下のような変更を加えます。
<layoutxml> <grid name="sharepointdocument" jump="fullname" select="1" icon="0" preview="1"> <row name="sharepointdocument" id="sharepointdocumentid"> <cell name="fullname" width="300" imageproviderfunctionname="DocumentManagement.FileTypeIcon.loadSharePointFileTypeIcon" imageproviderwebresource="$webresource:SharePoint_main_system_library.js" /> <cell name="relativelocation" width="200" /> <cell name="modified" width="150" /> <cell name="sharepointmodifiedby" width="150" /> <cell name="sharepointcreatedon" width="300" /> <cell name="title" ishidden="1" /> <cell name="readurl" ishidden="1" /> <cell name="editurl" ishidden="1" /> <cell name="author" ishidden="1" /> <cell name="absoluteurl" ishidden="1" /> <cell name="filetype" ishidden="1" /> <cell name="ischeckedout" ishidden="1" /> <cell name="locationid" ishidden="1" /> <cell name="iconclassname" ishidden="1" /> </row> </grid> </layoutxml>
FetchXml セクションに対して以下のような変更を加えます。
<fetch distinct="false" mapping="logical"> <entity name="sharepointdocument"> <attribute name="documentid" /> <attribute name="fullname" /> <attribute name="relativelocation" /> <attribute name="sharepointcreatedon" /> <attribute name="ischeckedout" /> <attribute name="filetype" /> <attribute name="modified" /> <attribute name="sharepointmodifiedby" /> <attribute name="servicetype" /> <attribute name="absoluteurl" /> <attribute name="title" /> <attribute name="author" /> <attribute name="sharepointdocumentid" /> <attribute name="readurl" /> <attribute name="editurl" /> <attribute name="locationid" /> <attribute name="iconclassname" /> <order attribute="relativelocation" descending="false" /> <filter> <condition attribute="isrecursivefetch" operator="eq" value="0" /> </filter> </entity> </fetch>
重要
レイアウト xml で構成されるすべての属性は、対応するそれぞれの属性が Fetch XML に存在する必要があります。 この構成が正しくない場合、グリッドはエラーになります。
- ファイルを保存します。
- フォルダーを zip 圧縮します。
- Dynamics 365 for Customer Engagement を開きます。
- 設定>ソリューション に移動します。
- ソリューションをインポートします (ステップ 8 で zip 圧縮)。
- すべてのカスタマイズを公開します。
- ドキュメント関連グリッドが必要な SharePoint ドキュメントすべてに表示されていることを確認します。
SharePoint のサイトの URL の検証と修正
Customer Engagement (on-premises) では、SharePoint のサイト レコードおよびドキュメントの場所レコードに、SharePoint 内のサイト コレクション、サイト、ドキュメント ライブラリ、およびフォルダーへのリンクが格納されます。 これらのサイト レコードおよびドキュメントの場所レコードは、Customer Engagement (on-premises) レコードのドキュメントを SharePoint に保存できるよう、Customer Engagement (on-premises) レコードに関連付けられています。
Customer Engagement (on-premises) と SharePoint の間のリンクが切断された場合は、Customer Engagement (on-premises) レコードが引き続き正しいドキュメント ライブラリおよびフォルダーを指してドキュメント管理を行えるよう、リンクを検証して修正する必要があります。
Microsoft Dynamics 365 のシステム管理者セキュリティ ロールまたは同等のアクセス許可が必要です。
セキュリティ ロールを確認する
ユーザー プロフィールを表示する で、次の手順に従います。
適切なアクセス許可を持っていない場合は? システム管理者に問い合わせてください。
URL を見つけて修正します。 これを行うには、以下の手順を実行します。
設定>ドキュメント管理に移動します。
SharePoint サイト をクリックします。
検証するサイトの URL を選択し、検証をクリックまたはタップします。
Customer Engagement (on-premises) は、選択されたすべてのサイトの URL とその直下のサイトおよびドキュメント ライブラリの URL を検証します。 そして、結果をサイトの検証に表示します。
URL を修正するには、サイト レコードをオープンし、正しい URL を入力します。 詳細情報: サイト レコードを作成または編集します。
保存して閉じるをクリックします。
「この場所でファイルを表示するためのアクセス許可がありません。」というメッセージが表示される
このエラー メッセージは、ドキュメント管理で設定された SharePoint サイトの名前が変更されたが、 SharePoint サイトのURL レコードが変更を反映するように更新されていない場合に発生します。
設定>ドキュメント管理>SharePointサイト に移動します。
名前を変更した SharePoint サイト レコードを開き、新しいURLで 絶対 URL を入力します。
保存して閉じるを選択します。
不正な FetchXML または LayoutXML - 検証および修正
不正な FetchXML または LayoutXML は、次のいずれかの問題を引き起こす可能性があります。
- ドキュメントに関連付けられたグリッドがありません
- フォルダーを表示できません
- フォルダ内のドキュメントを表示できません
- ドキュメントは削除されていません
- エラー メッセージ - ドキュメント タブを開いているときの「必須パラメーターは null または未定義: URL」
- エラー メッセージ - ドキュメント アップロード中の「System.NullReferenceException」
- 新しいタブで開かずにドキュメントをダウンロードしています
FetchXML または LayoutXML の形式が正しくない場合、多くの原因が考えられます。 最も一般的な原因は、エンティティ/グリッド ビューのカスタマイズ、列の追加/削除、他の同様のカスタマイズです。
FetchXML または LayoutXML の形式が正しくない場合は、以下を使用して復元します。
システム管理者セキュリティ ロールまたは同等のアクセス許可を持っている必要があります。 セキュリティ ロールの確認:
- 「ユーザー プロファイルの表示」の手順を実行してください。
- 適切なアクセス許可を持っていない場合は? システム管理者に問い合わせてください。
Web アプリで、設定 () >詳細設定 に移動し、設定>カスタマイズ>ソリューション に移動します。
ソリューションを作成します (SharePointDocumentSolution という名前)。 詳細については、ソリューションの作成を参照してください。
エンティティ>既存を追加>エンティティ の順に選択し>SharePoint ドキュメント エンティティを検索して追加します (すべてのフィールド、フォーム、ビューを選択します)。
保存 と 閉じる を選択します。
すべてのカスタマイズを公開します。
作成した (SharePointDocumentSolution) ソリューションを選択します。
ソリューションをエクスポートし、アンマネージドとしてパッケージの種類を選択します。 (SharePointDocumentSolution.zip がダウンロードされます)。
組織から手順 3 で作成されたソリューションを削除します。
エクスポートされたソリューション zip ファイル (ステップ 8 からダウンロード) を展開します。
ソリューション コンテンツ フォルダーで、Solution.xml を検索して開きます。
Solution.xml で次の値を変更して保存します。
<Managed>0</Managed>
から<Managed>1</Managed>
。ソリューション コンテンツ フォルダーで、customization.xml を検索して開きます。
savedqueryid 属性が “0016f9f3-41cc-4276-9d11-04308d15858d” に等しい
<SavedQuery>
要素を検索します。前の手順で指定した ID で保存されたクエリが見つからない場合は、手順 19 に進みます。 ただし、手順 14 で見つかった
<SavedQuery>
要素が<SavedQuery unmodified="1">
と同様の場合、unmodified="n" 属性を削除します。ドキュメント関連グリッドの layoutxml を検索します (ドキュメント関連を検索)。
layoutxml セクションに対して以下のような変更を加えます。
<layoutxml> <grid name="sharepointdocument" object="9507" jump="fullname" select="1" icon="0" preview="1"> <row name="sharepointdocument" id="sharepointdocumentid"> <cell name="fullname" width="300" imageproviderfunctionname="DocumentManagement.FileTypeIcon.loadSharePointFileTypeIcon" imageproviderwebresource="$webresource:SharePoint_main_system_library.js" /> <cell name="modified" width="150" /> <cell name="sharepointmodifiedby" width="150" /> <cell name="locationname" width="150" /> <cell name="relativelocation" width="200" /> <cell name="servicetype" width="90" /> <cell name="documentid" ishidden="1" /> <cell name="title" ishidden="1" /> <cell name="author" ishidden="1" /> <cell name="sharepointcreatedon" ishidden="1" /> <cell name="sharepointdocumentid" ishidden="1" /> <cell name="filetype" ishidden="1" /> <cell name="readurl" ishidden="1" /> <cell name="editurl" ishidden="1" /> <cell name="ischeckedout" ishidden="1" /> <cell name="absoluteurl" ishidden="1" /> <cell name="locationid" ishidden="1" /> <cell name="iconclassname" ishidden="1" /> </row> </grid> </layoutxml>
重要
レイアウト xml で構成されているすべての属性は、対応するそれぞれの属性が Fetch XML に存在する必要があります。 この構成が正しくない場合、グリッドはエラーを返します。
FetchXml セクションに対して以下のような変更を加えます。
<fetch distinct="false" mapping="logical"> <entity name="sharepointdocument"> <attribute name="documentid" /> <attribute name="fullname" /> <attribute name="relativelocation" /> <attribute name="sharepointcreatedon" /> <attribute name="ischeckedout" /> <attribute name="filetype" /> <attribute name="modified" /> <attribute name="sharepointmodifiedby" /> <attribute name="servicetype" /> <attribute name="absoluteurl" /> <attribute name="title" /> <attribute name="author" /> <attribute name="sharepointdocumentid" /> <attribute name="readurl" /> <attribute name="editurl" /> <attribute name="locationid" /> <attribute name="iconclassname" /> <attribute name="locationname" /> <order attribute="relativelocation" descending="false" /> <filter> <condition attribute="isrecursivefetch" operator="eq" value="0" /> </filter> </entity> </fetch>
savedqueryid 属性が “a5b008ac-07d9-4554-8509-2c05767bff51” に等しい
<SavedQuery>
要素を類似検索します。前の手順で指定した ID で保存されたクエリが見つからない場合は、手順 24 に進みます。 ただし、手順 19 で見つかった
<SavedQuery>
要素が<SavedQuery unmodified="1">
と同様の場合、unmodified="n" 属性を削除します。すべての SharePoint ドキュメントの layoutxml を検索します (すべての SharePoint ドキュメントを検索)。
layoutxml セクションに対して以下のような変更を加えます。
<layoutxml> <grid name="sharepointdocument" jump="fullname" select="1" icon="0" preview="1"> <row name="sharepointdocument" id="sharepointdocumentid"> <cell name="fullname" width="300" imageproviderfunctionname="DocumentManagement.FileTypeIcon.loadSharePointFileTypeIcon" imageproviderwebresource="$webresource:SharePoint_main_system_library.js" /> <cell name="relativelocation" width="200" /> <cell name="modified" width="150" /> <cell name="sharepointmodifiedby" width="150" /> <cell name="sharepointcreatedon" width="300" /> <cell name="documentid" ishidden="1" /> <cell name="title" ishidden="1" /> <cell name="readurl" ishidden="1" /> <cell name="editurl" ishidden="1" /> <cell name="author" ishidden="1" /> <cell name="absoluteurl" ishidden="1" /> <cell name="sharepointdocumentid" ishidden="1" /> <cell name="filetype" ishidden="1" /> <cell name="ischeckedout" ishidden="1" /> <cell name="locationid" ishidden="1" /> <cell name="iconclassname" ishidden="1" /> </row> </grid> </layoutxml>
FetchXml セクションに対して以下のような変更を加えます。
<fetch distinct="false" mapping="logical"> <entity name="sharepointdocument"> <attribute name="documentid" /> <attribute name="fullname" /> <attribute name="relativelocation" /> <attribute name="sharepointcreatedon" /> <attribute name="filetype" /> <attribute name="absoluteurl" /> <attribute name="modified" /> <attribute name="sharepointmodifiedby" /> <attribute name="title" /> <attribute name="readurl" /> <attribute name="editurl" /> <attribute name="author" /> <attribute name="sharepointdocumentid" /> <attribute name="ischeckedout" /> <attribute name="locationid" /> <attribute name="iconclassname" /> <filter> <condition attribute="isrecursivefetch" operator="eq" value="1" /> </filter> <order attribute="relativelocation" descending="false" /> </entity> </fetch>
savedqueryid 属性が “cb177797-b2ac-42a8-9773-5412321a965c” に等しい
<SavedQuery>
要素を類似検索します。前の手順で指定した ID で保存されたクエリが見つからない場合は、手順 29 に進みます。 ただし、手順 24 で見つかった
<SavedQuery>
要素が<SavedQuery unmodified="1">
と同様の場合、unmodified="n" 属性を削除します。OneNote SharePoint ドキュメントの layoutxml を検索します (OneNote SharePoint ドキュメントを検索)。
layoutxml セクションに対して以下のような変更を加えます。
<layoutxml> <grid name="sharepointdocument" jump="fullname" select="1" icon="0" preview="1"> <row name="sharepointdocument" id="sharepointdocumentid"> <cell name="fullname" width="300" imageproviderfunctionname="DocumentManagement.FileTypeIcon.loadSharePointFileTypeIcon" imageproviderwebresource="$webresource:SharePoint_main_system_library.js" /> <cell name="relativelocation" width="200" /> <cell name="modified" width="150" /> <cell name="sharepointmodifiedby" width="150" /> <cell name="sharepointcreatedon" width="300" /> <cell name="title" ishidden="1" /> <cell name="readurl" ishidden="1" /> <cell name="editurl" ishidden="1" /> <cell name="author" ishidden="1" /> <cell name="absoluteurl" ishidden="1" /> <cell name="filetype" ishidden="1" /> <cell name="ischeckedout" ishidden="1" /> <cell name="locationid" ishidden="1" /> <cell name="iconclassname" ishidden="1" /> </row> </grid> </layoutxml>
FetchXml セクションに対して以下のような変更を加えます。
<fetch distinct="false" mapping="logical"> <entity name="sharepointdocument"> <attribute name="documentid" /> <attribute name="fullname" /> <attribute name="relativelocation" /> <attribute name="sharepointcreatedon" /> <attribute name="filetype" /> <attribute name="modified" /> <attribute name="sharepointmodifiedby" /> <attribute name="title" /> <attribute name="readurl" /> <attribute name="editurl" /> <attribute name="author" /> <attribute name="absoluteurl" /> <attribute name="ischeckedout" /> <attribute name="locationid" /> <attribute name="iconclassname" /> <filter type="and"> <condition attribute="documentlocationtype" operator="eq" value="1" /> <condition attribute="isrecursivefetch" operator="eq" value="0" /> <filter type="or"> <condition attribute="filetype" operator="eq" value="one" /> <condition attribute="filetype" operator="eq" value="onetoc2" /> </filter> </filter> <order attribute="sharepointcreatedon" descending="true" /> </entity> </fetch>
ファイルを保存します。
フォルダーを zip 圧縮します。
Dynamics 365 でモデル駆動型アプリを開きます。
設定>ソリューション に移動します。
ソリューションをインポートします (ステップ 8 で zip 圧縮)。
すべてのカスタマイズを公開します。
不正な FetchXML または LayoutXML に関連する問題が解決されていることを確認します。 たとえば、ドキュメントに関連付けられたグリッドが、すべて必要な SharePoint ドキュメントに表示されることを確認します。