Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Composition Setup
import.css=/download/attachments/3279126062824/newLayouttecnologia.css

Pagetitle
DBRLockList
DBRLockList

Função: DBRLockList

Verifica quais registros estão bloqueados, na tabela corrente, e retorna uma tabela unidimensional com os números dos registros.

DBRLockList ( ) --> aRet

...

Retorna um array com o índice registros que estão bloqueados na tabela atual.

Sintaxe

Bloco de código
collapsefalse
DBRLockList()

Retorno

Nome

Tipo

Descrição

aRet

vetor

...

Retorna uma lista com os números dos registros bloqueados na tabela corrente.

...

Observações

  • A lista não contém valores repetidos e não é ordenada. A ordem de retorno será a ordem de bloqueio.
  • Para retornar valores válidos, a tabela deve estar aberta no modo compartilhado.
  • Caso não haja tabela aberta, o programa será encerrado com ocorrência de erro recuperável "Work area not in use".
  • Caso a tabela tenha sido aberta, mas no modo exclusivo, o retorno será um array com o índice zero ({ 0 }).
  • Caso a tabela tenha sido aberta no modo compartilhado, mas não existam registros bloqueados, o retorno será um array vazio ({}).

Exemplos

...

O exemplo abaixo utiliza a RDD "TOPCONN", mas a função pode ser utilizada com qualquer uma das RDDs válidas.

Bloco de código
languagecpp
themeEclipse
linenumberstrue
collapsefalse
user function test()
  Local nHandle := TCLink( "MSSQL/DSN1", "127.0.0.1", 7890 )
  Local cTable := "MYTABLE"
  Local cRDD := "TOPCONN"
  
  // Abre a tabela em modo exclusivo
  DBUseArea( .T.,

...

 cRDD, cTable, (cTable), .F., .F. )
  
  varinfo( "ret", DBRLockList() ) // Retorna: { 0 }
  
  DBCloseArea()
  
  // Abre a tabela em modo compartilhado
  DBUseArea( .F., cRDD, cTable, (cTable), .T., .F. )
  
  varinfo( 

...

"ret", DBRLockList() ) // Retorna: {}
  
  DBGoTop()

...


  
  DBRLock()       // Bloqueia o primeiro registro

...


  DBRLock( 110 )  // Bloqueia o registro de número 110

...


  DBRLock( 100 )  // Bloqueia o registro de número 100

...


  
  varinfo( "ret", DBRLockList() ) // Retorna: { 1, 110, 100 }
  
  DBRLock( 110 )  // Bloqueia o registro de número 110
  DBRLock(   1 )  // Bloqueia o primeiro registro
  
  varinfo( "ret", DBRLockList() ) // Retorna: { 1, 110, 100 }
  
  // Fecha a tabela
  

...

...

DBCloseArea()
  
  // Desconecta do SGBD
  TCUnlink( nHandle )
return

Veja também