Skip to main content
Woohoo! Qlik Community has won “Best in Class Community” in the 2024 Khoros Kudos awards!
Announcements
Nov. 20th, Qlik Insider - Lakehouses: Driving the Future of Data & AI - PICK A SESSION
cancel
Showing results for 
Search instead for 
Did you mean: 
amigosos
Contributor III
Contributor III

"Contar si" en tabla pivotante

Hola a tod@s,

Tengo una tabla pivotante con los siguientes campos:

Dimensiones

     Familia de Producto

     Producto

Expresiones

     Ventas Nacionales   (=sum({<Tipo_orden= {'Nacional'}>} Cantidad) )

     Ventas Totales           (=sum(Cantidad) )

Y quisiera crear un nuevo campo con el número de productos con ventas nacionales por familia.

Lo estaba intentando del siguiente modo, pero sin éxito, ya que el subtotal de cada familia no representa el número deseado:

=if([Ventas Nacionales]>0, Count(distinct Producto),0)

He leído algo sobre la función "aggr", pero no acabo de entenderlo bien.

Muchas gracias de antemano.

1 Solution

Accepted Solutions
ssanchez
Partner - Contributor III
Partner - Contributor III

Hola  mioju lkjuo:

Hay un pequeño error en la formula propuesta a la hora de calcular el número de referencias. La expresión de conjunto debe incluirse también en el COUNT ya que la evaluación que hace en el IF es una evaluación de totales y no de filas individuales:

=if(sum({<Tipo_orden= {'Nacional'}>} Cantidad) >0, Count({<Tipo_orden= {'Nacional'}>}distinct Producto),0)

He comprobado el resto de datos con selecciones individuales y todo parece correcto en la tabla. Te adjunto el archivo con las expresiones modificadas.

Espero que te sea útil.

Un saludo

View solution in original post

5 Replies
migueldelval
Specialist
Specialist

Hola mioju lkjuo,


Si puedes enviar un qvw, podría ayudarte más; si no explica el error que te da si es de cálculo o un error de la expresión.


Si entiendo bien lo que quieres es poder contabilizar e número de productos en venta por familia y por tipo de producto. En principio no deberías tener problemas con esta expresión.


=if(sum({<Tipo_orden= {'Nacional'}>} Cantidad) >0, Count(distinct Producto),0)


Saludos


Miguel del Valle

amigosos
Contributor III
Contributor III
Author

El error que detecto es que en los subtotales y totales cuenta también los productos sin venta "Nacional".

Adjunto tabla donde se puede ver que el producto P_8 no tiene "Ventas Nacionales", pero en el subtotal de la Familia C lo tiene en consideración, así como en el Total.

Familia Producto Ventas NacionalesVentas ExportVentas TotalesNº Ref. Nac
AP_11000025000350001
P_23000030001
P_3100008000180001
Total 23000 33000 56000 3
BP_4250012000145001
P_56000060001
P_6800013000210001
Total 16500 25000 41500 3
CP_75000050001
P_80650065000
Total 5000 6500 11500 2
Total 44500 64500 109000 8

¿Cómo podría evitar este error? Me gustaría mostrar las ventas Nacionales, Export y Totales, y mostrar el Nº de referencias que se venden en cada uno de esos mercados (Nacional, Export, Global).

Muchas gracias

amigosos
Contributor III
Contributor III
Author

Adjunto qvw:

ssanchez
Partner - Contributor III
Partner - Contributor III

Hola  mioju lkjuo:

Hay un pequeño error en la formula propuesta a la hora de calcular el número de referencias. La expresión de conjunto debe incluirse también en el COUNT ya que la evaluación que hace en el IF es una evaluación de totales y no de filas individuales:

=if(sum({<Tipo_orden= {'Nacional'}>} Cantidad) >0, Count({<Tipo_orden= {'Nacional'}>}distinct Producto),0)

He comprobado el resto de datos con selecciones individuales y todo parece correcto en la tabla. Te adjunto el archivo con las expresiones modificadas.

Espero que te sea útil.

Un saludo

amigosos
Contributor III
Contributor III
Author

Muchas Gracias Santiago,

Este detalle no lo conocía.