funcion LeerRegistroOp(
NombreFichero: cadena;
CamposCondicion: tabla de cadena;
Operadores: tabla de entero;
ValoresCondicion: tabla de variante;
var IdRegistro: entero;
EsGenerica: booleano =
Falso)
:booleano;
Mismo funcionamiento que LeerRegistro pero permite indicar
un vector de Operadores para que las comparaciones puedan ser de
diversos tipos. |
Al igual que LeerRegistro, lee el primer
registro del fichero NombreFichero que
cumple todas las condiciones y lo añade a una lista en memoria, devolviendo en IdRegistro un identificador que permite su acceso
posterior utilizando las funciones relacionadas AsignarValorRegistro, ValorRegistro, etc.
Esta función, adicionalmente,
permite indicar mediante la tabla Operadores
la comparación a realizar entre cada elemento de CamposCondicion
y el correspondiente de ValoresCondicion.
·
NombreFichero: Mismo significado que en LeerRegistro.
·
CamposCondicion: Mismo significado que en LeerRegistro.
·
Operadores: Cada posición indica cómo se comparará el CamposCondicion y el ValoresCondicion
equivalentes, según los siguientes valores:
0 à CamposCondicion = ValoresCondicion.
1 à CamposCondicion <> ValoresCondicion.
2 à CamposCondicion > ValoresCondicion.
3 à CamposCondicion < ValoresCondicion.
4 à CamposCondicion >= ValoresCondicion.
5 à CamposCondicion <= ValoresCondicion.
·
ValoresCondicion: Mismo significado que en LeerRegistro.
·
IdRegistro: Mismo significado que en LeerRegistro.
·
EsGenerica: Mismo significado que en LeerRegistro.
Cierto, si ha encontrado un registro que cumpliera las
condiciones indicadas y lo ha cargado en memoria, y Falso en caso
contrario.
ReadRecordOp
No varía su funcionamiento.
·
Tutorial >> Operar con la base de datos >> Nombres de
ficheros y códigos de campos
·
Tutorial >> Operar con la base de datos >> Correspondencia
de los tipos de datos
·
Tutorial >> Operar con la base de datos >> Funciones de gestión de registros
·
Tutorial >> Operar con la base de datos >>
Funciones de gestión de registros >> Gestionar
todos los registros que cumplen una determinada condición
·
Tutorial >> Cómo ejecuta OriGn los scripts >>
Casos conflictivos y su solución >> Creación de
registros y otros cambios en ficheros
// buscar un contacto cuyo campo C1 contenga el valor 'Mujer' // y cuyo campo C2 NO contenga el valor 'Barcelona'.si LeerRegistroOp('CONTACTO', ['C1', 'C2'], [0, 1], ['Mujer', 'Barcelona'], IdRegistro) entonces inicioAviso('Fuera de Barcelona hay al menos una mujer'); fin; |