ドキュメント コンバータ

最終更新日: 2010年11月19日

適用対象: SharePoint Server 2010

この記事の内容
ドキュメント変換プロセスの概要
ドキュメント コンバータの適用範囲
ドキュメント変換のファイルの種類
IRM で保護されたファイルを変換する
変換の優先度

ドキュメント コンバーターは、あるファイルの種類のドキュメントを使用して、そのファイルのコピーを別のファイルの種類で生成するカスタムの実行可能ファイルです。たとえば、ドキュメント コンバーターは、Microsoft Excel 2010 ファイルを使用して ファイルを生成することができます。ドキュメント コンバーターを使用すると、ビジネス ニーズに合わせてコンテンツを別のバージョンに変換できます。下書きドキュメントを長期間保存するために別の最終形式に変換する場合や、内部ドキュメントを顧客向けのサイトに配置するために別の形式に変換する必要がある場合などが考えられます。

Microsoft SharePoint Server 2010 には、カスタム ドキュメント コンバーターを Web アプリケーションのドキュメント ライブラリで利用できるようにするための拡張可能なフレームワークが付属しています。カスタム ドキュメント コンバーターを開発するための基本的な手順は次のとおりです。

  1. Web アプリケーションでドキュメント変換が有効になっていることを確認します。

  2. 特定のコマンド ライン コマンドを使用して呼び出すことができる実行可能ファイルを作成します。

  3. Web アプリケーション レベルでの展開とアクティブ化が可能な機能として、実行可能ファイルをドキュメント コンバータ定義ファイルと共にパッケージ化します。

  4. ドキュメント コンバータをインストールしてアクティブ化します。その後にドキュメント コンバータを構成するには、サーバーの全体管理ユーザー インターフェイスを使用します。

ドキュメント コンバータが応答する必要があるコマンド ライン コマンドの詳細については、「ドキュメント コンバータ実行コマンド」を参照してください。

ドキュメント コンバータの展開の詳細については、「ドキュメント コンバータの展開」を参照してください。

ドキュメント変換プロセスの概要

ドキュメント変換はリソースを多く使用する可能性があるので、SharePoint Server 2010 は変換の負荷分散、優先度付け、およびスケジュールの管理を DocConvLoadBalancerDocConvLauncher の 2 つのサービスに依存します。ユーザー インターフェイスまたはオブジェクト モデルを介してユーザーがドキュメント変換を開始すると、SharePoint Server 2010 は、これらの 2 つのサービスにドキュメント変換要求を渡します。実際にドキュメント コンバーターを呼び出すのは DocConvLaunch サービスです。呼び出されたドキュメント コンバーターは、元のファイルを使用して変換コピーを生成します。その後、SharePoint Server 2010 は変換コピーを取得し、それに対して一定の後処理操作を実行します。それらの操作を次に示します。

  • ドキュメント コンバーターの既定の後処理が使用される場合に、元のファイルのメタデータを変換されたコピーに追加します。スマート クライアントのオーサリング中など、他のケースでは、SharePoint Server 2010 は既定以外の後処理を使用して、元のファイルのメタデータを変換されたコピーに追加します。

    ドキュメント コンバーターは、既定の後処理の一環として、旧ファイルのすべてのフィールドを新規ファイルに転送します。

    // Set required properties.
                        foreach (SPField field in file.Item.Fields)
                        {
                            // If we have a field that is not read only,
                            // where the child does not have a value yet
                            // but the parent does, copy that field.
                            if (!field.ReadOnlyField &&
                                !field.Hidden &&
                                newFile.Item[field.InternalName] == null &&
                                file.Item[field.InternalName] != null)
                            {
                                newFile.Item[field.InternalName] = file.Item[field.InternalName];
                                fUpdateNewFile = true;
                            }
                        }
    

    スマート クライアントのオーサリングでは、メタデータはページに転送されません。これは、スマート クライアントのオーサリングで、runDefaultPostProcessing に対して false を返す後処理が実行されるためです。

    bool runDefaultPostProcessing = true;
                    if (tp != null)
                        tp.PostProcess(etr, cdti, out runDefaultPostProcessing);
    
                    if (runDefaultPostProcessing)
    

    SharePoint Server 2010 での後処理の詳細については、PostProcess() メソッドを参照してください。

  • 変換コピーの生成に使用された元のファイルとドキュメント コンバータを識別するメタデータを追加します。

  • 指定されたユーザーに変換が実行されたことを通知します。

  • 変換コピーを元のファイルと同じドキュメント ライブラリに配置します。

