none
Iniciar Semana en Dia Lunes y no en Dia Domingo en Crystal Reports RRS feed

  • Pregunta

  • Buenos Días, Noches, Tardes como sea en cada uno de sus países :P

    Señores tengo un problema que me trae de cabeza, estoy haciendo un reporte en Crystal Reports 10, a base de un procedimiento almacenado traigo datos al reporte, uno de esos datos es un campo fecha "li_fechaven" lo que quiero es hacer una agrupación en el reporte por este campo.

    Crystal me da varias opciones, agrupar por semana, por día, por horas, etc. etc, la agrupación que yo necesito es por Semanas, y ahí es donde comienza mi problema

    Crystal Report me toma como inicio de Semana el día Domingo, y yo necesito que me tome como inicio de Semana el día Lunes, es de vital importancia que esto sea de esta forma para que el reporte quede bien hecho. he buscado mucho navegado mucho tiempo en Internet tratando de buscar la solución pero hasta el momento nada, por eso recurro a uds.

    Espero haberme explicado lo suficientemente bien y me puedan aportar para solventar mi problema

    Mil Gracias.


    ‎'todos somos ignorantes pero no todos ignoramos lo mismo'.- albert einstein

    miércoles, 13 de febrero de 2013 22:24

Respuestas

  • Hola Eddi muchismas gracias por tu ayuda, 

    te voy explicar este detalle, Sucede que cuando miras un calendario tu ves que por lo general la primera semana y la ultima semana del mes esta cortadas, con esto quiero decir que un mes puede iniciar o terminar cualquier día de la semana no necesariamente un Lunes, lo que yo quería era que 

    la semana iniciara en el día que iniciara se Cortara el día Domingo, por ejemplo la primera semana del Mes de Febrero de este año inicia un Viernes

    entonces la semana que coresponderia a ese periodo seria Viernes, Sábado, Domingo, ya la siguiente semana si iniciaría normal de Lunes a Domingo,

    si te das cuenta al Finalizar el Mes de Febrero Termina un Jueves. Esto quiere decir que la Ultima semana de Febrero yo la tomaría de Lunes 25 hasta el Jueves 28, esto es así, por que ya Iniciaría el Mes de Marzo el día Viernes y asi sucesivamente

    quizá con esto te quede mas claro.

    Sin embargo tanto Esfuerzo por fin ha dado su fruto, no es posible cambiar mediante configuración de parametros el primer dia de la semana, entonces la solución realmente fue crear una Formula y agrupar por esta Formula de la siguiente Forma

    Nombre de la Formula --- > primerDiadelaSemanaLunes 

    datepart("ww", {fechaporlaqueagrupas}, crmonday)

    despues de esto, hago una agrupacion por MES y seguido de este agrupo por mi Formula, y VOILA Funcionó! :D

    Ahora las Semanas me las Toma de Lunes a Domingo y no de Domingo a Lunes

    Espero que esta solución pueda ayudar, pues investigue mucho en la web y siempre encontraba la pregunta sin respuesta alguna, Mil gracias nuevamente Eddie


    ‎'todos somos ignorantes pero no todos ignoramos lo mismo'.- albert einstein

    • Marcado como respuesta Angare jueves, 14 de febrero de 2013 21:22
    jueves, 14 de febrero de 2013 21:22

