Restricción de acceso al sistema de archivos
Por razones de seguridad, Qlik Sense en modo estándar no admite rutas en el script de carga de datos ni funciones o variables que expongan el sistema de archivos.
Sin embargo, dado que se admitían las rutas del sistema de archivos en QlikView, es posible deshabilitar el modo estándar y utilizar el modo de legado para poder reutilizar los scripts de carga de QlikView.
Aspectos de seguridad relativos a la conexión con conexiones de datos ODBC y OLE DB basadas en archivos
Las conexiones de datos ODBC y OLE DB que utilizan controladores basados en archivos expondrán la ruta al archivo de datos conectado en la cadena de conexión. La ruta se puede exponer cuando se edite la conexión, en el cuadro de diálogo de selección de datos o en determinadas consultas SQL. Este es el caso tanto en el modo estándar como en el modo de legado.
Limitaciones en el modo estándar
Algunas sentencias, variables y funciones no se pueden utilizar o presentan limitaciones en el modo estándar. Utilizar sentencias no admitidas en el script de carga de datos produce un error cuando el script de carga se ejecuta. Pueden surgir mensajes de error en el archivo de registro del script. Utilizar variables y funciones no admitidas no produce mensajes de error o entradas en el archivo de registro, sino que la función devuelve NULL.
No hay indicación alguna de que una variable, sentencia o función no se admita cuando estemos editando el script de carga de datos.
Variables de sistema
Variable | Modo estándar | Modo de legado | Definición |
---|---|---|---|
Floppy |
No admitido |
Admitido | Devuelve la letra de la primera unidad de disco que encuentra, normalmente a:. |
CD |
No admitido |
Admitido | Devuelve la letra de la primera unidad de CD-ROM que encuentre. Si no encuentra ningún CD-ROM, devuelve c:. |
QvPath |
No admitido |
Admitido | Devuelve la cadena de búsqueda al ejecutable de Qlik Sense: |
QvRoot |
No admitido |
Admitido | Devuelve el directorio raíz del ejecutable de Qlik Sense: |
QvWorkPath |
No admitido |
Admitido | Devuelve la cadena de búsqueda a la app actual de Qlik Sense. |
QvWorkRoot |
No admitido |
Admitido | Devuelve el directorio raíz de la app actual de Qlik Sense. |
WinPath |
No admitido |
Admitido | Devuelve la cadena de exploración a Windows. |
WinRoot |
No admitido |
Admitido | Devuelve el directorio raíz de Windows. |
$(include=...) | Entrada compatible: Ruta que utiliza la conexión de la biblioteca | Entrada compatible: Ruta que utiliza la conexión de la biblioteca o el sistema de archivos | La variable Include/Must_Include especifica un archivo que contiene texto que debe incluirse en el script y evaluarse como código de script. No se utiliza para añadir datos. Puede almacenar partes de su código de script en un archivo de texto aparte y reutilizarlo en diversas apps. Esta es una variable definida por el usuario. |
Sentencias de script habituales
Sentencia | Modo estándar | Modo de legado | Definición |
---|---|---|---|
Binary | Entrada compatible: Ruta que utiliza la conexión de la biblioteca | Entrada compatible: Ruta que utiliza la conexión de la biblioteca o el sistema de archivos | La sentencia binary se usa para cargar datos desde otra app. |
Connect | Entrada compatible: Ruta que utiliza la conexión de la biblioteca | Entrada compatible: Ruta que utiliza la conexión de la biblioteca o el sistema de archivos | La sentencia CONNECT se utiliza para definir el acceso de Qlik Sense a una base de datos general mediante la interfaz OLE DB/ODBC. Para ODBC, primero se debe especificar la fuente de datos utilizando el administrador ODBC. |
Directory | Entrada compatible: Ruta que utiliza la conexión de la biblioteca | Entrada compatible: Ruta que utiliza la conexión de la biblioteca o el sistema de archivos | La sentencia Directory define qué directorio buscar en los archivos de datos en sentencias LOAD posteriores, hasta que se haga una nueva sentencia Directory. |
Execute | No admitido | Entrada compatible: Ruta que utiliza la conexión de la biblioteca o el sistema de archivos | La sentencia Execute se utiliza para ejecutar otros programas a la vez que Qlik Sense está cargando datos. Por ejemplo, para hacer las conversiones que sean necesarias. |
LOAD from ... | Entrada compatible: Ruta que utiliza la conexión de la biblioteca | Entrada compatible: Ruta que utiliza la conexión de la biblioteca o el sistema de archivos | La sentencia LOAD carga campos desde un archivo, desde datos definidos en el script, desde una tabla previamente cargada, desde una página web, desde el resultado de una sentencia SELECT posterior, o generando los datos automáticamente. |
Store into ... | Entrada compatible: Ruta que utiliza la conexión de la biblioteca | Entrada compatible: Ruta que utiliza la conexión de la biblioteca o el sistema de archivos | La sentencia Store crea un archivo QVD, Parquet, CSV o TXT. |
Sentencias de control de script
Sentencia | Modo estándar | Modo de legado | Definición |
---|---|---|---|
For each... filelist mask/dirlist mask |
Entrada compatible: Ruta que utiliza la conexión de la biblioteca Resultado obtenido: Conexión de biblioteca |
Entrada compatible: Ruta que utiliza la conexión de la biblioteca o el sistema de archivos Resultado obtenido: Conexión de la biblioteca o el sistema de archivos, dependiendo de lo introducido |
La sintaxis filelist mask produce una lista separada por comas de todos los archivos del directorio actual que coincidan con filelist mask. La sintaxis dirlist mask produce una lista separada por comas de todos los directorios del directorio actual que coincidan con la máscara del nombre del directorio. |
Funciones de archivo
Función | Modo estándar | Modo de legado | Definición |
---|---|---|---|
Attribute() | Entrada compatible: Ruta que utiliza la conexión de la biblioteca | Entrada compatible: Ruta que utiliza la conexión de la biblioteca o el sistema de archivos | Devuelve el valor de las meta etiquetas de diversos archivos de medios como texto. |
ConnectString() | Resultado obtenido: Nombre de la conexión de librería | Nombre de la conexión de librería o conexión actual, dependiendo de la entrada | Devuelve la cadena de conexión activa de conexiones ODBC o OLE DB. |
FileDir() |
Resultado obtenido: Conexión de biblioteca |
Resultado obtenido: Conexión de la biblioteca o el sistema de archivos, dependiendo de lo introducido | La función FileDir devuelve una cadena que contiene la ruta al directorio del archivo de tabla que se está leyendo en ese momento. |
FilePath() |
Resultado obtenido: Conexión de biblioteca |
Resultado obtenido: Conexión de la biblioteca o el sistema de archivos, dependiendo de lo introducido | La función FilePath devuelve una cadena que contiene la ruta completa al archivo de tabla que se esté leyendo en ese momento. |
FileSize() |
Entrada compatible: Ruta que utiliza la conexión de la biblioteca |
Entrada compatible: Ruta que utiliza la conexión de la biblioteca o el sistema de archivos | La función FileSize devuelve un entero que contiene el tamaño en bytes del archivo filename o, si no se especifica ningún filename, del archivo de tabla que se esté leyendo en ese momento. |
FileTime() |
Entrada compatible: Ruta que utiliza la conexión de la biblioteca |
Entrada compatible: Ruta que utiliza la conexión de la biblioteca o el sistema de archivos | La función FileTime devuelve una marca de tiempo en formato UTC de la última modificación de un archivo especificado. Si no se especifica un archivo, la función devuelve una marca de tiempo en UTC de la última modificación del archivo de tabla leído actualmente. |
GetFolderPath() |
No admitido |
Resultado obtenido: Ruta absoluta |
La función GetFolderPath devuelve el valor de la función Microsoft Windows SHGetFolderPath. Esta función toma como entrada el nombre de una carpeta de Microsoft Windows y devuelve la ruta completa de la carpeta. |
QvdCreateTime() | Entrada compatible: Ruta que utiliza la conexión de la biblioteca | Entrada compatible: Ruta que utiliza la conexión de la biblioteca o el sistema de archivos | Esta función de script devuelve la marca de tiempo del encabezado XML de un archivo QVD, si la hay, de lo contrario devuelve NULL. En la marca de tiempo, la hora se proporciona en UTC. |
QvdFieldName() | Entrada compatible: Ruta que utiliza la conexión de la biblioteca | Entrada compatible: Ruta que utiliza la conexión de la biblioteca o el sistema de archivos | Esta función de script devuelve el nombre del número de campo fieldno en un archivo QVD. Si el campo no existe, devuelve NULL. |
QvdNoOfFields() | Entrada compatible: Ruta que utiliza la conexión de la biblioteca | Entrada compatible: Ruta que utiliza la conexión de la biblioteca o el sistema de archivos | Esta función de script devuelve el número de campos de un archivo QVD. |
QvdNoOfRecords() | Entrada compatible: Ruta que utiliza la conexión de la biblioteca | Entrada compatible: Ruta que utiliza la conexión de la biblioteca o el sistema de archivos | Esta función de script devuelve el número de registros que hay actualmente en un archivo QVD. |
QvdTableName() | Entrada compatible: Ruta que utiliza la conexión de la biblioteca | Entrada compatible: Ruta que utiliza la conexión de la biblioteca o el sistema de archivos | Esta función de script devuelve el nombre de la tabla almacenada en un archivo QVD. |
Funciones de sistema
Función | Modo estándar | Modo de legado | Definición |
---|---|---|---|
DocumentPath() |
No admitido |
Resultado obtenido: Ruta absoluta |
Esta función devuelve una cadena que contiene la ruta completa a la app actual de Qlik Sense. |
GetRegistryString()
|
No admitido |
Admitido | Devuelve el valor de una clave de registro nombrada, con una ruta de registro determinada. Esta función puede emplearse en los gráficos y en el script por igual. |