Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Buenas!!
Tengo un grafico de barras donde utilzo 2 dimensiones
Dimension 1
=If(Date(MakeDate(Año,mes),'MM/YYYY')>=Ini_Hco and Date(MakeDate(Año,mes),'MM/YYYY')<=Date(MakeDate(Year(FechaInforme),Month(FechaInforme)),'MM/YYYY'),MESAÑO)
Donde Ini_Hco es una variable que indica la fecha a partir de la que quiero muestre los datos (12-2006) y FechaInforme es otra variable que me indica la fina de los datos a mostrar (08-2010)
Dimension 2 es un campo de una tabla access
El problema es que el grafico no es estable, es decir, las barras desaparecen por momentos y vuelven a aparecer.
Hola,
A tu primera pregunta te sugeriría que creases un calendario maestro, de forma que todas las posibles dimensiones temporales las tengas ya en una tabla aparte enlazadas con tu campo de fecha principal.
En el foro tienes muchos ejemplos y variados sobre como realizar un calendario maestro (o varios calendarios) pero básicamente es crear una nueva tabla cuyo campo de enlace es el campo de fecha, al que añades otros campos que puedan resultar útiles para tus aplicaciones: Año, Mes, Semana, Año-Mes, Semana-Mes, Semana-Año, Día, Día de la semana...
Por otro lado, el análisis de conjuntos se utiliza en funciones de agregación para acotar los registros sobre los que dicha agregación debe hacerse. Imagina que tienes una tabla de Ventas y otra de Clientes, y otra de Representantes, y en tu nueva tabla pivotante quieres mostrar sólo aquellas ventas de aquellos clientes cuyo Representante es "Rep1". Una manera fácil de hacerlo es a través del análisis de conjuntos, por ejemplo utilizando como expresión
Sum({< Representante = {'Rep1'} >} Ventas)
Y como dimensión el campo Cliente.
Otro ejemplo sería mostrar sólo las ventas de 2010
Sum({< Año = {2010} >} Ventas)
La ventaja del análisis de conjuntos es la velocidad comparado con una expresión con if() y el uso de memoria. Con pocos registros no se nota mucho pero con medio millón de registros es posible que un gráfico no llegue a cargarse.
Espero que te sirva.
Muchas gracias Miguel!!
He buscado en el foro y he podido crear mi tabla de calendario como me indicaste.
Respecto a los conjuntos, me quedan claros tus ejemplos.
He encontrado esta expresión. Me la podrías explicar?? en especial como opera esta parte de la expresion
({$<[Mes Datos]+={*}>}
Sum ({$<[Mes Datos]+={*}>} N_OPER_ANU_RET) /Sum ({$<[Mes Datos]+={*}>} N_OPER_COB)
Gracias
Hola,
Sinceramente, no le veo mucho sentido así sin más. En teoría, indica que a las selecciones actuales en el campo "Mes Datos" en el momento de mostrar el gráfico se le añadan todos los posibles valores seleccionados. Posiblemente en su modelo de datos tenga sentido para forzar de alguna forma a que tome todos los posibles valores de ese campo. Habitualmente no hace falta esa expresión, ya que por defecto el análisis de conjuntos ya se toma sobre todos los valores de un campo, salvo que en el propio conjunto se modifiquen.
Si tienes el ejemplo, prueba a eliminar todo el análisis de conjuntos. Probablemente el resutlado sea el mismo sin él.
Un saludo.