Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Estoy construyendo una tabla de hechos, los datos los obtengo de archivos xlsm
Tengo configurada así la fecha:
SET DateFormat='DD/MM/YYYY';
La primera carga contiene datos quincenales y utilicé esto para llegar a la fecha:
LET vAÑO = Num( KeepChar( SubField('$(vFILE)', '_', 4), '0123456789' ) );
LET vQUINCENA = Num(Mid(SubField('$(vFILE)', '_', 8),2,2) );
LET vMES = Ceil($(vQUINCENA)/2);
If(Mod($(vQUINCENA),2)=1, 15, Day(MonthEnd(MakeDate($(vAÑO),$(vMES),1))) )) AS FECHA
La segunda carga contiene datos semanales y utilicé esto para llegar a la fecha:
LET vAÑO = Num( KeepChar( SubField('$(vFILE)', '_', 4), '0123456789' ) );
LET vSEMANA = Num(Right(Left(Subfield('$(vFILE)', '_', 8),5),2) );
Date(WeekStart(MakeDate($(vAÑO),1,4) ) + ( $(vSEMANA) - 1 ) * 7 + ( DIA - 1 )) AS FECHA
Al visualizar los datos, me aparece con formato numérico "45607"
Necesito ayuda para tener el formato correcto
Hola a todos!
Me gustaria formar una tabla teniendo filtrados unos campos y que no me de mas valores de los que quiero que muestren.
El codigo que tengo es este y me devuel ve 1 y 0, pero solo me gustaria conservar los 1:
IF(
Len(GetFieldSelections(CanonicalMonthName, ',', '-', 'Canonical Month 1')) = 0,
//'55',
// Si no hay selección, contar personas con CanonicalYear igual al año actual
Count({< CanonicalMonthName = {"$(=MonthName(Today()))"}, datetypemonth = {'leftmonth'} >} distinct person_id),
IF(
GetFieldSelections(CanonicalYear, ',', '-', 'Canonical Year 1') = '$(=Year(Today()))',
// Si se selecciona el año actual, contar personas activas en ese año,
IF(
GetSelectedCount(DateType) = 0,
Count({< CanonicalMonthName = {"$(=MonthName(Today()))"},datetypemonth = {'leftmonth'} >} distinct person_id),
// Si se selecciona otro año, contar personas activas en ese año
Count({< CanonicalMonthName = 'Canonical Month 1'::CanonicalMonthName,datetypemonth = {'leftmonth'}>}distinct person_id)
),
IF (
GetSelectedCount(DateType) = 0,
Count({< CanonicalMonthName = 'Canonical Month 1'::CanonicalMonthName, datetypemonth = {'leftmonth'} >} distinct person_id),
Count({< CanonicalMonthName = 'Canonical Month 1'::CanonicalMonthName, datetypemonth = {'leftmonth'} >}distinct person_id)
)
))
Muchas gracias
Buenas tardes
Estoy contruyendo una logica dentro de una expression en la que quiero añadir muchos filtros, y filtros que se pueden solapar, entonces quiero añadir OR como sentencia para buscar en uno o otro.
He añadido un "+" para que sea uno o otro
COUNT(
DISTINCT {
<appointment_number -= {""}, // Excluye valores vacíos de appointment_number
sc_status -= {"Expired"}, // Excluye el estado "Expired"
{<created_date = {">=$(=Date(Today()-182))"}>} + {<end_appointment = {">=$(=Date(Today()-182))"}>}, // Incluye fechas de creación y fin de appointment en los últimos 182 días
name -= {"*test*", "prova*", "[TEST] - Non utilizzare Ship To"}, // Excluye ciertos nombres de prueba
status -= {"Canceled"}, // Excluye el estado "Canceled"
year_reference_SA=, // No se especifica el año de referencia
name= // No se especifica el nombre
} accountnumber
)Estoy viendo y no doy con ello, porque no existe ningun numero con esos filtros.
Muchas gracias
Hola! Estoy en mis primeros meses de aprendizaje de qlik y me surge una duda a la hora de hacer un informe.
La idea es crear una tabla que muestre el precio a pagar por cada uno de los socios de un gimnasio.
El precio a pagar varía en función del producto contratado, pero todos los productos tienen una estructura común: Precio base, Descuento por forma de pago, Recargo por edad
Cada uno de estos conceptos del desglose tiene una fecha desde y una fecha hasta, de forma que periódicamente los precios, descuentos y recargos varían, pero el informe nos podría mostrar el precio pagado por un socio a una fecha dada.
Con todo esto mi idea es tener las siguientes tablas:
- Socios: IDSocio, IDProductoContratado, Edad, Forma de pago
- Productos: IDProductoContratado, IDPrecio, IDRecargo, IDDescuento
- Precio: IDPrecio, Precio, Fecha Desde, Fecha Hasta
- Recargo: IDRecargo, Recargo, Fecha Desde, Fecha Hasta
- Descuento: IDDescuento, Descuento, Fecha Desde, Fecha Hasta
*Nota: Ahora mismo los precios, recargos y descuentos tienen una vigencia de 1 año, es decir, sus fechas de alta serán siempre 1 de Enero y la de baja 31 de diciembre, pero esto podría cambiar en un futuro.
A la hora de crear el informe con la tabla y el filtro de calendario me surgen varias dudas:
- ¿Como cargo los datos para evitar relaciones con fechas incompatibles? Es decir, si mi socio número 1 es alta desde 2021, la idea es mostrar 3 líneas para ese socio:
Cualquier otra combinación de precios, recargos y descuentos sería inutil y solo ralentizaría la carga, así que debería evitarse
- ¿Como creo un calendario que me permita seleccionar 1 día concreto y me muestre los precios a pagar por cada socio en ese dia? Tengo claro como crear una link table y una calendar que me permita hacer filtros de fecha seleccionando el tipo de fecha por el que deseo filtrar, pero desconozco como hacer un calendario que me filtre por los 3 conceptos al mismo tiempo y mas aun teniendo en cuenta que los conceptos tienen rangos de fecha.
Perdón por el tocho, pero creía conveniente explicar detalladamente el problema.
Espero que alguien me pueda ayudar.
Un saludo!
Hola a todos, estoy utilizando Qlik Cloud y quiero poder visualizar información al pasar el mouse por los datos, es decir, si en una columna se calcula una suma, quiero que al pasar el mouse por cada dato en la columna pueda detallar la información que lo conforma, ya sea manual o formulado.
Buenas Tardes
estoy construyendo un archivo de ventas en un tabla pivotante , del cual al colocar el campo totales me lo muestra ok , pero no en la poscion que deseo , he tratado de dejarlo abajo de los datos pero no me ha resultado ya que por defecto lo deja arriba . adjunto fotografia si alguien me pudiera orientar .
imagen con los totales en qlik donde me muestra arriba por defecto si los activo en la fila "mercado " el total por defecto se vee arriba.

