DBRLOCK()
 Bloquea el registro que coincide con la identidad especificada o con
 la actual
------------------------------------------------------------------------------
 Sintaxis

     DBRLOCK(<xIdentidad>) --> lExito

 Argumentos

     <xIdentidad> es un valor único en la estructura del fichero de
     datos que identifica de forma unívoca a uno de sus elementos (de base
     de datos). En ficheros con estructura de datos .dbf, <xIdentidad> es
     el número de registro. En otros formatos de datos, <xIdentidad> es el
     valor de la clave principal.

 Devuelve

     DBRLOCK() devuelve un valor lógico que es verdadero (.T.) si no hay
     error en el bloqueo y falso (.F.) en caso contrario.

 Descripción

     DBRLOCK() es una función de base de datos que bloquea el registro cuya
     identidad se corresponde con <xIdentidad>. En una estructura de datos
     del tipo Xbase, la identidad es el número de registro.

     Si no se especifica <xIdentidad>, se bloquea el registro actual y se
     suprimen los bloqueos del resto de registros. Si se especifica
     <xIdentidad>, DBRLOCK() intenta bloquear el registro, y si no hay
     error, lo añade a la lista de registros bloqueados.

 Ejemplos

      Este ejemplo muestra dos formas diferentes de bloquear varios
        registros:

        FUNCTION dbRBloquearIntervalo(nSup, nInf)

              LOCAL nReg
              FOR nReg := nInf TO nSup

                  IF !DBRLOCK(nReg)
                    DBRUNLOCK()                 // Fallo, desbloquea todo
                  ENDIF
              NEXT
           RETURN DBRLOCKLIST()                 // Devuelve una matriz con
                                                // los bloqueos actuales

        FUNCTION dbRBloquearMatriz(aLista)

              LOCAL nElemento, nLong, lDev
              lDev := .T.
              nLong := LEN (aLista)
              FOR nElemento := 1 TO nLong
                  IF !DBRLOCK(aLista[nElemento])
                     DBRUNLOCK()       // Fallo: desbloquear todo
                     lDev := .F.
                  ENDIF
              NEXT
           RETURN lDev
 To download this example - click here.

See Also: DBUNLOCK() DBUNLOCKALL() FLOCK() RLOCK() UNLOCK