Поделиться через


IAsynchronousNotifyingChangeApplierTarget::SaveChangeWithChangeUnits

Сохраняет в хранилище элементов изменение элемента, который содержит изменения базовой единицы.

NoteПримечание.

Этот метод устарел.

HRESULT SaveChangeWithChangeUnits(
  ISyncChange * pChange,
  ISaveChangeWithChangeUnitsContext * pSaveContext);

Параметры

  • pChange
    [in] Изменение элемента, подлежащее применению.
  • pSaveContext
    [in] Сведения о применяемом изменении.

Возвращаемое значение

  • S_OK

  • Коды ошибок, определяемые поставщиком

Примечания по реализации

При вызове метода SaveChangeWithChangeUnits поставщик должен выполнить одно из следующих действий.

  • Вернуть из метода код успешного завершения, а затем вызвать метод IAsynchronousNotifyingChangeApplierTargetCallback::SaveChangeWithChangeUnitsComplete, чтобы сообщить об успешном завершении асинхронной обработки.

  • Вернуть из метода код успешного завершения, а затем вызвать метод IAsynchronousNotifyingChangeApplierTargetCallback::OnError, чтобы сообщить об ошибке при асинхронной обработке.

  • Вернуть из метода код ошибки. В этом случае методы объекта IAsynchronousNotifyingChangeApplierTargetCallback вызываться не должны.

Если в параметре pSaveContext содержится действие SSA_CREATE, то в случае невозможности успешного сохранения всех базовых единиц необходимо целиком отменить изменение элемента. Сохранение некоторых базовых единиц и неудача при сохранении других может привести к повреждению данных.

Если метод ISaveChangeWithChangeUnitsContext::SetRecoverableErrorOnChangeUnit вызывается, когда параметр pSaveContext имеет значение SSA_CREATE, метод SetRecoverableErrorOnChangeUnit возвращает значение SYNC_E_ON_CREATE_MUST_FAIL_ENTIRE_ITEM.

См. также

Справочник

Интерфейс IAsynchronousNotifyingChangeApplierTarget
Интерфейс IAsynchronousNotifyingChangeApplierTargetCallback