Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hola a todos, y gracias de antemano por que me ayudáis bastante en progresar en esta magnifica utilidad.
En esta ocasión estoy pensando en distribuir los datos por cada vendedor para que puedan ver y estudiar sus propios numeros. Y para ello me gustaría que, partiendo de una misma hoja de excel con todos los datos de todos, enviarle un fichero qvf a cada uno solo con los datos de cada uno sin que tengan acceso a todos los demás. Busco que esto sea de una manera lo más automática posible.
¿Como lo veis?, ¿es posible?
Gracias.
Hola José Juan.
Te explico cómo es una de las soluciones.
Vas a tener 2 qvf. Uno va a ser tuyo como generador y no lo vas a compartir. Lo vas a usar para cargar los datos y generar N qvds diferentes, dependiendo del número de usuario - un qvd por usuario. El otro va a ser la aplicación final, que vas a enviar a los N usuarios. Esto quiere decir que el extractor no va a tener gráficos. La aplicación final es la que lo tiene.
Te adjunto unos datos de ejemplo. Son:
El script en el QVF Extractor está comentado, indicándote para qué se hace cada cosa. El objetivo final es conseguir un QVD de Sales y un QVD de Orders por cada vendedor (que está únicamente en la tabla de Sales). Hay un total de 4 vendedores en el Excel de ejemplo, por lo que se generan 8 QVDs (1 Orders y 1 Sales * 4). Si pones a mano más vendedores, te generará más QVDs - es dinámico.
Échale un vistazo, y cualquier duda me comentas.
Un saludo!
Es posible, puedes dar una revisada a la función Section Application.
Esta función te va a permitir limitar los datos que puede ver cada uno de los usuarios dependiendo de su rol, región o cualquier otra dimensión.
Saludos.
Hola Jose Juan,
El Section Access no te va a servir porque Qlik Sense Desktop no lo incluye - no funciona (a diferencia de QlikView Desktop). Si lo tuvieras en un servidor, y cada uno de los usuarios tuviese una licencia, sí podrías usarlo.
Creo que una solución mejor es repartir .QVDs en vez de QVFs. Muchos QVDs, un solo QVF para todos. El usuario solamente tendría que recargar la aplicación después de que tú le pasases los datos.
Esto lo haría de la siguiente manera: con un bucle for each (con el FieldValueList sobre el campo de vendedor), cargar los datos pertenecientes solamente a ese vendedor (con un Where en el Load), y exportar el resultado a qvds diferentes, usando la misma variable de Vendedor para que te cree muchos, y no te machaque los anteriores.
Si quieres un ejemplo de verdad dímelo.
Un saludo,
Sorin.
Gracias a los dos por el input.
La verdad es que me suena a chino lo que me decis. ¿Teneis informacion donde estudiarme eso de los QVDs? como se hacen y ¿como conectarlo en el Load?
Gracias.
Todo lo puedes encontrar en la ayuda de Qlik, te dejo una liga:
https://help.qlik.com/en-US/sense/3.2/Subsystems/Hub/Content/Scripting/work-with-QVD-files.htm
Te recomiendo manejarlo de la siguiente manera:
1.- Dar nombre a la tabla que se crea en memoria (en este caso es "PrecioL2")
PrecioL2:
LOAD
Codigo,
PrecioVentaL2,
Descripcion
;
SELECT .....
2-lo guardas en un archivo QVD
store PrecioL2 into BDprecios.qvd
3.- Recuperas los datos desde el archivo QVD
PrecioAntL2:
LOAD
Codigo,
PrecioVentaL2 as precioAnt
FROM
[BDprecios.qvd]
(qvd);
En este ejemplo el archivo QVD se guardará en el mismo subdirectorio donde radica tu archivo QVW pero puedes indicar la ruta completa tanto al guardar como al recuperar, Ej:
guardar
store PrecioL2 into C:\SIVIDI\BDprecios.qvd
recuperar
FROM
[C:\SIVIDI\BDprecios.qvd]
(qvd);
Si te sirve la marcas como respuesta para los que vienen atrás.
Saludos
Hola Sorin
Si puedes echarme una mano te lo agradecería, esto se me escapa.
Saludos.
Buen día
Que tal José Juan, te comento que estoy haciendo algo parecido para una cooperativa de ahorros, la idea es que cada sucursal pueda ver la información perteneciente a cada una, lo que hago es tener un qvd en general con toda la información, y para cada sucursal es la misma app pero a diferencia de cada una tiene un where = Sucursal, con esto al recargar cada una tendría información solo perteneciente a la sucursal o agencia.
Where Sucursal = 'Quito Norte';
Hola,
La solución de José Antonio es muy buena y sencilla. Le añadiría solo lo siguiente para facilitar el mantenimiento de las mismas:
La solución de Sorín es igual de buena y le añadiría algo parecido: cada aplicación va a coger "su" QVD ya que cada QVD tendría un sufijo o prefijo de la sucursal que contiene.
¡Espero que te sirva!
Saludos,
H
Hola a todos.
Antes de todo muchas gracias por vuestro aporte de soluciones, pero yo soy bastante novato en esto y, aunque me estoy leyendo las ayudas, todavía se me queda un poco alto de nivel y no se como afrontarlo.
Para que sea algo más interactivo os paso un ejemplo de qvd sencillo y por favor modificad lo que veáis oportuno y de esa forma puedo avanzar sin dar palos de ciego, que esto me supera.
La idea es, como creo entender, es generar tantos qvd como vendedores me salen de los dos filtros que tengo. Son los mismos vendedores pero no he querido linkar a un solo filtro, por la estructura de la verdadera base de datos.
Muchas gracias a todos por la ayuda.