Detalles de conversión de objetos | Centro de migración Ayuda
Saltar al contenido principal Saltar al contenido complementario

Detalles de conversión de objetos

Última actualización: 14/10/2026

QV2QS gestiona una serie de características específicas de QlikView durante la conversión.

Expresiones

QV2QS pasa las expresiones de QlikView a Qlik Sense con una transformación mínima. El lenguaje de expresiones es en gran parte compartido entre QlikView y Qlik Sense, por lo que la mayoría de las expresiones funcionan sin modificaciones.

QV2QS aplica las siguientes transformaciones:

  • Prefijo de igualdad — Qlik Sense requiere un = inicial en las expresiones de medida y en ciertas expresiones de propiedad. QV2QS añade el prefijo cuando sea necesario si la expresión original de QlikView no lo incluye.
  • Eliminación de comentarios — Los comentarios de línea completa que comienzan con //, #, o REM se eliminan de las expresiones en línea. Las expresiones de propiedades de Qlik Sense no admiten de forma consistente la sintaxis de comentarios, por lo que su eliminación evita errores de evaluación. Comentarios en bloque (/* */) no se eliminan. Los comentarios en línea // dentro de una línea de código tampoco se eliminan.

Las siguientes características de expresión se transfieren literalmente y funcionan en Qlik Sense sin modificaciones:

  • Expresiones de análisis de conjunto (por ejemplo, {<Year={2024}>})
  • Expansión de signo de dólar y referencias de variables (por ejemplo, $(vMyVar))
  • Expresiones Aggr() anidadas
  • If() expresiones, incluidas las expresiones de formato condicional
  • Pick(), Match(), y Dual() patrones
  • Dimensiones calculadas

Configuración de las comillas de análisis

QlikView (antes de noviembre de 2017) trataba los valores entre comillas simples en los modificadores de conjunto como búsquedas que no distinguen entre mayúsculas y minúsculas, idénticas a los valores entre comillas dobles. Qlik Sense trata los valores entre comillas simples como literales sensibles a mayúsculas y minúsculas. Esta diferencia puede invalidar expresiones que dependen de comodines, operadores de comparación o la coincidencia numérica dentro de comillas simples.

QV2QS escanea todas las expresiones de objeto y definiciones de variable en busca de patrones de comillas de análisis de conjuntos que se comportan de manera diferente en Qlik Sense. Los patrones detectados incluyen comodines entre comillas simples ('*US*'), operadores de comparación entre comillas simples ('>=5'), valores entre comillas simples en campos numéricos y valores de cadena sin comillas. Los resultados aparecen en la Expression_Findings hoja de cálculo del informe de Excel.

QV2QS corrige automáticamente los valores de búsqueda entre comillas simples durante la conversión. Una solución experimental para valores de cadena sin comillas también está disponible, pero está deshabilitada por defecto.

  • Valores de búsqueda entre comillas simples (habilitado por defecto) se convierten a comillas dobles: {<Country={'*US*'}>} se convierte en {<Country={"*US*"}>}. Los patrones de búsqueda detectados incluyen comodines (*, ?, ^), operadores de comparación, búsqueda difusa (~), búsqueda de expresiones (=), modificadores de búsqueda (+, -), y búsqueda compuesta. Los valores entre comillas simples en campos numéricos que no contienen sintaxis de búsqueda se marcan para revisión manual, pero no se corrigen automáticamente.
  • Valores de cadena sin comillas (experimental, deshabilitado por defecto) se envuelven entre comillas simples: {<Country={USA}>} se convierte en {<Country={'USA'}>}. Introduzca --fixUnquotedSetValues para habilitar.

Las correcciones se aplican mediante reemplazo posicional únicamente dentro de las listas de valores de modificadores de conjunto. Los nombres de campo, los nombres de función y otro texto de expresión nunca se modifican. Las dos correcciones se controlan de forma independiente. Pase --noFixSingleQuotedSearch para deshabilitar la corrección de comillas simples. Los hallazgos de funciones no admitidas no se modifican.

La hoja de trabajo Expression_Findings y el panel de resumen ejecutivo incluyen una columna Source que indica si cada hallazgo se origina en la definición de una variable o en la expresión de un objeto de gráfico. Una columna de Estado muestra si el hallazgo se corrigió automáticamente, necesita revisión manual o no tiene una corrección automática disponible.

