Skip to main content
Announcements
Introducing Qlik Answers: A plug-and-play, Generative AI powered RAG solution. READ ALL ABOUT IT!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

SUM(VENTAS) en load Script con Archivo de Excel

Hola Gente de QlikView.

Quisiera saber como hacer un sum en el load script de un campo cargado desde un archivo de excel.

Normalmente trabajo con Oracle en donde esta función es fácilmente implementable, pero ahora me moví a Excel y no se como hacer esto.

Quedo en espera de comentarios.

Por su atención.

Gracias.

1 Solution

Accepted Solutions
isorinrusu
Partner - Creator III
Partner - Creator III

Creo que te hubiera valido con cargarlo de la siguiente manera:

Orders:

Load

[FECHA] as FECHA,

[VENTAS] as VENTAS

FROM [lib://Documents/MasterCalendar.xlsx]

(ooxml, embedded labels, table is Hoja1);

Y después utilizar la siguiente expresión:

sum(Ventas)/sum({1} Ventas), o sum(Ventas)/sum({1} TOTAL Ventas), depende de dónde la uses.

Así evitas tener dos tablas no relacionadas, "islas", que son poco recomendadas.

Saludos,

Sorin.

View solution in original post

12 Replies
jolivares
Specialist
Specialist

Igual...

Load Cliente, Sum(Ventas)

From Tabla1

Group By Cliente;

Esto es en caso de que no te interese tener el detalle de lo que estas cargando.

Not applicable
Author

Lo pongo de esta manera :

Orders:

Load

[FECHA] as FECHA,

[VENTAS] as VENTAS,

Sum([VENTAS]) as TOTALVENTAS

FROM [lib://Documents/MasterCalendar.xlsx]

(ooxml, embedded labels, table is Hoja1);

Y me arroja el siguiente mensaje

qlik error.jpg

jolivares
Specialist
Specialist

Primero veo que estas cargando la columna de Ventas y ademas la estas acumulando, como no hace mucho sentido, de ser asi, entonces simplemente lo que haces es hacer la carga si el sum y luego para presentar los datos entonces le haces un sum.

Lo segundo es que si vas a acumular los datos entonces debes de agruparlos tal y como lo haces en SQL.

Load Fecha as Fecha,

Sum(Ventas) as TotalVentas

From...

Group by Fecha;

Not applicable
Author

No puedo usar el SQL porque son datos de un archivo de Excel.

Olvide mencionar que estoy usando Qlik Sense

Quedo en espera de comentarios.

Por su atención.

Gracias.

jolivares
Specialist
Specialist

No importa, lo puede usar de esta manera, acabo de realizar una prueba con datos similares a lo que necesitas cargar y me ha funcionado perfectamente.

No tienes que usar SQL, te puse el simil para que lo compares con QV de como hacerlo.

jolivares
Specialist
Specialist

Tome estos datos:

Capture.PNG

Coloque este script:

Capture.PNG

Y obtuve esta tabla de los datos:

Capture.PNG

Not applicable
Author

Hola Juan, en efecto ya vi que funciona tal como me dijiste , la idea de hacerlo separado, es decir

Ventas as Ventas,

Sum(Ventas) as TotalVentas.

Es para despues usar un Gauge que conforme aplique filtros el porcentaje vaya cambiando dinamicamente,

la idea es poner en el guage la expresion :

sum(Ventas)/sum(TotalVentas),

Si lo pongo como de la siguiente manera:

Orders:

Load

FECHA as FECHA,

Sum(VENTAS) as TOTALVENTAS,

FROM [lib://Documents/MasterCalendar.xlsx]

(ooxml, embedded labels, table is Hoja1)

Group byFECHA;

Al momento de desplegar TOTALVENTAS, me muestra el listado de todas las ventas y la idea es desplegar solo una linea es decir la suma de todos los registros.

jvitantonio
Luminary Alumni
Luminary Alumni

Hola Jairo,

Me parece que tienes un error de conceptos. Si tienes dos columnas (Fecha y Ventas) y agrupas por Fecha y venta, no podrás calcular el total de venta por fechas.

Por otro lado, si agrupas por fecha, tendras el total de ventas por Fecha (día). Este tipo de calculos los puedes hacer directamente en tus gráficos utilizando la siguiente expresión:

SUM(Ventas) / SuM(TOTAL Ventas)

Qlik Sense te lo calculará automáticamente.

Saludos

Juan

Anonymous
Not applicable
Author

Hola Jairo,

Creo que las indicaciones de los dos Juanes son muy acertadas, y lo de que lo puedes calcular automaticamente en la expresión creo que es lo mas sencillo.

No obstante si quieres cargarlo en el Script por algo en particular yo te diría que pruebes con un join para añadir el total de ventas a tus ventas, algo asi:

Ventas:

Load

Fecha  as FECHA,

Ventas

From archivo.xls;

Left Join (Ventas)

Load

Fecha as FECHA

sum(Ventas) as Total Ventas

Resident Ventas

Group by FECHA;

sigo pensando que es mas sencillo cargar esta operacion directamente con el TOTAL y los modificadores que necesites.

Un saludo,

Maria