Sintaxis
RECLOCK( <cAlias>, <lInclui> )
Propósito
Traba el registro del archivo de datos que está marcado, permitiendo grabar la inclusión o modificación.
Argumentos
< cAlias >
Define el alias que identifica el área de trabajo que se utilizará.
< lInclui >
Define si la operación será una inclusión (.T.) o una modificación (.F.).
Utilización
Para grabar o actualizar el contenido de los campos de un registro del archivo de datos, es necesario trabar (reservar) el registro. Para ello debe utilizarse la función RECLOCK(). Después de la actualización, es necesario destrabar el registro por medio de la función MSUNLOCK() para que otros usuarios puedan actualizarlo, si es necesario.
Ejemplos
El siguiente ejemplo describe una inclusión:
dbSelectArea(“SA1”)
RECLOCK(“SA1”, .T.)
SA1->A1_FILIAL := xFilial(“SA1”) // Devuelve la sucursal de acuerdo con las configuraciones del ERP Protheus
SA1->A1_COD := “900001”
SA1->A1_LOJA := “01”
SA1->A1_NOME := “MARCOS AURELIUS TERCEIRUS”
SA1->A1_NREDUZ := “MARCOS AURELIUS”
MSUNLOCK() // Destraba el registro
El siguiente ejemplo describe una modificación:
dbSelectArea(“SA1”)
dbSetOrder(1) // A1_FILIAL + A1_COD + A1_LOJA
dbSeek(xFilial(“SA1”) + “900001” + “01”) // Busca exacta
IF FOUND() // Evalúa la devolución de la búsqueda realizada
RECLOCK(“SA1”, .F.)
SA1->A1_NOME := “MARCOS AURELIUS TERCEIRUS”
SA1->A1_NREDUZ := “MARCOS AURELIUS”
MSUNLOCK() // Destraba el registro
ENDIF