Para ver la lista completa de patrones detectados, consulta Análisis. Para consultar la sintaxis de análisis de conjuntos, consulte Análisis de conjuntos en la ayuda de Qlik Cloud.

Nota informativa

QV2QS escanea todos los campos de expresión (dimensiones, medidas, condiciones de visualización, expresiones de color, títulos, condiciones de cálculo y otros), así como las definiciones de variables y el script de carga en busca de funciones no compatibles. Las instancias detectadas se enumeran en el informe de análisis.

Las siguientes funciones específicas de QlikView no están disponibles en Qlik Sense:

  • GetCurrentField, GetExtendedProperty
  • Input, InputSum, InputAvg
  • MsgBox
  • Image_Size
  • NoOfReports, ReportComment, ReportId, ReportName, ReportNumber

Para la lista de patrones de script de carga detectados, consulte Análisis.

Formato de números

QV2QS convierte las definiciones de formato de número de QlikView a tipos de formato de número de Qlik Sense. El tipo de formato se asigna al equivalente de Qlik Sense, y la cadena de formato personalizada (Fmt), el separador decimal, el separador de miles y la precisión decimal se conservan todos textualmente. Cadenas de formato personalizadas como #,##0.00;(#,##0.00) o '$'#,##0 se pasan tal cual en el campo qFmt.

Se asignan los siguientes tipos de formato de QlikView:

Tipo de QlikView Qlik Sense tipo
FIJO, REAL, ENTERO Fijo (F)
MONEY Moneda (M)
DATE Fecha (F)
TIME Tiempo (T)
TIMESTAMP Marca de tiempo (MT)
INTERVAL Intervalo (IV)

Ordenar

QV2QS convierte todos los criterios de ordenación de QlikView en sus equivalentes de Qlik Sense. Las siguientes configuraciones de ordenación se asignan uno a uno: ordenar por estado, ordenar por frecuencia, ordenar por valor numérico, ordenar por orden alfabético, ordenar por orden de carga, ordenar por expresión (incluido el texto de la expresión) y ordenar por nivel de gris.

Para campos de cuadro de lista, QV2QS aplica una heurística adicional para suprimir la ordenación basada en el estado en campos con formato de fecha. Para obtener más detalles, consulte Referencia de argumentos.

Pistas visuales y coloración condicional

Los indicadores visuales de QlikView (colores condicionales basados en umbrales en las medidas) se convierten en expresiones de color de Qlik Sense para visualizaciones de tabla y tabla dinámica. QV2QS genera expresiones anidadas If() con funciones de color RGB() o ARGB() que replican el comportamiento de umbral original bajo/normal/alto. Se convierten tanto las señales de color de texto como las de color de fondo. Los indicadores visuales en las visualizaciones de gráficos (gráfico de barras, gráfico de líneas, gráfico combinado y otros) no se convierten.

Coloreado basado en expresiones

QV2QS convierte expresiones de color por dimensión y por medida (color de fondo y color de texto) a expresiones de atributo de Qlik Sense. Para visualizaciones de tabla y tabla dinámica, se conservan las expresiones de color de fondo y de texto (cellBackgroundColor y cellForegroundColor). Para visualizaciones de gráficos, las expresiones de color de fondo de las medidas se convierten a colorByExpression modo. Las expresiones de color de dimensión y las expresiones de color de texto de medida no se convierten para los tipos de gráfico porque los gráficos de Qlik Sense no admiten expresiones de atributo de color por dimensión ni atributos de color de texto por medida.

Para visualizaciones de tabla y tabla dinámica, si no existe una expresión de color explícita en una medida pero se definen señales visuales, QV2QS genera automáticamente una expresión de color a partir de los umbrales de las señales visuales.

Líneas de tendencia

Las líneas de tendencia de QlikView en medidas de gráfico se convierten en líneas de tendencia de Qlik Sense. Se admiten los siguientes tipos de línea de tendencia:

  • Media, Lineal, Exponencial, Logarítmica, Potencia
  • Polinomio (grado 2, 3 y 4)

Líneas de referencia