Todas las respuestas

  • en tu sp traes el dia domingo y cuando lo agrupas por crystal te comienza desde el domingo?? no entiendo muy bien si pudieras poner unas imagenes o algo que de una idea mas clara te podria yudar  mejor, saludos


    si mi respuesta te ayudo votala como util, si resolvio tu duda marcala como respuesta, de esta manera ayudas a otros compañeros que tengan dudas similares.

    miércoles, 13 de febrero de 2013 23:52
  • en tu sp traes el dia domingo y cuando lo agrupas por crystal te comienza desde el domingo?? no entiendo muy bien si pudieras poner unas imagenes o algo que de una idea mas clara te podria yudar  mejor, saludos


    si mi respuesta te ayudo votala como util, si resolvio tu duda marcala como respuesta, de esta manera ayudas a otros compañeros que tengan dudas similares.

    En el SP traigo las Fechas que correponden a la información, luego esa misma Fecha la agrupo por Semanas

    Gracias por responder, lo que sucede es que en el informe tengo que mostrar por semana entonces quiero que la semana empiece el Lunes y no el Domingo, por ejemplo si voy de Lunes a Domingo, me aparecen los registros de la siguiente forma

    Lunes --- > xxxxx 

    Martes --- > xxxxx

    ....

    Domingo --- > xxxxx

    pero si voy de domingo a Lunes entonces me mete en la siguiente semana una dia de la semana anterior, y ese dia es domingo

    Domingo ---- > Semana Anterior

    Lunes ----->  xxxxxx

    ....

    como ves, el domingo que empieza semana pertenece a la semana anterior, y ese es el problema que nesecito sacar los registros por semana, para identificar a que semana pertenece el registro

    espero haber sido claro


    ‎'todos somos ignorantes pero no todos ignoramos lo mismo'.- albert einstein

    jueves, 14 de febrero de 2013 13:44
  • entonces tienes una formula que convierte las fechas a dias??? o desde la misma consulta lo conviertes??,

    solo agrupas por dias??? o igual agrupas (un ejemplo) tienes un vendedor y agrupas sus ventas por dia, tu reporte quedaria asi, agrupado por cliente y por fechas de venta (semanas)

    cliente 1

          lunes

                venta 1     

                 venta 2   

    cliente 2

         lunes

                venta1

          martes

               venta 2

    ----- asi estara tu reporte???

         o solo quieres agrupar por el puro dia de la semana????

        lunes

           venta 1

          venta 2 etc.

        martes

           venta 1 etc.

    saludos.


    si mi respuesta te ayudo votala como util, si resolvio tu duda marcala como respuesta, de esta manera ayudas a otros compañeros que tengan dudas similares.

    jueves, 14 de febrero de 2013 14:20
  • lo que sucede es lo siguiente en un procedimiento almacenado me traigo un campo  datatime, con este campo creo un grupo, el grupo me permite difeferente tipos de ordenamiento , el ordenamiento que yo elijo es por Semanas, pero el ordenamiento que me hace por semanas me lo toma como inicio de semana domingo, y yo lo nesecito por lunes

    por ejemplo en este mes hoy es 14

    si se empiezan registros seria algo asi

    Jueves 14  ---- > xxxxxx

    viernes 15 ---- > xxxxxx

    Sabado 16 ---- > xxxxxx

    ------------------------------------------------------------------------------------- Siguiente Semana

    domingo 17 -----> xxxxx

    Lunes 18 ------> xxxxxx

    como te das cuenta domingo 17 hace parte de la semana anterior y Crystal me lo esta tomando como el inicio de una nueva semana

    así que yo necesito que me quede asi

    Jueves 14  ---- > xxxxxx

    viernes 15 ---- > xxxxxx

    Sabado 16 ---- > xxxxxx

    Domingo 17 ----> xxxxx

    -------------------------------------------------------------------------------------------- Siguiente Semana

    Lunes 18 ----> xxxxxx

    Espero me puedas Enteder

    Gracias por tu ayuda


    ‎'todos somos ignorantes pero no todos ignoramos lo mismo'.- albert einstein

    jueves, 14 de febrero de 2013 15:43
  • ok, lo voy entendiendo mejor, tengo una pregunta , como sabes tu que empieza la senana con domingo???, por lo que veo como bien dices, lo agrupas por fecha pero le das el formato de dia, entonces te saldria asi,

    jueves 14

    viernes 15

    sabado 16

    domingo 18

    lunes 19 etc,

    como sabes que que "domingo" pertenece a la semana anterior, (eso es lo que entiendo que solo agrupas por dias), como determinas cuando empieza y termina una semana lo agrupas por otra cosa??, si puedes postear una imagen de como se ve el reporte, te podria ayudar mejor, saludos


    si mi respuesta te ayudo votala como util, si resolvio tu duda marcala como respuesta, de esta manera ayudas a otros compañeros que tengan dudas similares.

    jueves, 14 de febrero de 2013 15:51
  • Reporte Semanas Enero

    Bueno espero se haya adjuntado bien la Imagen, por ejemplo en la imagen se puede ver que primero hay una agrupación de la fecha en cuestión por MES, seguido esta la misma fecha pero esta ves esta agrupada por Semanas, en la imagen se puede notar claramente que en Enero empieza la Semana el 30 de de Diciembre de 2012 y termina el 06 de Enero de 2013, como ves, va de Domingo a Domingo, lo que yo quiero es que me tome para la primera semana de enero

    DEL 01 DE ENERO (VIERNES) AL 03 DE ENERO (DOMINGO) y así sucesivamente

    Espero esta ves si me hayas entendido completamente, si necesitas alguna otra explicación por favor hasmelo Saber, nuevamente muchas gracias por tu tiempo.

    Aqui esta el Link por si no puedes ver la Imagen 

    https://docs.google.com/file/d/0B_4tkHoICDHmcU1ZSnhIRll6MEk/edit?usp=sharing


    ‎'todos somos ignorantes pero no todos ignoramos lo mismo'.- albert einstein

    Disculpa acabo de notar que este Ejemplo esta mal "DEL 01 DE ENERO (VIERNES) AL 03 DE ENERO (DOMINGO) "
    En realidad el 01 de Enero de 2013 es un Martes e iria hasta el 06 de Enero de 2013 que es un Domingo 

    pero en el reporte tu ves que el 06/01/2013 lo toma como inicio de Semana, y este debe pertenecer a la Semana anterior, ahora si este si es un buen Ejemplo :D

    Acabo de hacer este otro Ejemplo para que te quede mas claro lo que quiero Lograr.

    https://docs.google.com/file/d/0B_4tkHoICDHmZXpEelFLNnZ4bWM/edit?usp=sharing

    • Editado Angare jueves, 14 de febrero de 2013 20:10
    jueves, 14 de febrero de 2013 16:23
  • tu quieres que en vez de que se inicie en enero, se inicie en lunes??? eso es lo que quieres??, o quieres que el order vaya pero en los datos de tus agrupacion, si ya me esta quedando mas claro, esa serian mis 2 dudas saluds

    si mi respuesta te ayudo votala como util, si resolvio tu duda marcala como respuesta, de esta manera ayudas a otros compañeros que tengan dudas similares.

    jueves, 14 de febrero de 2013 20:52
  • Hola Eddi muchismas gracias por tu ayuda, 

    te voy explicar este detalle, Sucede que cuando miras un calendario tu ves que por lo general la primera semana y la ultima semana del mes esta cortadas, con esto quiero decir que un mes puede iniciar o terminar cualquier día de la semana no necesariamente un Lunes, lo que yo quería era que 

    la semana iniciara en el día que iniciara se Cortara el día Domingo, por ejemplo la primera semana del Mes de Febrero de este año inicia un Viernes

    entonces la semana que coresponderia a ese periodo seria Viernes, Sábado, Domingo, ya la siguiente semana si iniciaría normal de Lunes a Domingo,

    si te das cuenta al Finalizar el Mes de Febrero Termina un Jueves. Esto quiere decir que la Ultima semana de Febrero yo la tomaría de Lunes 25 hasta el Jueves 28, esto es así, por que ya Iniciaría el Mes de Marzo el día Viernes y asi sucesivamente

    quizá con esto te quede mas claro.

    Sin embargo tanto Esfuerzo por fin ha dado su fruto, no es posible cambiar mediante configuración de parametros el primer dia de la semana, entonces la solución realmente fue crear una Formula y agrupar por esta Formula de la siguiente Forma

    Nombre de la Formula --- > primerDiadelaSemanaLunes 

    datepart("ww", {fechaporlaqueagrupas}, crmonday)

    despues de esto, hago una agrupacion por MES y seguido de este agrupo por mi Formula, y VOILA Funcionó! :D

    Ahora las Semanas me las Toma de Lunes a Domingo y no de Domingo a Lunes

    Espero que esta solución pueda ayudar, pues investigue mucho en la web y siempre encontraba la pregunta sin respuesta alguna, Mil gracias nuevamente Eddie


    ‎'todos somos ignorantes pero no todos ignoramos lo mismo'.- albert einstein

    • Marcado como respuesta Angare jueves, 14 de febrero de 2013 21:22
    jueves, 14 de febrero de 2013 21:22