Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-12-2007
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
Rango de fechas

necesito un codigo para general un reporte en quickreport de delphi 5 por rangos de dos fechas usado los componentes TDateTimePicker.

Gracias!!!!
Responder Con Cita
  #2  
Antiguo 28-12-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Código Delphi [-]
Form1:=TForm1.Create(self);
   try
     Query1.Close;
     Query1.SQL.Clear;
     Query1.SQL.Text := 'select fecha from tabla where fecha >= :desde and    fecha <= :hasta order by fecha';
    Query1.parambyname('desde').value := DBTimePicker1.date;
    Query1.parambyname('hasta').value := DBTimePicker2.date;
    Query1.Open;
    Form1.QuickRpt1.Preview;
 finally
   Form1.free;
 end;

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #3  
Antiguo 28-12-2007
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
este es el codigo que estoy usando, como puedo hacer para que la fecha se muestre en dos componentes QrLabel llamados cutfecha3 y cutfecha4 en el reporte de quick report


Código Delphi [-]
 
      procedure TfrmTest.BtnAdmClick(Sender: TObject);
begin
 qrFondos.close;
qrFondos.SQL.clear;
if (CutBox.checked=false) then begin
     qrFondos.sql.add('select * from Ofrendas');
     qrFondos.sql.add('where fecha between '+#39+DatetoStr(Cutfecha1.date)+#39+' and '+#39+DatetoStr(Cutfecha2.date)+#39);
     Case CutStatus.ItemIndex of
          0:qrFondos.sql.add('and Tipo_Recibo ='+#39+'I'+#39);
          1:qrFondos.sql.add('and Tipo_Recibo ='+#39+'R'+#39);
          end;
     qrFondos.open;
end;
if (CutBox.checked=true) then begin
   qrFondos.sql.add('select * from Ofrendas');
   Case CutStatus.ItemIndex of
       0:qrFondos.sql.add('where Tipo_Recibo ='+#39+'I'+#39);
       1:qrFondos.sql.add('where Tipo_Recibo ='+#39+'R'+#39);
       end;
   qrFondos.open;
   end;
  begin
QrAdm.preview;
end;
end;
 
end.

Última edición por marcoszorrilla fecha: 28-12-2007 a las 21:29:16. Razón: Etiquetas Delphi
Responder Con Cita
  #4  
Antiguo 28-12-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Código Delphi [-]
procedure TfrmTest.BtnAdmClick(Sender: TObject);
begin
 qrFondos.close;
qrFondos.SQL.clear;
if (CutBox.checked=false) then begin
     qrFondos.sql.add('select * from Ofrendas');
     qrFondos.sql.add('where fecha between '+#39+DatetoStr(Cutfecha1.date)+#39+' and '+#39+DatetoStr(Cutfecha2.date)+#39);
     Case CutStatus.ItemIndex of
          0:qrFondos.sql.add('and Tipo_Recibo ='+#39+'I'+#39);
          1:qrFondos.sql.add('and Tipo_Recibo ='+#39+'R'+#39);
          end;
     qrFondos.open;
     Form1.cutfecha3.Caption := Cutfecha1.date;
     Form1.cutfecha4.Caption := Cutfecha2.date;
  end;
if (CutBox.checked=true) then begin
   qrFondos.sql.add('select * from Ofrendas');
   Case CutStatus.ItemIndex of
       0:qrFondos.sql.add('where Tipo_Recibo ='+#39+'I'+#39);
       1:qrFondos.sql.add('where Tipo_Recibo ='+#39+'R'+#39);
       end;
   qrFondos.open;
   Form1.cutfecha3.Caption := Cutfecha1.date;
   Form1.cutfecha4.Caption := Cutfecha2.date;
   end;
  begin
QrAdm.preview;
end;
end;
 
end.
Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #5  
Antiguo 28-12-2007
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
ok

ahora esta este error Incompatible types 'Sting' and 'TDate'
Responder Con Cita
  #6  
Antiguo 28-12-2007
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
Gracias Solucione el problem
Codigo Delphi (-)

procedure TfrmTest.BtnAdmClick(Sender: TObject);
begin
qrFondos.close;
qrFondos.SQL.clear;
if (CutBox.checked=false) then begin
qrFondos.sql.add('select * from Ofrendas');
qrFondos.sql.add('where fecha between '+#39+DatetoStr(Cutfecha1.date)+#39+' and '+#39+DatetoStr(Cutfecha2.date)+#39);
Case CutStatus.ItemIndex of
0:qrFondos.sql.add('and Tipo_Recibo ='+#39+'I'+#39);
1:qrFondos.sql.add('and Tipo_Recibo ='+#39+'R'+#39);
end;
qrFondos.open;
QrAdm.cutfecha3.Caption := DatetoStr(cutfecha1.date);
QrAdm.cutfecha4.Caption := DateToStr(CutFecha2.Date);
end;
if (CutBox.checked=true) then begin
qrFondos.sql.add('select * from Ofrendas');
Case CutStatus.ItemIndex of
0:qrFondos.sql.add('where Tipo_Recibo ='+#39+'I'+#39);
1:qrFondos.sql.add('where Tipo_Recibo ='+#39+'R'+#39);
end;
qrFondos.open;
QrAdm.cutfecha3.Caption := DatetoStr(cutfecha1.date);
QrAdm.cutfecha4.Caption := DatetoStr(cutfecha2.date);
end;
begin
QrAdm.preview;
end;
end;

end.

Muchas Gracias por su ayuda!!!!
Responder Con Cita
  #7  
Antiguo 28-12-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
No Hay de que Amigo Chino, estamos aqui para ayudar.

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #8  
Antiguo 29-12-2007
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
Hola!!!

Le pido excusa pero ahora el tiempo de ejecucion me sale el siquiente mensaje Type Mismatch in expression como soluciono este porblema



Gracias!!!
Responder Con Cita
  #9  
Antiguo 29-12-2007
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Cita:
Empezado por chino150 Ver Mensaje
Hola!!!

Le pido excusa pero ahora el tiempo de ejecucion me sale el siquiente mensaje Type Mismatch in expression como soluciono este porblema

Gracias!!!
Seguro que este código no te muestra un error al compilarlo?

Código Delphi [-]
procedure TfrmTest.BtnAdmClick(Sender: TObject);
begin
   qrFondos.close;
   qrFondos.SQL.clear;
   if (CutBox.checked=false) then begin
       qrFondos.sql.add('select * from Ofrendas');
       qrFondos.sql.add('where fecha between '+#39+DatetoStr(Cutfecha1.date)+#39+' and '+#39+DatetoStr(Cutfecha2.date)+#39);
       Case CutStatus.ItemIndex of
           0:qrFondos.sql.add('and Tipo_Recibo ='+#39+'I'+#39);
           1:qrFondos.sql.add('and Tipo_Recibo ='+#39+'R'+#39);
       end;
       qrFondos.open;
       QrAdm.cutfecha3.Caption := DatetoStr(cutfecha1.date);
       QrAdm.cutfecha4.Caption := DateToStr(CutFecha2.Date);
   end;
   if (CutBox.checked=true) then begin
       qrFondos.sql.add('select * from Ofrendas');
       Case CutStatus.ItemIndex of
          0:qrFondos.sql.add('where Tipo_Recibo ='+#39+'I'+#39);
          1:qrFondos.sql.add('where Tipo_Recibo ='+#39+'R'+#39);
       end;
       qrFondos.open;
       QrAdm.cutfecha3.Caption := DatetoStr(cutfecha1.date);
       QrAdm.cutfecha4.Caption := DatetoStr(cutfecha2.date);
   end;
//**********************************************
   begin //??????
       QrAdm.preview; 
   end;  //??????
//**********************************************
end;

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #10  
Antiguo 29-12-2007
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
No Amigo


El error sale en tiempo de ejecucion
Responder Con Cita
  #11  
Antiguo 29-12-2007
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Cita:
Empezado por chino150 Ver Mensaje
No Amigo


El error sale en tiempo de ejecucion
Muy bien, entonces el problema es el formato de fecha que estas usando en tu base de datos, para resolver esto deberias usar la funcion ShortDateFormat() ajustandolo a como lo requieres.

Código Delphi [-]
 
ShortDateFormat := 'dd/mm/yyyy';

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #12  
Antiguo 29-12-2007
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
como lo ago me puedo mustar el codigo completo
Responder Con Cita
  #13  
Antiguo 29-12-2007
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Cita:
Empezado por chino150 Ver Mensaje
como lo ago me puedo mustar el codigo completo
Solo coloca el código que te mostré en tu procedimiento, por ejemplo:


Código Delphi [-]
 
procedure TfrmTest.BtnAdmClick(Sender: TObject);
begin
   ShortDateFormat := 'dd/mm/yyyy'; 
   //................
   //...............
end;

el formato depende como lo requiera tu base de datos, asi que podía asignarse cualquier valor

'dd/mm/yyyy'
'mm/dd/yyyy'
'dd.mm.yyyy'

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney

Última edición por egostar fecha: 29-12-2007 a las 22:23:22. Razón: Puse ShortDateString y debia ser ShortDateFormat, :(
Responder Con Cita
  #14  
Antiguo 29-12-2007
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
no commpila muestra este error Undeclared Indentifier ShortDateString


Código Delphi [-]
procedure TfrmTest.BtnAdmClick(Sender: TObject);
begin
ShortDateString := ('dd/mm/yyyy');
qrFondos.close;
qrFondos.SQL.clear;
if (CutBox.checked=false) then begin
qrFondos.sql.add('select * from Ofrendas');
qrFondos.sql.add('where fecha between '+#39+DatetoStr(Cutfecha1.date)+#39+' and '+#39+DatetoStr(Cutfecha2.date)+#39);
Case CutStatus.ItemIndex of
0:qrFondos.sql.add('and Tipo_Recibo ='+#39+'I'+#39);
1:qrFondos.sql.add('and Tipo_Recibo ='+#39+'R'+#39);
end;
qrFondos.open;
QrAdm.cutfecha3.Caption := DatetoStr(cutfecha1.date);
QrAdm.cutfecha4.Caption := DateToStr(CutFecha2.Date);
end;
if (CutBox.checked=true) then begin
qrFondos.sql.add('select * from Ofrendas');
Case CutStatus.ItemIndex of
0:qrFondos.sql.add('where Tipo_Recibo ='+#39+'I'+#39);
1:qrFondos.sql.add('where Tipo_Recibo ='+#39+'R'+#39);
end;
qrFondos.open;
QrAdm.cutfecha3.Caption := DatetoStr(cutfecha1.date);
QrAdm.cutfecha4.Caption := DatetoStr(cutfecha2.date);
end;
begin
QrAdm.preview;
end;
end;
Responder Con Cita
  #15  
Antiguo 29-12-2007
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Perdon, no era ShortDateString, es ShortDateFormat....

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #16  
Antiguo 29-12-2007
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
ok complilo pero coundo se realiza la el reporte sale este error


EDBEngineErrror with message Type mismatch in expression
Responder Con Cita
  #17  
Antiguo 08-02-2008
zurdosoft zurdosoft is offline
Miembro
 
Registrado: may 2005
Ubicación: Villa Maria, Cordoba, Argentina
Posts: 16
Poder: 0
zurdosoft Va por buen camino
Tuve un problema similar con una mdb.
El formato de la base era mm/dd/yyyy y el de delphi (o sistema) dd/mm/yyyy.
Lo solucioné, no se si del todo bien, cargando una variable string con los datos como los queria la base.


Código Delphi [-]
var Fecha:String;
d,m,a:word;
begin
DecodeDate(dtpFecha.Date,a,m,d);
Fecha:=IntToStr(m)+'/'+IntToStr(d)+'/'+IntToStr(a);
Sql.add('SELECT * FROM OrdenCliente WHERE FECHAESTIMADA<#'+Fecha+'# AND Estado Is Null');
end;





Puede que tenga problemas al cambiar de pc con otro formato en el sistema.
Responder Con Cita
  #18  
Antiguo 08-02-2008
Avatar de felipe88
[felipe88] felipe88 is offline
Miembro Premium
 
Registrado: may 2007
Ubicación: Mi Valle del Cauca... Colombia!!!
Posts: 1.120
Poder: 18
felipe88 Va por buen camino
Cita:
Empezado por zurdosoft Ver Mensaje
Tuve un problema similar con una mdb.
El formato de la base era mm/dd/yyyy y el de delphi (o sistema) dd/mm/yyyy.
Lo solucioné, no se si del todo bien, cargando una variable string con los datos como los queria la base.


Código Delphi [-]
var Fecha:String;
d,m,a:word;
begin
DecodeDate(dtpFecha.Date,a,m,d);
Fecha:=IntToStr(m)+'/'+IntToStr(d)+'/'+IntToStr(a);
Sql.add('SELECT * FROM OrdenCliente WHERE FECHAESTIMADA<#'+Fecha+'# AND Estado Is Null');
end;





Puede que tenga problemas al cambiar de pc con otro formato en el sistema.
Con quien hablas..., estas preguntando o respondiendo...
Ya viste la fecha de este hilo... es de hace 2 meses
__________________
Web
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
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
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Consulta Rango de Fechas soloriv SQL 7 23-06-2006 04:02:03
Rango de fechas roberasturias Varios 2 23-05-2005 19:02:35
Consulta de rango de fechas con sql Yanet SQL 2 12-02-2005 03:07:04
Consulta sql con rango de fechas jgutti SQL 5 26-02-2004 19:51:54
Rango de fechas JODELSA Varios 8 22-05-2003 21:45:43


La franja horaria es GMT +2. Ahora son las 15:34:43.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi