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: 
carlosac
Creator II
Creator II

COMPARATIVA EN TABLA PIVOTANTE

Buenos dias,

Tengo una Table Pivotante que anexo que compara tarifas entre dos empresas por rango kilos y provincias.

Me gustaria que en esta tabla el valor mas bajo por rango kilos y provincia apareciera en verde, si ambos precios son iguales que no cambiara el color y el valor mas caro por rango y provincia apareciera en rojo.

¿Me podríais ayudar?

     

ORIGENDESTINORANGO KG ORDENADOEMPRESA XEMPRESA Y
CIUDAD REALALAVA01-Hasta 25 kg0,240000,35000
CIUDAD REALALAVA02 - 26 a 50 kg0,350000,35000
CIUDAD REALALAVA03 - 51 a 100 kg0,210500,21050
CIUDAD REALALAVA04 - 101 a 200 kg0,360000,19670
CIUDAD REALALAVA05 - 201 a 500 kg0,109900,10990
CIUDAD REALALAVA06 -501 a 1.000 kg0,087900,08790
CIUDAD REALALAVA07 -1.001 a 2.000 kg0,087400,08740
CIUDAD REALALAVA08- 2.001 a 4.000 kg0,074000,07400
CIUDAD REALALAVA09 - 4.001 a 6.000 kg0,061700,06170
CIUDAD REALALBACETE01-Hasta 25 kg0,350000,35000
CIUDAD REALALBACETE02 - 26 a 50 kg0,350000,35000
CIUDAD REALALBACETE03 - 51 a 100 kg0,210500,21050
CIUDAD REALALBACETE04 - 101 a 200 kg0,196700,19670
CIUDAD REALALBACETE05 - 201 a 500 kg0,109900,10990
CIUDAD REALALBACETE06 -501 a 1.000 kg0,087900,08790
CIUDAD REALALBACETE07 -1.001 a 2.000 kg0,087400,08740
CIUDAD REALALBACETE08- 2.001 a 4.000 kg0,074000,07400
CIUDAD REALALBACETE09 - 4.001 a 6.000 kg0,061700,06170
1 Solution

Accepted Solutions
Joaquin_Lazaro
Partner - Specialist II
Partner - Specialist II

Jordi, corres mucho !!!!

La tabla final tiene que tener

Tarifas:

LOAD ORIGEN,

     DESTINO,

     [RANGO KG ORDENADO],

     [EMPRESA X],

     [EMPRESA Y],

     [EMPRESA A],

     [EMPRESA B],

     [EMPRESA C],

     [EMPRESA D],

     [EMPRESA F],

     [EMPRESA G],

     [EMPRESA H],

     [EMPRESA I],

     [EMPRESA J]

Final:

LEFT JOIN (Tarifas)

LOAD

     ORIGEN,

     DESTINO,

     [RANGO KG ORDENADO],

     Max(Data) as Maximo,

     Min(Data) as Minimo

Resident Cross;

El objetivo (intuyo) es evaluar el transportista más barato para reducir la factura logística !!!!

Saludos

Joaquín

View solution in original post

20 Replies
Joaquin_Lazaro
Partner - Specialist II
Partner - Specialist II

Hola:

Suponiendo que solo tengas dos expresiones, despliega el + que tiene cada expresión en la lista de expresiones, haz doble clic sobre 'Color de fondo' y rellena esta fórmula

if (Column(1) > Column(2), LightRed(), if (Column(1) < Column(2), LightGreen() )

Saludos

Joaquín

carlosac
Creator II
Creator II
Author

Gracias por contestar tan  rápido Joaqin. El problema es que tengo hasta 15 empresas para comparar.

Joaquin_Lazaro
Partner - Specialist II
Partner - Specialist II

Upsss.

En el modelo de datos tienes una tabla con las 15 tarifas ?

Puedes poner el LOAD de las tarifas ?

Saludos

Joaquín

carlosac
Creator II
Creator II
Author

Hola Joaquin, te anexo el fichero de partida que tengo en excel por si te vale....

sorrakis01
Specialist
Specialist

Hola Carlos,

La tarifa que es X o Y? en que precio te basas para saber si es el máximo o el mínimo?

acabo de editar la respuesta: porque en algunos casos son iguales X y Y?

Saludos

sorrakis01
Specialist
Specialist

Ahora lo he pillado 🙂 me faltaba el xls Tarifas

carlosac
Creator II
Creator II
Author

Buenas Jordi, cada empresa me pasan cotizaciones por provincia y rango de kilos : como veras la empresa x me pasa tarifas por provincia y rango kilos y la y idem y asi hasta un total alto de empresas. Me gustaria poder hacer una tabla donde visualmente por provincia y rango kilos me sacara la empresa mas barata y la mas cara y si alguna tarifa se repite en misma provinia y rango en otro color . No se si aclaro asi un poco más el tema

Joaquin_Lazaro
Partner - Specialist II
Partner - Specialist II

Carlos, deja el load con las 10 columnas de tarifa.

Crea una CROSSTABLE desde la tarifa para convertir las columnas de tarifa en lineas donde el id de empresa será un campo y el valor de tarifa otra.

Después hacer un group by por origen, destino y rango para crear dos nuevas columnas MIN(tarifa) y MAX(tarifa)

Haces un join para añadir estos campos en la tabla tarifas incial

Ahora ya puedes hacer la comparación Column(1) = CampoMIN  verde, Column(1) = CampoMAX  rojo,

Saludos

Joaquín

sorrakis01
Specialist
Specialist

Hola Carlos,

Siguiendo con tu código te paso una expresión que te puede ayudar. Ponla en el background de EMPRESA X

If(Sum([EMPRESA X])=max(Total <ORIGEN, DESTINO>[EMPRESA X]),

          LightGreen(),

          If(Sum([EMPRESA X])=min(Total <ORIGEN, DESTINO>[EMPRESA X]),

                    LightRed()))

Piensa que lo tendras que poner en cada una de las expresiones.

Si lo que quieres es saber q Tarifa de todas las EMPRESAS es la mas barata lo tendrás q juntar todo como te dice Joaquín.

Saludos,