Prefijos de script
La aplicación de prefijos es posible con sentencias habituales, pero nunca con las sentencias de control. Sin embargo, los prefijos when y unless sí pueden emplearse como sufijos en unas cuantas sentencias de control específicas.
Todas las palabras clave del script pueden escribirse con cualquier combinación de caracteres en mayúscula o minúscula. Los nombres de campo y de variable utilizados en las sentencias, por supuesto, son sensibles a mayúsculas.
Utilice el desplegable de cada función para ver una breve descripción y la sintaxis de cada función. Haga clic en el nombre de la función en la descripción de la sintaxis si desea más detalles.
El prefijo add puede añadirse a cualquier sentencia LOAD, SELECT o map...using en el script. Sólo tiene sentido durante las recargas parciales.
Add [only] (loadstatement | selectstatement | mapstatement)
Los archivos QVD se pueden crear y mantener de forma automática mediante el prefijo buffer. Este prefijo puede utilizarse en la mayoría de sentencias LOAD y SELECT en el script. Indica que los archivos QVD se utilizan para enviar a caché el resultado de la sentencia.
Buffer[(option [ , option])] ( loadstatement | selectstatement )
option::= incremental | stale [after] amount [(days | hours)]
El prefijo Bundle sirve para incluir archivos externos, por ej. archivos de imagen o sonido, u objetos conectados a un valor de campo, para que se almacenen en el archivo QlikView.
Bundle [Info] ( loadstatement | selectstatement)
Si dos tablas que van a ser concatenadas tienen diferentes conjuntos de campos, se puede obligar a la concatenación de ambas mediante el prefijo Concatenate.
concatenate[ (tablename ) ] ( loadstatement | selectstatement )
El prefijo crosstable sirve para convertir una tabla cruzada en una tabla simple, es decir, una tabla extensa con muchas columnas se convierte en una tabla alta, con las cabeceras de columna colocadas en una única columna de atributo.
crosstable (attribute field name, data field name [ , n ] ) ( loadstatement | selectstatement )
El prefijo First en una sentencia LOAD o SELECT (SQL) se usa para cargar una número máximo fijo de registros desde una tabla fuente.
First n( loadstatement | selectstatement )
El prefijo generic desbarata una tabla grande, creando un campo por valor de atributo. Esto es similar a pivotar una tabla, excepto en que da como resultado una tabla aparte por cada campo creado.
Generic ( loadstatement | selectstatement )
El prefijo hierarchy se utiliza para transformar una tabla jerárquica padre-hijo en una tabla que sea útil en un modelo de datos de QlikView. Puede colocarse inmediatamente antes de una sentencia LOADo SELECT y almacenará el resultado de la sentencia de carga como info de entrada para una transformación de tabla.
Hierarchy (NodeID, ParentID, NodeName, [ParentName], [PathSource], [PathName], [PathDelimiter], [Depth])(loadstatement | selectstatement)
Este prefijo se utiliza para transformar una tabla jerárquica padre-hijo en una tabla que sea útil en un modelo de datos de QlikView. Puede colocarse inmediatamente antes de una sentencia LOADo SELECT y almacenará el resultado de la sentencia de carga como info de entrada para una transformación de tabla.
HierarchyBelongsTo (NodeID, ParentID, NodeName, AncestorID, AncestorName, [DepthDiff])(loadstatement | selectstatement)
Esta cláusula se utiliza junto con el prefijo Info o el prefijo Bundle para redimensionar imágenes de un sistema de gestión de bases de datos, de forma que éstas encajen en los campos.
Info [Image_Size(width,height )] ( loadstatement | selectstatement )
El prefijo info sirve para enlazar información externa, como un archivo de texto, una imagen o un vídeo, con un valor de campo.
Info( loadstatement | selectstatement )
Los prefijos join y keep pueden ir precedidos por el prefijo inner.Si se coloca antes de join especifica que debe usarse una unión interna (inner join). La tabla resultante contendrá por tanto combinaciones de valores de campo de las dos tablas originales donde los valores de campos de enlace se representan en ambas tablas. Si se coloca antes de keep, especifica que ambas tablas de datos sin procesar deberán ser reducidas a su intersección común antes de ser almacenadas en QlikView. .
Inner ( Join | Keep) [ (tablename) ](loadstatement |selectstatement )
El prefijo ampliado IntervalMatch se utiliza para crear una tabla que hace correspondencias de valores numéricos discretos a uno o más intervalos numéricos, y al mismo tiempo enlaza los valores de una o más claves adicionales.
IntervalMatch (matchfield)(loadstatement | selectstatement )
IntervalMatch (matchfield,keyfield1 [ , keyfield2, ... keyfield5 ] ) (loadstatement | selectstatement )
El prefijo join une la tabla cargada con una tabla ya existente o con la última tabla de datos creada.
[Inner | Outer | Left | Right ] Join [ (tablename ) ]( loadstatement | selectstatement )
El prefijo keep es parecido al prefijo join. Al igual que el prefijo join, compara la tabla cargada con una tabla previamente nombrada o con la última tabla de datos creada, pero en lugar de combinar la tabla cargada con una tabla anterior, tiene el efecto de reducir una o ambas tablas antes de almacenarlas en QlikView, según sea la intersección de los datos de las tablas. La comparación final equivale a aplicar un join natural entre todos los campos comunes. La diferencia está en que las dos tablas no se unen, sino que se almacenan en QlikView como dos tablas independientes de distinto nombre.
(Inner | Left | Right) Keep [(tablename ) ]( loadstatement | selectstatement )
Los prefijos Join y Keep pueden ir precedidos por el prefijo left.
Si se usa antes de join especifica que se debe usar un left join. La tabla resultante sólo contendrá combinaciones de valores de campo de las tablas iniciales donde los valores de campos de enlace se representan en la primera tabla. Si se usa antes de keep, especifica que la segunda tabla de datos sin procesar debe ser reducida a su intersección común con la primera tabla antes de almacenarse en QlikView.
Left ( Join | Keep) [ (tablename) ](loadstatement |selectstatement )
El prefijo mapping sirve para crear una tabla de correspondencias o enlaces, la cual puede utilizarse para, por ejemplo, reemplazar valores de campo y nombres de campos durante la ejecución de script.
Mapping ( loadstatement | selectstatement )
El prefijo NoConcatenate obliga a tratar dos tablas cargadas con idénticos conjuntos de campos como si fueran dos tablas internas aparte, porque de otra forma se concatenarían de forma automática.
NoConcatenate( loadstatement | selectstatement )
El prefijo explícito Join puede ir precedido por el prefijo outer para especificar un outer join. En un outer join se generan todas las combinaciones entre las dos tablas. La tabla resultante contendrá por tanto combinaciones de valores de campo de las dos tablas donde los valores de campos de enlace se representan en una o ambas tablas. La palabra clave outer es opcional.
Outer Join [ (tablename) ](loadstatement |selectstatement )
El prefijo replace sirve para desechar la tabla completa de QlikView y reemplazarla por una tabla nueva que se haya cargado o seleccionado.
Replace[only](loadstatement |selectstatement |map...usingstatement)
Los prefijos Join y Keep pueden ir precedidos por el prefijo right.
Si se usa antes de join especifica que se debe usar un enlace derecho (right join). La tabla resultante contendrá sólo combinaciones de valores de campo de las dos tablas donde los valores de campos de enlace se representan en la segunda tabla. Si se usa antes de keep, especifica que la primera tabla de datos pura debe ser reducida a su intersección común con la segunda tabla antes de ser almacenada en QlikView.
Right (Join | Keep) [(tablename)](loadstatement |selectstatement )
El prefijo sample en una sentencia LOAD o SELECT se usa para cargar una muestra aleatoria de registros desde la tabla fuente.
Sample p ( loadstatement | selectstatement )
Las tablas que contienen relaciones entre registros pueden cargarse mediante un prefijo semantic. Pueden ser por ejemplo referencias dentro de una tabla, donde un registro apunte a otro, como por ej. a un predecesor o antepasado.
Semantic ( loadstatement | selectstatement)
El prefijo y sufijo unless sirven para crear una cláusula condicional, la cual determina si una sentencia o cláusula exit debería ser evaluada o no. Puede verse como una excelente alternativa a la sentencia completa if..end if.
(Unless condition statement | exitstatement Unless condition )
El prefijo y sufijo when sirven para crear una cláusula condicional que determina si una sentencia o cláusula exit debería ejecutarse o no. Puede verse como una excelente alternativa a la sentencia completa if..end if.
( When condition statement | exitstatement when condition )