DocConvLoadBalancer サービスおよび DocConvLaunch サービスの詳細については、「ドキュメント変換に必要なサービス」を参照してください。

ドキュメント コンバーターの応答が必要なコマンド ライン コマンドの詳細については、「ドキュメント コンバータ実行コマンド」を参照してください。

変換コピーに対して SharePoint Server 2010 が実行する後処理操作の詳細については、「変換されたドキュメント」を参照してください。

ドキュメント コンバータの適用範囲

ドキュメント コンバータは、Web アプリケーション レベルで有効にされます。ドキュメント コンバータが Web アプリケーションに対してアクティブ化されると、その Web アプリケーション内のすべてのサイトのすべてのドキュメント ライブラリでそのコンバータが使用可能になります。

特定のサイトまたはドキュメント ライブラリに対してドキュメント コンバータを無効にすることはできません。

ドキュメント コンバーターがユーザー インターフェイスに表示されないよう設定することもできます。その場合、ドキュメント コンバーターには SharePoint Server 2010 オブジェクト モデルからのみアクセスできます。たとえば、アイテムをアーカイブするバッチ処理の一部として管理者のみが使用できるドキュメント コンバーターを設置できます。そうすると、その他のユーザーはユーザー インターフェイスからこのドキュメント コンバーターを使用できません。

ドキュメント変換のファイルの種類

Web アプリケーションで、同じファイルの種類の拡張子を持つ元のドキュメントを使用して同じファイルの種類の拡張子を持つ変換コピーを生成する複数のコンバータを設置できます。たとえば、Excel ファイルを使用して PowerPoint ファイルに変換する複数のコンバータを設置できます。各コンバータはファイルに対して異なる変換機能を実行しますが、それぞれの最終的なファイルの種類の拡張子は同じです。このため、同じ元のドキュメントに対して同じファイルの種類の複数の変換コピーが生成されることがあります。

SharePoint Server 2010 では、それぞれの変換コピーの作成に使用されたコンバーターの GUID が保存されます。変換コピーの生成に特定のコンバーターが使用されたかどうかを調べる場合は、ファイルの種類の拡張子ではなく GUID が使用されます。

IRM で保護されたファイルを変換する

ドキュメントが Information Rights Management (IRM) で保護されている場合、作成する変換コピーも IRM で保護されます。IRM で保護されたファイル形式のドキュメントを使用する場合に、IRM で保護されていないファイル形式の変換コピーを作成するコンバータを選択すると、変換はエラーになります。

変換の優先度

各ドキュメント変換の優先度を、3 つのレベルのいずれかに設定できます。DocConversionLauncherService サービスは、ドキュメント変換要求が実行される順序をスケジュールするときに、ドキュメント変換の優先度を考慮します。

優先度の値は次のとおりです。

1 (高)

SharePoint Server 2010 ユーザー インターフェイスから開始されたすべてのドキュメント変換の既定の優先度。

2 (標準)

Windows SharePoint Services オブジェクト モデルを使用して開始されたすべてのドキュメント変換の既定の優先度。

3 (低)

ドキュメント変換の大量バッチ処理の推奨優先度レベル。ドキュメント変換は、バッチ処理の実行時は特に、リソースを多く使用する可能性があります。

ドキュメント変換の優先度は、ユーザー インターフェイスからは明示的に設定できません。

オブジェクト モデルを使用してドキュメント変換要求の優先度を明示的に設定するには、Convert メソッドの優先度の引数を設定します。

関連項目

概念

ドキュメント コンバータの概要

変換されたドキュメントのカスタム処理