18 Replies Latest reply: Mar 13, 2013 7:09 PM by Diego Mauricio RSS

    Crear columna acumulado.

      Hola:

       

      Tengo un problema respecto a la creación de una columna con el acumulado de un valor, lo que sucede es que la tabla tiene más de una dimensión (no se si esto será un impedimento).

       

      quiero crear una nueva columna con el acumulado de las VENTAS cuya expresión es (Sum (VALOR_NETO_MOV)/Sum (TOTAL VALOR_NETO_MOV)), lo que ocurre es que al crear la otra columna con la misma expresión y seleccionando la opción acumulación completa, no se genera el acumulado,  mostrando lo mismo que la columna VENTAS.

       

      Ahora comprobe que al eliminar una de las dimensión que tengo en mi tabla, si genera se genera el acumulado de las VENTAS.

       

      Si alguien puede ayudarme con esto, se lo agradecería.

        • Re: Crear columna acumulado.

          Hello

           

           

          It scarcely an impediment, I have an application where I have four dimensions.

          I share a sentence, I hope this gives you an idea.

           

           

          Name a calculated field ([MORT. H.]).

          Name field that generates the accumulation ([MORT. H. YTD.])

           

           

          this to me it

           

           

          IF (Rowno () = 1, [MORT. H.] ([MORT. H.] + Above ([MORT. H. YTD.])))

           

           

          regards

            • Re: Crear columna acumulado.

              Mira intente hacer lo que me dijiste pero igualmente no genera el acumulado, salen puros valores ceros, alguna otra solución.

               

              gracias.

                • Re: Crear columna acumulado.
                  Jose Tos

                  Cuáles son tus dimensiones? sobre cuál quieres agrupar para calcular el acumulado.

                  Me parece que necesitas usar la funcion aggr()

                   

                  El aggr lo que hace es calcular la función que quieras con la agrupación que necesites, como un group by, la sintaxis la puedes encontrar en la ayuda pero es algo así:

                   

                  aggr(sum({<Análisis de conjuntos que necesites>} VALOR_NETO_MOV), Aquí van los campos de la agrupación separados por comas)

                   

                  Si puedes copia la tabla para que veamos el resultado que debería ser

                   

                  Saludos

                    • Re: Crear columna acumulado.

                      mira, te adjunte un estracto del a tabla que necesito generar el acumulado, la fila % vta es el valor que obtengo de la expresión (Sum (VALOR_NETO_MOV)/Sum (TOTAL VALOR_NETO_MOV)), por otro lado la idea es que la columna % vta acum. sea el acumulado de la tabla % vta, pero al colocar dentro de las expresiones lo mismo pero con la opción acumulado total, me tira los mismos valores que la columna anterior.

                       

                      se puede hacer algo al respecto???.

                          • Re: Crear columna acumulado.
                            Jose Tos

                            En la pestaña de expresiones puedes elegir la función de totalización. Necesitas replicar el mismo resultado en todas las filas creando la columna % vta acum. ?

                            Porque si no, puedes cambiar la expresión del total seleccionando suma para que en %vta no te totalice utilizando la misma expresión que usas para hacer el cálculo, me entiendes? Así sumará los porcentajes que tienes en % vta y ese será el total de la columna

                              • Re: Crear columna acumulado.

                                Creo que no explique bien, lo que quiero es hacer una columna (% vta acum.) cuyos valores sean el acumulado de la culumna (% vta), al seleccionar acumulación total dentro de la pestaña expresión de la columna (% vta acum.), no genera ningún cambio, arrojandondo el mismo valor de la columna (% vta).

                                 

                                Se puede hacer algo al respecto.?? ( la verdad es que no entendi muy bien lo que quisite decir arriba).

                                  • Re: Crear columna acumulado.
                                    Jose Tos

                                    vale, acabo de entender, entonces con above tiene que salir, creo que rowno() para la primera fila es un 1, sino puede que devuelva 0

                                     

                                    Prueba esto a ver si te sirve

                                     

                                    if( rowno()=1,[%vta], [% vta] + above([%vta acum.]) )

                                      • Re: Crear columna acumulado.

                                        Mira José, es la misma expresión que comentaron en el inicio de la pregunta y como respondí antes, genera el mismo valor que la columna % vta. se puede mejorareste problema???

                                          • Re: Crear columna acumulado.
                                            Jose Tos

                                            Sí, es la misma expresión y debería funcionar. Has probado a poner la expresión rowno() en una columna para ver qué número de fila te aparece en cada una de las filas? No sé si influye que los totales estén arriba...

                                            La expresión la he usado en otros casos imagino que igual que el otro que contestó y me ha funcionado, otra opción no se me ocurre, suerte

                                              • Re: Crear columna acumulado.

                                                Muchas gracias José,intentare jugar con las tablas.

                                                • Re: Crear columna acumulado.

                                                  José hice dos cambios puse los totales abajo, y además hice una columna con la expresión rowno(), y me arroja todas las filas con valor 1. que significa eso???

                                                    • Re: Crear columna acumulado.
                                                      Jose Tos

                                                      Si no me equivoco pasa como con las tablas pivot, al haber 2 aperturas, toma el número de fila con respecto a la primera apertura, por lo que está tomando como fila 1 a cada fila abierta por cliente ya que cuenta 1 para cada Rut, si quitas una dimensión debería cambiar.

                                                        • Re: Crear columna acumulado.

                                                          Sip, ya lo había comprobado que con una sola dimención funcionaba bien el acumulado( es más solo seleccionando la expresión acumulación completa funciona), pero necesito que la tabla tenga estas dos dimenciones, se podrá trabajar de alguna manera esto para poder generar el acumulado??,o crear otra expresión???.

                                                            • Re: Crear columna acumulado.
                                                              Jose Tos

                                                              Sé que rowno(Total) te devuelve el valor de las filas bien, en lugar de poner 1 a todas, no sé si con above(total ) hará lo mismo. Mira bien la ayuda de rowno(), above(), esas funciones inter-registro en el gráfico, si se me ocurre algo te escribo

                                                                • Re: Crear columna acumulado.
                                                                  Siddharth Kulkarni

                                                                  People can help, if you translate this to English

                                                                    • Re: Crear columna acumulado.

                                                                      Hello:

                                                                       

                                                                      I have a problem about the creation of a column with the accumulated value when the table has more than one dimension (I'm not sure if this will be a hindrance).

                                                                       

                                                                      I want to create a new column with the cumulative sales, called %VENTAS ACUM, whose expression % is (Sum (VALOR_NETO_MOV) / Sum (TOTAL VALOR_NETO_MOV)), the problem is that when I want to create this column selecting "full accumulation" is not generated and it shows the same as the column %VENTAS, that it has the same expression without "full acumulation". In this table I have 2 dimenssions,

                                                                       

                                                                      Now I found that when using only one dimension that I have on my my table, the results of %VENTAS and %VENTAS ACUM are correct.

                                                                       

                                                                      I tried with the formula IF(Rowno () = 1, [% row] [% row] + above ([% Cumulative row.])), but the results of %VENTA and %VENTAS ACUM are the same too,

                                                                       

                                                                       

                                                                      HELP ME PLEASE!!

                                                                  • Re: Crear columna acumulado.

                                                                    Hola Amigo

                                                                     

                                                                    Cordial Saludo,

                                                                     

                                                                    Queria saber si lograste solucionar esta duda, disculpa que lo ponga en la categoria como responder pero no encontre la forma de escribir sobre este tema en particular.  Es que actualmente soy nuevo en el desarrollo en QV y tengo el mismo problema que estas reportando y hasta la fecha no he podido solucionarlo.

                                                                     

                                                                    Agradezco ampliamente la atencion a este y quedo a la espera de tu valiosa colaboracion.