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.