Exel al cual deseo llegar ( en rojo total y sub total estan en la parte inferior)

Saludos
Hola, estoy teniendo problemas al intentar obtener la información de los subordinados al seleccionar un manager en mi tabla.
Al seleccionar un manager, me están apareciendo también los datos del propio manager, cuando solo quiero ver los subordinados directos e indirectos.
Creo que hay algo mal con las relaciones o filtros entre las tablas que están haciendo que también se incluya al manager.
¿Alguien ha tenido un problema similar o sabe cómo solucionarlo?
Esto es como quiero que se vea
person number /birth date /direct manager/worker_name
1 15/08/2026 Miguel ñu
2 16/08/2026 Miguel carlos
3 17/08/2026 Miguel cesar
4 18/08/2026 Miguel lolo
5 19/08/2026 Manuel koke
6 20/08/2026 Manuel lele
7 21/08/2026 Manuel eres
8 22/08/2026 luz sergio
9 23/08/2026 luz fer
10 24/08/2026 luz oscar
Esto es como se ve
person number/ birth date/ direct manager/worker_name
1 14/08/2026 Miguel ñu
1 14/08/2026 Miguel carlos
1 14/08/2026 Miguel cesar
1 14/08/2026 Miguel lolo
5 19/08/2026 Manuel koke
5 19/08/2026 Manuel lele
5 19/08/2026 Manuel eres
6 22/08/2026 luz sergio
6 22/08/2026 luz fer
6 22/08/2026 luz oscar
Es decir cuando selecciono el manager, todos los workers debajo de el, pero la informacion me sale de los direct manager.
Saludos y muchas gracias
Buenas a todos,
Estoy intentando averiguar el codigo para conseguir el numero de repeticiones que hay para un valor desde el primer dia del año hasta el dia filtrado
He utilizado este codigo
Esto es para el dia seleccionado hasta final de año actual:
RangeSum(
Above(
Count(
DISTINCT
{<
CanonicalDate = {">=$(=Only({[Canonical Date 1]} CanonicalDate)) <=$(=MakeDate(Year(Only({[Canonical Date 1]} CanonicalDate)), 12, 31))"},
datetypeyear = {'leftyear'}
>}
person_id
),
0, RowNo()
)
)
Resultado
Esto es desde el primer dia del año hasta la fecha seleccionada:
RangeSum(
Above(
Count(
DISTINCT
{<
CanonicalDate = {">=$(=MakeDate(Year(Only({[Canonical Date 1]} CanonicalDate)), 1, 1)) <= $(=Only({[Canonical Date 1]} CanonicalDate))"},
datetypeyear = {'leftyear'}
>}
person_id
),
0, RowNo()
)
)
Este es el resultado:
Como veis se pasa de los datos de termination, llegando a pasar el dia seleccionado
Saludos y muchas gracias
Buenas a todos
Estoy contruyendo este script y hace un mes todo iba perfecto pero ahora de repente con las repentinas cargas diarias, los graficos tardan mucho en cargar y me da error en alguna pagina, cuando antes no pasaba.
El script es este, y seguramente haya algo que cree discordancia.
Lo que estoy intentando crear es un line chart, para que me visualice como va el porcentaje , y si no hay cambio, que siga la misma linea, creo que el fallo ha venido en el cambio de año.
// Mapeo de meses con nombres claros (para obtener el nombre del mes)
MonthMap:
MAPPING LOAD
RowNo() as Month,
MonthName(MakeDate(2024, RowNo(), 1)) as MonthName // Genera nombres de meses basados en 2024
AUTOGENERATE (12);
// Paso 1: Calcular la fecha mínima para cada 'id' en la tabla 'rds_audit'
MinDates:
LOAD
id as temp_id, // Renombramos 'id' para hacer el join
//date as MinDate
Date(Floor(Min(Timestamp#(date, 'YYYY-MM-DD hh:mm:ss.fffffff+00')))) as MinDate
RESIDENT rds_audit
WHERE Len(Trim(date)) > 0 // Asegúrate de excluir valores nulos o en blanco
GROUP BY id; // Agrupamos por 'id' para obtener la fecha mínima
// Paso 2: Generar el calendario con meses desde MinDate hasta Today()
TempCalendar:
LOAD
temp_id,
AddMonths(MinDate, IterNo()-1) as MonthDate
RESIDENT MinDates
WHILE AddMonths(MinDate, IterNo()-1) <= MonthEnd(Today()); // Extiende el calendario hasta el mes actual
// Paso 2: Generación de la tabla final con porcentaje asociado a cada mes
TempTable:
NOCONCATENATE
LOAD
temp_id,
MonthName(MonthDate) as MonthYear
//Month(MonthDate) as Month,
//ApplyMap('MonthMap', month(MonthDate), Null()) as Quarter,
//Year(MonthDate) as Year
RESIDENT TempCalendar;
DROP TABLE TempCalendar;
// Paso 3: Asociar el porcentaje más alto disponible para cada mes y 'id', y agregar `new_percentage`
// Aquí corregimos el uso de GROUP BY para que se manejen correctamente los campos agregados
LEFT JOIN (TempTable)
LOAD
id as temp_id, // Renombramos 'id' para hacer el join
MonthName(date) as MonthYear, // Alineamos el mes con el formato 'MonthYear'
If(IsNull(Max(new_percentage)), 0, Max(new_percentage)) as MaxPercentage, // Calculamos el porcentaje máximo por mes
Max(new_percentage) as new_percentage // Aseguramos que también se agregue 'new_percentage' correctamente
RESIDENT rds_audit
GROUP BY id, MonthName(date); // Agrupamos por 'id' y 'MonthYear' para obtener el máximo
// Paso 4: Rellenar los meses faltantes con el porcentaje del mes anterior usando 'Peek'
// Para esto, se utilizará 'Peek()' para mirar la fila anterior y asignar su valor en caso de ser necesario
FinalTable:
NOCONCATENATE
LOAD
temp_id as id ,
MonthYear,
// Quarter,
// Year,
If(IsNull(MaxPercentage), //or MaxPercentage = 0,
Peek('Percentage', -1, temp_id), // Si no hay MaxPercentage, usar el valor de la fila anterior
MaxPercentage) as Percentage
RESIDENT TempTable
ORDER BY temp_id, MonthYear;
// Drop de la tabla TempTable ya que no es necesaria
DROP TABLE TempTable;
Este es el gráfico que no se me visualiza y antes si que se visualizaba
Saludos y muchas gracias
Hola a todos,
He borrado hace poco una aplicación que me funcionaba bien en el Qlik sense Hub,
Me gustaría poder recuperarla y poder empezar a trabajar desde esa version que es la que funcionaba.
La pregunta aquí es donde podría buscar esas aplicaciones borradas o si tengo que hacer algo para que en el futuro pueda guardar estas aplicaciones que se borra por un tiempo definido.
Muchas gracias de antemano
Buenos dias a todos,
Quiero crear un boton de recarga de datos para una hoja de real-time.
Para ello he añadido un boton para que se pueda recargar en demanada.
Me da opción a elegir en las propiedades "Recarga Parcial" y he visto que si pones una linea en el script de carga, solo se carga la tabla que quieras reemplazar. Las demas quedarian para la carga a traves de "task" (preautomatizada)
Saludos y muchas gracias
Hola , estoy un poco mareado y quiero ver si alguien me puede ayudar
tengo una tabla , el proceso manual que hago actualmente es este
1 - selecciono en el campo "prestador" al llamado "parto/cesarea "
2- selecciono dentro del campo códigos las internaciones donde esta presente el paso 1
3 - suelto o elimino el filtro del punto 1 prestador "parto/cesarea " ( me queda el filtro de las internaciones activo)
4 - cuento dentro de los códigos de internaciones las practicas de otro prestador llamado internacion
*trabajo 2 veces con el mismo campo " prestador"
lo que necesito es realizar una tabla que solo este presente lo que hago manualmente arriba , probe varias alternativas y sin llegar a buen puerto
gracias por su ayuda
Hola a tod@s,
estoy trabajando en un informe y necesitaria que en la misma tabla pivotante añadir unos calculos.
Por ejemplo después de las Ventas de Mercancía y los Costes tener el campo calculado del Margen y otro con el Margen %, tipo como el excel que adjunto.
muchas gracias de antemano.
Saludos
Hola , antes que nada gracias por tu ayuda
actualmente tengo este if en una tabla
"if(match(EMPRESA,'74_2'),'410293601'*(sum(monto)/Total_monto),sum(monto))"
el problema que tengo es que el número '410293601' varia en el tiempo y esta formula es general , no me sirve para analizar los distintos periodos
ejemplo
enero 23 hasta junio 23 : 300000
julio 23 a octubre 23 : 350000
noviembre 23 a xxxx: xxxx
xxx a xxx: yyyyy
como puede meter esta variable de tiempo en mi if o calculo ?
Buenas tardes
Tengo este problema ,tengo que agregar a la tabla el dato cuando fue insertado en mi tabla de qlik sense , sin borrar o cambiar a los previamente creado
ej: dato 1 fecha de carga 25/09/2024
siguiente recarga
dato 1, fecha de carga 25/09/2024
+ nuevo : dato 2 ,fecha de carga 26/09/2024
y asi sucesivamente
alguien me podra ayudar ?
Hola buenas a todos,
Me gustaria solapar dos periodos de tiempo, que no son iguales para la comparacion entre ellos, la comparacion va a ser por Q's
Aqui un ejemplo:
Me gustaria que quedasen uno encima de otro.
Muchas gracias
Buenas tardes Comunidad:
Estoy tratando de determinar la recompra de un cliente para lo cual hice lo siguiente
Obtener el dato de la columna anterior de una tabla pivotante; sin embargo cuando la columna anterior no presenta dato, este se salta una columna mas, cuando debería entregarme el valor '0' o nulo
Por ejemplo, en la primera fila para la columna 202407 en la columna 'Ant.' debería entregarme el valor de 0; sin embargo me entrega el valor de de 202405 que es 1 (salto una columna adicional)
Estoy aplicando para la columna 'Ant'
Before ( Count(Efectivas_cont) )
Agradecería su ayuda, a la espera de sus comentarios
PD. Estoy con el check de presentar valores nulos
Atte.
CarlosR
Buenos días,
¿De verdad no hay ningún procedimiento para:
- ¿Mover gráficos manteniendo sus dimensiones?
- ¿Mover más de un gráfico a la vez?
Es una pérdida de tiempo tener que mover todos los gráficos un poco hacia un lado ya que hay q hacerlos uno a uno y además hay q ajustar el tamaño en cada uno de ellos.
Si no hay ningún modo, es una mejora importante que deberían implentar el sr.Qlik.
Gracias.
Hola. Es posible hacer una conexcion a una base de datos mysql que se encuentra en otro pais?
O es necesario usar VPN? Si alguien me puede guiar con esto se lo agradezco