ITableData::HrDeleteRows
Область применения: Outlook 2013 | Outlook 2016
Удаляет несколько строк таблицы.
HRESULT HrDeleteRows(
ULONG ulFlags,
LPSRowSet lprowsetToDelete,
ULONG FAR * cRowsDeleted
);
Параметры
ulFlags
[в] Битовая маска флагов, управляющая удалением. Можно задать следующий флаг:
TAD_ALL_ROWS
Удаляет все строки из таблицы и все соответствующие представления, отправляя одно уведомление TABLE_RELOAD.
lprowsetToDelete
[в] Указатель на набор строк, описывающий удаляемые строки. Параметр lprowsetToDelete может иметь значение NULL, если флаг TAD_ALL_ROWS задан в параметре ulFlags .
cRowsDeleted
[out] Количество удаленных строк.
Возвращаемое значение
S_OK
Строки таблицы были успешно удалены.
Замечания
Метод ITableData::HrDeleteRows находит и удаляет строки таблицы, содержащие столбцы, соответствующие свойству, на которое указывает член lpProps каждой записи aRow в наборе строк. Столбец индекса используется для идентификации каждой строки; Этот столбец должен иметь тот же тег свойства, что и тег свойства, переданный в параметре ulPropTagIndexColumn при вызове функции CreateTable .
Количество фактически удаленных строк возвращается в cRowsDeleted. Если не удалось найти одну или несколько строк, ошибка не возвращается.
После удаления строк уведомления отправляются всем клиентам или поставщикам служб, у которых есть представление таблицы и которые вызвали метод IMAPITable::Advise таблицы, чтобы зарегистрироваться для получения уведомлений.
Удаление строк не приводит к сокращению столбцов, доступных для существующих представлений таблиц или открывавшихся в дальнейшем представлений таблиц, даже если удаленные строки являются последними, имеющими значения для определенного столбца.