Club Delphi  
    Paypal   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

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-03-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Yo no entiendo, dices, "tengo esta consulta", pero en realidad ¡tienes ocho! ¿Fallan todas? ¿No podríamos concentrarnos en una sóla?

// Saludos
Responder Con Cita
  #2  
Antiguo 02-03-2007
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.964
Poder: 29
delphi.com.ar Va camino a la fama
Cita:
Empezado por roman
Yo no entiendo, dices, "tengo esta consulta", pero en realidad ¡tienes ocho! ¿Fallan todas? ¿No podríamos concentrarnos en una sóla?
Por eso mismo me abstuve de responder..

Hay algo a tener en cuenta, en Access es algo riesgoso trabajar con fechas con el formato #fecha#, porque Access se encarga de convertir el formato automáticamente, y para el motor: #1/31/2007# = #31/1/2007# porque se encarga automáticamente de convalidar el formato. Prueba:
Código SQL [-]
SELECT #1/31/2007#, #31/1/2007#
Entonces si trabajamos con ese formato, no será seguro que hará con fechas donde el día sea menor a 12. (Esto lo resuelve según la configuración regional)

Entonces las opciones mas seguras son utilizar bind parameters, o utilizar alguna función como DateSerial, donde el orden de los parámetros no cambia:
Código SQL [-]
SELECT ..
WHERE FECHA = DateSerial(2007,1,31)

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #3  
Antiguo 02-03-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
¡Válgame! ¿Hay algo en lo que access sea estándar? Tiene total lógica lo que dices, el 1 de marzo daría problemas y no así el 28 de febrero. Ahora pregunto, si pasas las fechas con parámetros, ¿si funciona?

// Saludos
Responder Con Cita
  #4  
Antiguo 02-03-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
No se Roman, Como lo hago?
Me das un ejemplo en un caso.
Por otro lado, cambie la sintaxis y sigue, asi:
Código Delphi [-]
ShortDateFormat := '#dd/mm/yyyy#';
   ADOQuery1.Active:= False;
   ADOQuery1.SQL.Text:= 'SELECT DISTINCTROW Factura.Fecha, Factura.Terminos, Sum(Factura.MntTotal) AS SumaDeMntTotal '+
                        ' FROM Factura '+
                        ' WHERE Factura.Fecha = '+DateToStr(DTP1.DateTime)+' AND Factura.Terminos = "Contado" '+
                        ' GROUP BY Factura.Fecha, Factura.Terminos ';
    ADOQuery1.Active:= True;
Saludos
Responder Con Cita
  #5  
Antiguo 02-03-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.070
Poder: 32
jhonny Va camino a la famajhonny Va camino a la fama
Supongo que deberia ser algo como:

Código Delphi [-]
   ShortDateFormat := 'dd/mm/yyyy';
   ADOQuery1.Active:= False;
   ADOQuery1.SQL.Clear;   
   ADOQuery1.SQL.Add := 'SELECT DISTINCTROW Factura.Fecha, Factura.Terminos,';
   ADOQuery1.SQL.Add := 'Sum(Factura.MntTotal) AS SumaDeMntTotal ';
   ADOQuery1.SQL.Add := 'FROM Factura ';
   ADOQuery1.SQL.Add := 'WHERE Factura.Fecha = :fecha AND Factura.Terminos = "Contado" ';
   ADOQuery1.SQL.Add := 'GROUP BY Factura.Fecha, Factura.Terminos ';
   ADOQuery1.ParamByName('fecha').AsDateTime := DateTimePicker1.Date; //Donde DateTimePicker1. 
                                                      //es un ejemplo de un componente que asumo se llame asi
   ADOQuery1.Active:= True;

Edite: para organizar un poco a ver si se ve mejor.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/

Última edición por jhonny fecha: 02-03-2007 a las 22:22:29.
Responder Con Cita
  #6  
Antiguo 02-03-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
No, no. Pensé lo mismo. Pero ADO maneja distinto los parámetros. Deja reviso.

// Saludos
Responder Con Cita
  #7  
Antiguo 02-03-2007
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 26
vtdeleon Va por buen camino
Saludos

Solo cambiar y agregar algo:
Código Delphi [-]
ADOQuery1.Parameter.ParamByName('fecha').value := DateTimePicker1.Date; //Donde DateTimePicker1. 
ADOQuery1.Parameter.ParamByName('fecha').DataType:=ftDate
Ado muchas veces no convierte el parametro al tipo de dato que deberia ser.
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!

Última edición por vtdeleon fecha: 02-03-2007 a las 22:45:09.
Responder Con Cita
  #8  
Antiguo 02-03-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola
Asi:
Código Delphi [-]
ShortDateFormat := 'dd/mm/yyyy';
   ADOQuery1.Active:= False;
   ADOQuery1.SQL.Text:= 'SELECT DISTINCTROW Factura.Fecha, Factura.Terminos, Sum(Factura.MntTotal) AS SumaDeMntTotal '+
                        ' FROM Factura '+
                        ' WHERE Factura.Fecha = :Fecha AND Factura.Terminos = "Contado" '+
                        ' GROUP BY Factura.Fecha, Factura.Terminos ';
    ADOQuery1.Active:= True;
    ADOQuery1.Parameters[0].Value:= StrToDate(DateToStr(DTP1.Date));
Me funciono en este primero.
Curioso me ve el dia 2, no el dia 1
Saludos
Responder Con Cita
  #9  
Antiguo 02-03-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.070
Poder: 32
jhonny Va camino a la famajhonny Va camino a la fama
Caramba¡¡¡, ya recuerdo porque acces nunca me a llamado la atención.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
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
problema extraño con ciclo for Johnny Q OOP 4 18-11-2006 21:27:46
Problema extraño con showmodal =S Ken_Masters Varios 3 15-11-2006 01:57:11
Problema extraño en FireBird Sick boy Firebird e Interbase 4 20-10-2006 12:39:54
Problema extraño con imagen en PDF (Rave) RaulRuiz Impresión 0 12-05-2006 21:20:53
Extraño problema con Quick Report cone220 Impresión 3 13-05-2004 16:29:11


La franja horaria es GMT +2. Ahora son las 13:46:44.


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