Propriedade Recordset2.BOF (DAO)
Aplica-se ao: Access 2013, Office 2013
Retorna um valor que indica se a posição atual do registro será antes do primeiro registro em um objeto Recordset. Boolean somente leitura.
Sintaxe
expressão . BOF
Expressão Uma variável que representa um objeto Recordset2 .
Comentários
Você pode usar as propriedades BOF e EOF para determinar se um objeto Recordset contém registros ou se você foi além dos limites de um objeto Recordset ao se mover de registro em registro.
O local do ponteiro do registro atual determina os valores de retorno BOF e EOF.
Se a propriedade BOF ou EOF for True, não existirá um registro atual.
Se você abrir um objeto Recordset que não contenha registros, as propriedades BOF e EOF estarão definidas como True e a propriedade RecordCount do objeto Recordset estará definida como 0. Quando você abrir um objeto Recordset que contenha pelo menos um registro, o primeiro registro será o registro atual e as propriedades BOF e EOF serão False; essas propriedades permanecerão como False até que você se mova além do início ou do final do objeto Recordset por meio do método MovePrevious ou MoveNext, respectivamente. Quando você se mover além do início ou do final do conjunto de registros, não existirá nenhum registro incluindo o registro atual .
Se você excluir o último registro do objeto Recordset, as propriedades BOF e EOF permanecerão como False até você tentar o reposicionamento do registro atual.
Se você usar o método MoveLast em um objeto Recordset que contenha registros, o último registro se tornará o registro atual; mais tarde, se você usar o método MoveNext, o registro atual se tornará inválido e a propriedade EOF será definida como True. De modo inverso, se você usar o método MoveFirst em um objeto Recordset que contenha registros, o primeiro registro se tornará o registro atual; mais tarde, se você usar o método MovePrevious, não existirá nenhum registro atual e a propriedade BOF será definida como True.
De um modo geral, quando você trabalhar com todos os registros em um objeto Recordset, o código fará um loop pelos registros usando o método MoveNext até que a propriedade EOF seja definida como True.
Se você usar o método MoveNext enquanto a propriedade EOF estiver definida como True ou o método MovePrevious enquanto a propriedade BOF estiver definida como True, ocorrerá um erro.
Esta tabela mostra quais métodos Move são permitidos com diferentes combinações das propriedades BOF e EOF.
MoveFirst, |
MovePrevious, |
|
MoveNext, |
|
---|---|---|---|---|
BOF=True, |
Permitido |
Erro |
Erro |
Permitido |
BOF=False, |
Permitido |
Permitido |
Erro |
Erro |
Ambas Verdadeiras |
Erro |
Erro |
Erro |
Erro |
Ambas Falsas |
Permitido |
Permitido |
Permitido |
Permitido |
Permitir um método Move significa que o método localizará com êxito um registro. Indica simplesmente uma tentativa para executar o método Move especificado e permitido e não gerará erro. O estado das propriedades BOF e EOF poderá ser alterado como resultado de uma tentativa do método Move.
Um método OpenRecordset chama internamente um método MoveFirst. Por esse motivo, o uso de um método OpenRecordset em um conjunto de registros vazio definirá as propriedades BOF e EOF como True. (Consulte a tabela a seguir para conhecer o comportamento de um método MoveFirst com falha.)
Todos os métodos Move localizados com sucesso em um registro definirão as propriedades BOF e EOF como False.
Em umespaço de trabalho do Microsoft Access, se você adicionar um registro a um conjunto de registros vazio, BOF se tornará False, mas EOF permanecerá True, indicando que a posição atual é o final do conjunto de registros.
Qualquer método Delete, mesmo que remova somente o registro restante de um conjunto de registros, não alterará a definição da propriedade BOF ou EOF.
A tabela a seguir mostra como os métodos Move que não localizam um registro afetam as configurações das propriedades BOF e EOF.
BOF |
EOF |
|
---|---|---|
MoveFirst, MoveLast |
Verdadeiro |
Verdadeiro |
Move 0 |
Sem alteração |
Sem alteração |
MovePrevious, Move< 0 |
Verdadeiro |
Sem alteração |
MoveNext, Move> 0 |
Sem alteração |
Verdadeiro |