Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
sonicarm22
Contributor III
Contributor III

Necesito ordenar por un campo que no es numérico

¡Hola a todos!

 

Por favor, necesito generar un indicador que depende del ordenamiento de varios campos, uno de estos campos es una clave que se lee como texto (a pesar de que está compuesta con números), pero es una cadena tan larga que no puedo cambiar el formato .

 

djunto una tabla modelo de lo que me ocurre, aquí los ordené manualmente, pero necesito generar un indicador que me calcule la cantidad final / cantidad inicial, pero la cantidad inicial debe ser para el mínimo clave tabla, por Número_Document_mod, y para la cantidad final , el máximo clave tabla.

 

Espero haberme hecho entender. 

 

Agradezco si alguien me puede ayudar.

1 Solution

Accepted Solutions
rubenmarin

Hola @sonicarm22, si todas las cadenas tienen la misma longitud el orden alfabético debería ser igual que el numérico, ¿no? Puedes usar las funciones MaxString() y MinString() para obtener el mínimo/máximo clave tabla.

View solution in original post

3 Replies
jmmolero
Partner - Creator
Partner - Creator

Buenas,

¿Qlik no es capaz de convertir clave_tabla con la función #Num()?

Si no lo hace puedes probar a partir la clave en 2  creado así 2 nuevos campos (campoA y campoB)

Por ejemplo , "30000000000390001400001" convertirlo a  campoA="30000000000" y CampoB="390001400001", y luego ordenarlos

 

Un saludo. 

 

rubenmarin

Hola @sonicarm22, si todas las cadenas tienen la misma longitud el orden alfabético debería ser igual que el numérico, ¿no? Puedes usar las funciones MaxString() y MinString() para obtener el mínimo/máximo clave tabla.

sonicarm22
Contributor III
Contributor III
Author

Muchas gracias Rubén, efectivamente, por algún motivo no me tomaba ni siquiera el orden alfabético, he allí mi complicación.

Pero si lo pude hacer aplicando el MaxString() y MinString()