Las líneas de referencia de QlikView en los ejes de los gráficos se convierten en líneas de referencia de Qlik Sense. La etiqueta, la expresión de valor, el color, el estilo de línea y la condición de visualización (expresión de visibilidad condicional) se conservan. Si una línea de referencia no tiene condición de visualización, la visibilidad predeterminada siempre se muestra. Los gráficos combinados admiten líneas de referencia tanto en el eje principal como en el secundario.

Asignación de ejes de gráfico combinado

QV2QS conserva las asignaciones de ejes de los gráficos combinados de QlikView. Cada medida retiene la vinculación al eje principal o secundario del gráfico original de QlikView. Los tipos de series de medidas (barra, línea, marcador) también se conservan.

Grupos de dimensiones

QV2QS convierte los grupos cíclicos y los grupos de desglose de QlikView en dimensiones maestras de Qlik Sense. Grupos cíclicos se convierten en dimensiones maestras cíclicas. Los grupos de desglose se convierten en dimensiones maestras de desglose. Los gráficos que hacen referencia a una dimensión de grupo se conectan a la dimensión maestra correspondiente en la aplicación convertida.

Gestión de fuentes

Qlik Sense es compatible con un conjunto fijo de fuentes seguras para la web. QV2QS asigna las fuentes de QlikView a la fuente de Qlik Sense más parecida disponible. Las fuentes que no se pueden asignar utilizan la fuente de reserva (Source Sans Pro).

Las siguientes fuentes de QlikView tienen asignaciones explícitas:

QlikView fuente Fuente de Qlik Sense
Arial, Helvetica, Tahoma, Calibri Source Sans Pro
Segoe UI Inter
Verdana Open Sans
Times New Roman, Times, Georgia PT Serif
Courier New, Consolas Source Sans Pro

Las fuentes personalizadas que no están en la biblioteca de fuentes de Qlik Sense se asignan a Source Sans Pro.

Nota informativa

Las fuentes monoespaciadas (Courier New, Consolas) se asignan a la fuente proporcional Source Sans Pro. La alineación de caracteres monoespaciados no se conserva.

Variables del sistema

QV2QS excluye las variables del sistema de la lista de variables convertidas. Estas variables son gestionadas por el motor de Qlik y no necesitan ser incluidas en variables.json. Algunos ejemplos son DateFormat, ThousandSep, DecimalSep, TimestampFormat, ErrorMode, y NullDisplay.

Variables del sistema que se han establecido explícitamente en el script de carga (por ejemplo, SET DateFormat='YYYY-MM-DD';) se conservan en el script de carga y surten efecto durante la recarga. La exclusión se aplica solo a las definiciones de variables en la aplicación convertida, no a SET o LET sentencias en el script de carga.

Las variables definidas por el usuario se convierten.

Modo Trellis

Gráficos de QlikView con el modo de celosía habilitado (EnablePrimaryDimension) utilizan la primera dimensión como campo de facetas para mostrar una cuadrícula de minigráficos. Qlik Sense no tiene un modo de cuadrícula nativo en gráficos estándar. QV2QS convierte automáticamente gráficos de celosía utilizando la extensión de contenedor de celosía de Qlik Sense (qlik-trellis-container) del paquete de visualización.

Durante la conversión, QV2QS realiza los siguientes pasos:

  1. Crea una visualización maestra — El gráfico original se convierte sin las dimensiones de enrejado. Para celosía únicamente primaria, la dimensión 0 se elimina. Cuando el enrejado secundario también está habilitado, ambas dimensiones 0 y 1 se eliminan. El gráfico restante se guarda como una visualización maestra en la aplicación.
  2. Crea un contenedor de celosía — Se coloca un qlik-trellis-container objeto en la hoja en la posición original del gráfico. El contenedor hace referencia a la visualización maestra y utiliza las dimensiones eliminadas como campos de facetado en su definición de datos. Cuando tanto el trellis principal como el secundario están habilitados, la definición de datos del contenedor contiene dos dimensiones de facetas.
  3. Configura la cuadrícula — La configuración de columnas y filas de QlikView se asigna al recuento de columnas del contenedor de cuadrícula y al recuento máximo de gráficos. El número máximo de gráficos se calcula como columnas multiplicadas por filas. Cuando la cardinalidad de las dimensiones de facetas excede el tamaño de la cuadrícula, QV2QS aumenta el recuento máximo de gráficos para acomodar todos los valores de dimensión. Para el enrejado secundario, la cardinalidad total es el producto de las cardinalidades de las dimensiones primaria y secundaria. El valor se redondea al alza al múltiplo más cercano del recuento de columnas para que la cuadrícula se rellene de manera uniforme. Esta expansión se registra como un ajuste del gráfico.

