versión 3
ADD RECORD ({tabla}{; }{*})
Parámetro | Tipo | Descripción | |
tabla | Tabla | Tabla a utilizar para entrada de datos o | |
Tabla por defecto, si se omite | |||
* | Ocultar barras de desplazamiento |
Descripción
El comando ADD RECORD le permite al usuario añadir un nuevo registro en la tabla tabla o en la tabla por defecto, si omite el parámetro tabla.
ADD RECORD crea un nuevo registro, hace del nuevo registro el registro actual para el proceso actual y muestra el formulario de entrada actual. En el entorno Menús personalizados, después de que el usuario acepta el nuevo registro, el nuevo registro es el único registro en la selección actual.
La siguiente imagen presenta un formulario de entrada de datos típico.
El formulario aparece en la ventana del primer plano del proceso. La ventana tiene barras de desplazamiento y una caja de control del tamaño. Si pasa el parámetro opcional * la ventana aparece sin las barras de desplazamiento y sin la caja de control de tamaño.
ADD RECORD muestra el formulario hasta que el usuario acepta o cancela el registro. Si el usuario está añadiendo varios registros, el comando debe ejecutarse una vez para cada registro.
El registro se guarda (aceptado) si el usuario hace clic en el botón Aceptar o al presionar la tecla Intro (teclado numérico), o si se ejecuta el comando ACCEPT.
El registro no se guarda (cancelado) si el usuario hace clic en el botón Cancelar o presiona la tecla de anulación Esc o si se ejecuta el comando CANCEL.
Después de llamar a ADD RECORD, OK toma el valor 1 si se acepta el registro y 0 si se cancela.
Nota: Incluso cuando se cancela, el registro permanece en memoria y puede guardarse si SAVE RECORD se ejecuta antes de que cambie el puntero del registro actual.
Ejemplos
1. El siguiente ejemplo es un bucle utilizado generalmetne para añadir nuevos registros a una base:
INPUT FORM ([Clientes];"Entrada") ` Designar el formulario de entrada de la tabla [Clientes] Repeat ` Bucle hasta que el usuario cancele ADD RECORD ([Clientes];*) ` Añadir un registro a la tabla [Clientes] Until (OK=0) ` Hasta que el usuario cancele
2. El siguiente ejemplo busca un cliente en la base. Dependiendo de los resultado de la búsqueda, sucederá una de estas cosas. Si no se encuentra un cliente, entonces se le permite al usuario añadir un nuevo cliente con ADD RECORD. Si se encuentra al menos un cliente, se le presenta al usuario el primer registro encontrado, el cual puede modificarse con MODIFY RECORD:
READ WRITE([Clientes]) INPUT FORM([Clientes];"Entrada") ` Designar el formulario de entrada vlCustNum:=Num(Request ("Introducir un número de cliente:")) ` Obtener el número de cliente If (OK=1) QUERY ([Clientes];[Clientes]CustNo=vlCustNum) ` Buscar el cliente If (Records in selection([Clientes])=0) ` si no se encuentra ningún cliente ADD RECORD([Clientes]) ` Añadir un nuevo registro Else If(Not(Locked([Clientes]))) MODIFY RECORD([Clientes]) ` Modificar el registro UNLOAD RECORD([Clientes]) Else ALERT("El registro está siendo utilizado actualmente.") End if End if End if
Ver también
ACCEPT, CANCEL, CREATE RECORD, MODIFY RECORD, SAVE RECORD.
Variables o conjuntos sistema
La variable sistema OK toma el valor 1 si se acepta el registro y 0 si se cancela. La variable OK no toma ningún valor hasta que el registro haya sido validado o anulado.