border

Miembros:
Mensajes:
Temas:
Online:

Ultimo Miembro:

 
 

  #1 (permalink)  
Antiguo 11-01-2006, 11:23:42
Un Nuevo Amigo
 
Registrado: ene 2006
Ubicación: Madrid
Posts: 8
roberto1981 Valoración +2
Contactar con roberto1981 a través de MSN
Predeterminado Ordenar un campo fecha por semanas

Buenas, espero que alguien me pueda echar una mano. Mi problema es que he realizado un report con Cristal Report XI en el que inserto una tabla en la que tiene por filas unos pagos y por columnas la fecha.
Cuando ordeno las columnas por días (de todo un mes entero) me sala una parrafada increible, y al intentar ordenarlo por fecha en semanas (en cross-Tab Expert.., en cross-Tab, apartado columns "Group Options", justo en la pestaña "The column will be printed:", ahí selecciono "for each week") me encuentro con que lo ordena por semanas, pero de domingo a domingo, sin tener en cuenta si el día en el que comienza el mes es Jueves, Lunes...
Me gustaría diseñar la tabla insertando la fecha en las columnas de tal forma que si la primera semana empieza en jueves, pues sea de jueves a domingo (no de domingo a domingo como lo hace el programa por defecto).
He intentado también realizar una función, pero no he llegado a sacar la solución.
Si alguien sabe que parámetro puedo insertar para que me quede como quiero o alguna función que realice lo que pido... le daria mil gracias porque me urge un poco...

Un saludo y muchas gracias.
__________________
Rober
Responder Con Cita
  #2 (permalink)  
Antiguo 11-01-2006, 17:40:03
Avatar de J.M.Movilla
Administrator
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 5.136
J.M.Movilla Valoración +2
Predeterminado

Creo que lo único que tienes que hacer es añadir a la SQL " WHERE Month(Fecha) = " & Month(CajaFechaEstudio)

De esta forma te cojerá las semanas inicial y final recortadas como tú quieres.
__________________
José María Movilla Cuadrado
______________________

Visual Basic Videos Programacion Foro Programacion
Tutoriales Programacion Trucos Programacion Codigos Programacion
Responder Con Cita
  #3 (permalink)  
Antiguo 12-01-2006, 18:36:42
Un Nuevo Amigo
 
Registrado: ene 2006
Ubicación: Madrid
Posts: 8
roberto1981 Valoración +2
Contactar con roberto1981 a través de MSN
Predeterminado

Gracias JM, pero no he podido utilizar la fórmula que me dices puesto que no utilizo el sql. En este reporte sólo he utilizado tablas con fórmulas y registros de tablas, pero no he instanciado nada en sql (ni vistas ni nada) ni he realizado ningun comand.
De todas formas he estado leyendo algo por ahí y por lo visto el programa toma por defecto el domingo como día inicial de la semana, parámetro que se puede cambiar (aunque no me digas como, jejeje).
De todas formas gracias, seguire investigando por si doy con el resultado. Ah? por cierto, ¿algo para pasar de un valor numérico (por ejemplo el número 62 por decir algo) a segundos (ejemplo, 1 minuto y 2 segudos, o 62 segundos sin mas)??
He probado con todas las variantes de datetime y timedate pero nada.. ¡¡que desquicio cuando las cosas no salen :smt011 !!, jejeje

Un saludo y muchas gracias
__________________
Rober
Responder Con Cita
  #4 (permalink)  
Antiguo 23-02-2006, 13:54:45
Un Nuevo Amigo
 
Registrado: ene 2006
Ubicación: Madrid
Posts: 8
roberto1981 Valoración +2
Contactar con roberto1981 a través de MSN
Predeterminado

Buenas compañeros de batalla :smt006 . Buscando por ahí encontré esta formulilla que hace que las semanas comiencen por Lunes y no por Domingo (utilizando Formula Fields):

----------------------------------------------
WhileReadingRecords;
DateVar MiDia := date({Tabla.Campo_Fecha});

//DiaDeComienzo es un valor entre 1 y 7. Sunday = 1, Monday = 2,...Saturday = 7

NumberVar DiaDeComienzo := 2;
NumberVar DiasPosteriores;

//Si MiDia es semanalmente anterior a DiaDeComienzo, haremos:

If DiaDeComienzo > dayofweek(MiDia) then
DiasPosteriores:= 7 - DiaDeComienzo + dayofweek(MiDia)

//si es posterior al dia de comienzo, en DiasPosteriores insertaremos:

Else
DiasPosteriores:= (dayofweek(MiDia) - DiaDeComienzo);

MiDia - DiasPosteriores
----------------------------------------------

Agregando esta fórmula al Cross-Tab y ordenándolo por días, obtendremos una agrupación semanal en la que los días comienzan en Lunes :smt003 :smt003 :smt003 .

Un saludo foreros
__________________
Rober
Responder Con Cita
Respuesta


Herramientas
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado


Temas Similares
Tema Autor Foro Respuestas Último Mensaje
Ordenar DataGrid por un campo clarita_1979 Visual Basic 6.00 5 31-12-2007 09:52:35
Como ordenar un campo en crystal.... ayudaa..!!! mariat Crystal Reports 5 21-06-2007 13:17:46
Ordenar ComboBox por campo numérico MiguelPG Visual Basic 6.00 1 04-09-2005 04:47:15
Ordenar por fecha Insomnia17 Visual Basic 6.00 2 29-04-2005 06:36:03
Ordenar por fecha Locodelcraneo Visual Basic 6.00 5 17-09-2004 00:00:00


La franja horaria es GMT. Ahora son las 22:03:12.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0
A vBSkinworks Design

Alojado en el servicio Premium de Masquewebs | Diseño mejorado por MasqueWebs

right