El contenedor de enrejado utiliza el mismo mapeo de qv_id que el gráfico original, por lo que ocupa la misma posición en la hoja.

El enrejado de solo primario requiere al menos dos dimensiones (una para la faceta del enrejado y otra para el gráfico maestro). El enrejado principal más el secundario requiere al menos tres dimensiones (dos para la faceta del enrejado y una para el gráfico maestro). Los gráficos con menos dimensiones de las requeridas se omiten.

Medir acumulación

La acumulación de medidas de QlikView (totales acumulados) se convierte en modificadores de acumulación de Qlik Sense. Se admiten los siguientes modos de acumulación:

  • Acumulación completa — La expresión de medida se reescribe utilizando RangeSum() con Above() y RowNo() para producir un total acumulado en todas las filas. El modificador fullAccumulation indicador está establecido en true con un steps valor de 6.
  • Acumulación de pasos — Cuando el recuento de pasos de acumulación de QlikView es mayor que 1, la expresión de medida utiliza RangeSum() con Above() y el recuento de pasos especificado. El indicador del modificador fullAccumulation está configurado en false.

La expresión de acumulación generada se adapta al tipo de campo de dimensión:

  • Dimensiones numéricas — Establezca los límites de análisis usando Min() y Max() para el campo.
  • Dimensiones del texto — Al establecer los límites de análisis, utilice MinString() y MaxString() para el campo.
  • Gráficos bidimensionales — Se genera un Aggr() contenedor para anidar la acumulación dentro del contexto de la dimensión exterior.

Cuando se aplica la acumulación, QV2QS desactiva el modo de eje continuo (preferContinuousAxis=false) y establece nullMode en connect para garantizar una representación visual correcta. La expresión de medida original y la etiqueta se conservan en la propiedad base del modificador.

Contenedores de pestañas

QV2QS convierte los contenedores de pestañas de QlikView utilizando tres estrategias, dependiendo de la configuración y el contexto del contenedor. En todos los casos, los objetos secundarios permanecen en la misma hoja de Qlik Sense que el contenedor.

  • Contenedor con pestañas — Los contenedores con varias pestañas independientes que no se superponen con otros objetos se convierten en contenedores con pestañas nativos de Qlik Sense (sn-tabbed-container). Cada miembro de la pestaña se convierte en una pestaña dentro del contenedor. El orden de tabulación sigue el orden original de los miembros de QlikView.
  • Pseudo-pestañas — Cuando un contenedor con varias pestañas se superpone a otros objetos o está anidado dentro de otro contenedor, QV2QS aplana las pestañas en un contenedor de diseño. Una tira de botones se genera con un action-button por pestaña. Cada botón establece una variable de navegación usando una SetVariable acción. Mostrar condiciones en los objetos secundarios (por ejemplo, =If('$(vCT01Tab)'='1',1,0)) controlan qué contenido de la pestaña es visible. Solo una pestaña es visible a la vez. La tira de botones reproduce el comportamiento de cambio de pestaña del contenedor original de QlikView.
  • Contenedor de diseño — Los contenedores en modo de cuadrícula se convierten en contenedores de diseño (sn-layout-container).

Los contenedores de un solo objeto se simplifican. No se crea ninguna tira de pestañas ni variable. El objeto hijo único se coloca directamente en la posición del contenedor con la condición de visualización del contenedor aplicada.

Los contenedores anidados son compatibles hasta una profundidad de 8 niveles. QV2QS detecta ciclos y detiene la recursión si un contenedor crea una referencia circular.

Las condiciones de visualización en el contenedor y en los objetos secundarios individuales se componen utilizando un AND lógico. Un objeto secundario es visible solo cuando la condición del contenedor, la condición de la variable de pestaña y la condición del objeto secundario todas se evalúan como verdaderas.

Mostrar condiciones

