レプリケーション エージェント プロファイルを扱う方法 (RMO プログラミング)
エージェント ジョブを作成するときの既定の値を定義するには、レプリケーション エージェント プロファイルを使用します。それぞれのエージェントは既定のプロファイルを持ちます。一部のエージェントには、追加の定義済みプロファイルが用意されています。レプリケーション管理オブジェクト (RMO) を使用することで、ユーザー定義のプロファイルを作成できます。プロファイルの詳細については、「レプリケーション エージェント プロファイル」を参照してください。
新しいエージェント プロファイルを作成するには
ServerConnection クラスのインスタンスを使用して、ディストリビュータへの接続を作成します。
AgentProfile クラスのインスタンスを作成します。
オブジェクトの次のプロパティを設定します。
- Name - プロファイルの名前。
- AgentType - プロファイルを作成するレプリケーション エージェントの種類を指定する AgentType 値。
- ConnectionContext - 手順 1. で作成した ServerConnection。
- (省略可) Description - プロファイルの説明。
- (省略可) Default - この AgentType の新しいエージェント ジョブすべてが、既定でこのプロファイルを使用する場合、このプロパティを true に設定します。
Create メソッドを呼び出し、サーバーにプロファイルを作成します。
サーバーにプロファイルが作成されたら、レプリケーション エージェントのパラメータ値を追加、削除、変更することで、プロファイルをカスタマイズできます。
既存のレプリケーション エージェント ジョブにプロファイルを割り当てるには、AssignToAgent メソッドを呼び出します。ディストリビューション データベースの名前を distributionDBName に渡し、ジョブの ID を agentID に渡します。
既存のエージェント プロファイルを変更するには
ServerConnection クラスのインスタンスを使用して、ディストリビュータへの接続を作成します。
ReplicationServer クラスのインスタンスを作成します。手順 1. で作成した ServerConnection オブジェクトを渡します。
LoadProperties メソッドを呼び出します。このメソッドが false を返す場合、ディストリビュータが存在するかどうかを確認してください。
EnumAgentProfiles メソッドを呼び出します。特定の種類のレプリケーション エージェントのプロファイルが返されるように、AgentType 値を渡します。
返された ArrayList から目的の AgentProfile オブジェクトを取得します。オブジェクトの Name プロパティはプロファイル名と同じです。
AgentProfile の次のメソッドの 1 つを呼び出して、プロファイルを変更します。
- AddParameter - サポートされるパラメータをプロファイルに追加します。ここで、name はレプリケーション エージェント パラメータの名前、value は指定する値です。指定されたエージェントの種類でサポートされるエージェント パラメータをすべて列挙するには、EnumParameterInfo メソッドを呼び出します。このメソッドは、サポートされるすべてのパラメータを表す AgentProfileParameterInfo オブジェクトの ArrayList を返します。
- RemoveParameter - プロファイルから既存のパラメータを削除します。ここで、name はレプリケーション エージェント パラメータの名前です。プロファイルに定義されている現在のエージェント パラメータをすべて列挙するには、EnumParameters メソッドを呼び出します。このメソッドは、このプロファイルの既存のパラメータを表す AgentProfileParameter オブジェクトの ArrayList を返します。
- ChangeParameter - プロファイルの既存のパラメータの設定を変更します。ここで、name はエージェント パラメータの名前、newValue はパラメータの変更後の値です。プロファイルに定義されている現在のエージェント パラメータをすべて列挙するには、EnumParameters メソッドを呼び出します。このメソッドは、このプロファイルの既存のパラメータを表す AgentProfileParameter オブジェクトの ArrayList を返します。サポートされるエージェント パラメータの設定をすべて列挙するには、EnumParameterInfo メソッドを呼び出します。このメソッドは、すべてのパラメータでサポートされる値を表す AgentProfileParameterInfo オブジェクトの ArrayList を返します。
エージェント プロファイルを削除するには
ServerConnection クラスのインスタンスを使用して、ディストリビュータへの接続を作成します。
AgentProfile クラスのインスタンスを作成します。プロファイルの名前を Name に設定し、手順 1. の ServerConnection を ConnectionContext に設定します。
LoadProperties メソッドを呼び出します。このメソッドが false を返す場合、指定された名前が誤っているか、プロファイルがサーバーに存在していません。
Type プロパティが User に設定されていることを確認します。これは、顧客のプロファイルを表します。Type の値が System であるプロファイルは削除しないでください。
Remove メソッドを呼び出して、このオブジェクトで表されるユーザー定義プロファイルをサーバーから削除します。
参照
処理手順
レプリケーション エージェント プロファイルを扱う方法 (レプリケーション Transact-SQL プログラミング)