ITableData::HrModifyRows

適用対象: Outlook 2013 | Outlook 2016

複数のテーブル行を挿入し、既存の行を置き換える場合があります。

HRESULT HrModifyRows(
  ULONG ulFlags,
  LPSRowSet lpSRowSet
);

パラメーター

ulFlags

[����]�\�񂳂�Ă��܂��B0 �ɂ���K�v������܂��B

lpSRowSet

[in]必要に応じて既存の行を置き換え、追加する行のセットを含む SRowSet 構造体へのポインター。 行セット内の各 SRow 構造体の lpProps メンバーが指すプロパティ値構造体の 1 つに、CreateTable 関数の呼び出しで ulPropTagIndexColumn パラメーターで指定されたのと同じ値であるインデックス列が含まれている必要があります。

戻り値

S_OK

行が正常に挿入または変更されました。

MAPI_E_INVALID_PARAMETER

渡された行の 1 つ以上にインデックス列がありません。 このエラーが返された場合、行は変更されません。

注釈

ITableData::HrModifyRows メソッドは、lpSRowSet パラメーターによって指される SRowSet 構造体によって記述された行を挿入します。 行セット内の行のインデックス列の値がテーブル内の既存の行の値と一致する場合、既存の行が置き換えられます。 SRowSet 構造体に含まれる行と一致する行が存在しない場合、HrModifyRows はテーブルの末尾に行を追加します。

テーブルのすべてのビューは、 lpSRowSet が指す行を含むように変更されます。 ただし、ビューに行を除外する制限がある場合は、ユーザーに表示されない可能性があります。

lpSRowSet が指す行の列は、テーブル内の列と同じ順序である必要はありません。 呼び出し元は、現在テーブルに存在しない列プロパティとして含めることもできます。 既存のビューの場合、 HrModifyRows はこれらの新しい列を使用できますが、現在の列セットには含まれません。 今後のビューの 場合、HrModifyRows には列セットに新しい列が含まれます。

HrModifyRows が行を追加すると、テーブルのビューを持ち、通知を登録するためにテーブルの IMAPITable::Advise メソッドを呼び出したすべてのクライアントまたはサービス プロバイダーに通知が送信されます。 MAPI は、各行のTABLE_ROW_ADDEDまたはTABLE_ROW_MODIFIED通知を最大 8 行送信します。 HrModifyRows 呼び出しの影響を受ける行が 8 行を超える場合、MAPI は代わりに 1 つのTABLE_CHANGED通知を送信します。

関連項目

SRowSet

ITableData : IUnknown