Las condiciones de visualización de QlikView en objetos individuales se conservan. Qlik Sense no admite condiciones de visualización directamente en los objetos de visualización. QV2QS envuelve objetos que tienen condiciones de visualización en un contenedor de diseño de un solo hijo y aplica la condición como una condition entrada en el contenedor. Los objetos que ya están dentro de un contenedor de diseño (debido a la superposición) reciben la condición directamente en la entrada del contenedor.

Cuando una condición de visualización se evalúa como falsa, el contenedor de diseño permanece en la posición de la cuadrícula pero no muestra contenido. El contenedor oculto no se contrae ni provoca que los objetos adyacentes se reorganicen. Tanto en el modo de cuadrícula dinámica como en el de lienzo fijo, el objeto oculto deja un espacio en blanco en la posición original. El comportamiento del espacio en blanco coincide con QlikView, donde los objetos ocultos también dejan espacio en blanco.

Estados alternativos

QV2QS conserva asignaciones de estado alternativas. Los objetos vinculados a un estado alternativo en QlikView conservan la misma vinculación de estado en Qlik Sense. Los nombres de los estados se conservan exactamente. QV2QS crea los estados alternativos necesarios en la aplicación de Qlik Cloud durante la implementación. Las referencias de estado alternativo dentro de las expresiones de análisis de conjuntos (por ejemplo, {[State2]<Year={2024}>}) se pasan tal cual y funcionan en Qlik Sense sin modificaciones.

En modo solo local (--unbuildOnly), los nombres de estado alternativos se escriben en cloud/alternate_states.json en la subcarpeta del proyecto (por ejemplo, <outputDir>/Sales/cloud/alternate_states.json). Los estados deben crearse manualmente o mediante la qlik app build herramienta al implementar la salida en un inquilino de Qlik Cloud.

Acciones de objeto

QV2QS convierte acciones en botones (BU, BT) y objetos de texto (TX). Los objetos de texto que contienen acciones se promocionan a botones de acción (action-button). Los tipos de acción admitidos incluyen navegación, SetVariable, SelectField, y otros documentados en Resultados de conversión.

Las acciones en otros tipos de objetos (gráficos, cuadros de lista, controles deslizantes y contenedores) no se convierten. QlikView admite OnActivate acciones en cualquier tipo de objeto, pero QV2QS analiza las acciones solo del XML de objetos de botón y texto. Acciones no macro (SetVariable, SelectField, navegación) adjuntas a gráficos, cuadros de lista u otros objetos que no sean botones se omiten durante la conversión y no aparecen en el informe de conversión. Para encontrar acciones descartadas, busque en los archivos XML PRJ <Actions> elementos en definiciones de objetos que no sean botones.

Nota informativa

El escáner de brechas detecta invocaciones de macros en todos los tipos de objetos con fines de elaboración de informes. Las referencias cruzadas de macros en la hoja de cálculo de Análisis reflejan todos los objetos, no solo los botones. Los tipos de acción que no son macro en objetos que no son botones no se informan.

Condiciones de cálculo

Las condiciones de cálculo se conservan para los siguientes tipos de visualización: gráfico de barras, diagrama de caja, gráfico combinado, medidor, gráfico de líneas, gráfico Mekko, gráfico circular, diagrama de dispersión, gráfico de cuadrícula, tabla dinámica, tabla, mapa de árbol y gráfico de cascada.

La expresión de la condición y el mensaje de error personalizado (el texto que se muestra a los usuarios cuando no se cumple la condición) se aplican a la definición del hipercubo. Si el objeto original de QlikView no tiene un mensaje personalizado, Qlik Sense muestra el mensaje de condición de cálculo predeterminado.

Tipos de visualización no incluidos en la lista anterior (incluidos el gráfico de embudo, el gráfico de radar y el KPI) no reciben una condición de cálculo. Si un objeto de QlikView tiene una condición de cálculo y el tipo de visualización de destino no admite la característica, tanto la condición como el mensaje se descartan silenciosamente.

Más información

Visit the discussion forum at community.qlik.com

¿Esta página le ha sido útil?

Si encuentra algún problema con esta página o su contenido (errores tipográficos, pasos que faltan o errores técnicos), no dude en ponerse en contacto con nosotros.