|
|
|
|
- ¿Cuándo utilizar la función <Fuente>.BuildKeyValue?
- Búsqueda genérica
- Creación de una clave compuesta utilizada en un filtro con límites
- Construir una llave compuesta sin usar <Fuente>.BuildKeyValue
<Fuente>.BuildKeyValue (Función)
No disponible con este tipo de conexión
Construye el valor de una clave compuesta para implementar un filtro ( <Fuente>.Filter) o para realizar una búsqueda ( <Fuente>.ReadSeekFirst, <Fuente>.ReadSeekLast, etc.). Esta función puede sustituirse por una array de valores, más fácil de utilizar. Por ejemplo:
FileName.ReadSeekFirst(LINKEDCOMPKEY, ["Last name", "First name"])
Son iguales:
FileName.ReadSeekFirst(LINKEDCOMPKEY, ... FileName.BuildKeyValue(LINKEDCOMPKEY, "Last name", "First name"))
Sugerencia: Para realizar un bucle en un archivo de datos utilizando una clave compuesta, utilice la sentencia FOR EACH con una clave compuesta (sintaxis 5). Recordatorio: Las claves compuestas son cadenas binarias cuyo contenido no se puede mostrar directamente.
bufSoughtVal is Buffer // Build the composite key bufSoughtVal = Customer.BuildKeyValue(LastName_FirstName, "MOORE", "Vince") // Build a String/Integer composite key bufSoughtVal = Customer.BuildKeyValue(LASTNAME_CUSTNUM,"MOORE",12128) // Build an Integer/Integer composite key bufSoughtVal = Order.BuildKeyValue(ORDERID_ORDERID, 12119,593)
Sintaxis
<Result> = <Source>.BuildKeyValue(<Composite key> , <Value of components>)
<Result>: Buffer Valor de la clave compuesta. <Source>: Tipo de fuente especificada Nombre del archivo de datos HFSQL utilizado. <Composite key>: Cadena de caracteres Nombre del elemento que corresponde a la clave compuesta <Value of components>: Cadena de caracteres Valor que se asignará a cada componente de la clave compuesta. Este parámetro tiene el siguiente formato:
<Component 1>, <Component 2>, ..., <Component N> Por ejemplo: "MEDINA", "Felipe". Observaciones ¿Cuándo utilizar la función <Fuente>.BuildKeyValue? <Fuente>.BuildKeyValue se puede utilizar para realizar búsquedas en claves de cadenas binarias relacionado a claves compuestas. Por ejemplo: - FileA file:
COMPKEY es una clave compuesta de FileA. Composición: ArchivoA.Apellido+ArchivoA.Nombre - Fichero FileB:
LINKEDCOMPKEY es una clave de cadena binaria relacionado a FileA.COMPKEY
Realización de una búsqueda sobre el valor de la clave compuesta:
FileB.ReadSeekFirst(LINKEDCOMPKEY, FileA.BuildKeyValue(COMPKEY, ... "Last name", "First name"))
o
bufKey is Buffer bufKey = FileA.BuildKeyValue(COMPKEY, "Last name", "First name") FileB.ReadSeekFirst(LINKEDCOMPKEY, buKey)
o
FileB.ReadSeekFirst(LINKEDCOMPKEY, FileA.COMPKEY)
si el ArchivoA está posicionado en el Record para buscar en el ArchivoB. También puede utilizar un array de valores en lugar de <Fuente>.BuildKeyValue:
FileB.ReadSeekFirst(LINKEDCOMPKEY, ["Last name", "First name"])
Búsqueda genérica Cuando se realiza una búsqueda genérica, no es necesario definir los valores de todos los componentes.. Sólo se requieren los primeros n valores (n se incluye entre 1 y el número de componentes clave, incluidos los límites). Creación de una clave compuesta utilizada en un filtro con límites Para construir el valor de una clave compuesta utilizada en un filtro, llame a <Fuente>.BuildKeyValue. - Si el límite mínimo y máximo del filtro deben ser idénticos, se deben completar los límites con las constantes hMinVal y hMaxVal.
El siguiente ejemplo se utiliza para encontrar todos los registros del archivo de Cliente correspondientes a "Vince Moore":
Customer.Filter(... Customer.BuildKeyValue(LastNameFirstName, "Moore", "Vince") + hMinVal, ... Customer.BuildKeyValue(LastNameFirstName, "Moore", "Vince") + hMaxVal)
- Si el límite mínimo y máximo del filtro deben ser idénticos y no se especifican todos los componentes de la clave, se deben completar los límites con las constantes hMinVal y hMaxVal.
El siguiente ejemplo se utiliza para encontrar todos los registros del archivo de Cliente correspondientes a "Moore":
Customer.Filter(LastNameFirstName, ... Customer.BuildKeyValue(LastNameFirstName, "Moore" + hMinVal), ... Customer.BuildKeyValue(LastNameFirstName, "Moore"+ hMaxVal)
Observaciones: - hMinVal es equivalente a Charact( 0)
- hMaxVal es equivalente a Charact( 255)
Construir una llave compuesta sin usar <Fuente>.BuildKeyValue Puede utilizar una array de valores para construir el valor de una clave compuesta sin utilizar <Fuente>.BuildKeyValue. Por ejemplo: FileB.ReadSeekFirst(LINKEDCOMPKEY, ["Last name", "First name"])
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|