Eventos WillChangeRecordset e RecordsetChangeComplete (ADO)

Aplica-se ao: Access 2013, Office 2013

O evento WillChangeRecordset é cancelado antes que uma operação pendente altere Recordset. O evento RecordsetChangeComplete é chamado depois que o Recordset for chamado.

Sintaxe

WillChangeRecordsetadReason, adStatus, pRecordset

RecordsetChangeCompleteadReason, pError, adStatus, pRecordset

Parâmetros

Parâmetro Descrição
adReason Um valor EventReasonEnum que especifica a razão para esse evento. Seu valor pode ser adRsnRequery, adRsnResynch, adRsnClose, adRsnOpen.
adStatus EventStatusEnum. Quando WillChangeRecordset for chamado, esse parâmetro será definido como adStatusOK se a operação que provocou o evento tiver sido bem-sucedida. Ele será definido como adStatusCantDeny se esse evento não puder solicitar o cancelamento da operação pendente.

Quando RecordsetChangeComplete for chamado, esse parâmetro será configurado como adStatusOK se a operação que provocou o evento tiver sido bem-sucedida, adStatusErrorsOccurred se a operação tiver falhado ou adStatusCancel se a operação associada ao evento WillChangeRecordset anteriormente aceito tiver sido cancelada.

Antes que WillChangeRecordset seja retornado, defina esse parâmetro como adStatusCancel para solicitar o cancelamento da operação pendente ou defina esse parâmetro como adStatusUnwantedEvent para evitar notificações subsequentes.

Antes que WillChangeRecordset ou RecordsetChangeComplete seja retornado, defina esse parâmetro como adStatusUnwantedEvent para evitar notificações subsequentes.
pError Um objeto Error. Ele descreve o erro que ocorreu se o valor adStatus for adStatusErrorsOccurred; caso contrário, não será configurado.
pRecordset Um objeto Recordset. O Recordset para o qual esse evento ocorreu.

Comentários

Um evento WillChangeRecordset ou RecordsetChangeComplete pode ocorrer devido aos métodos RecordsetRequery ou Open.

Se o provedor não suportar indicadores, ocorrerá uma notificação de evento RecordsetChange sempre que novas linhas forem obtidas junto ao provedor. A frequência desse evento depende da propriedade RecordsetCacheSize.

Você deve definir o parâmetro adStatus como adStatusUnwantedEvent para cada valor adReason possível para parar completamente a notificação de evento para qualquer evento que inclua um parâmetro adReason.