Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-10-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 24
enecumene Va por buen camino
Hola, al parecer he logrado hacer el objetivo, basandome en el ejemplo de ContraVeneno, lo he adaptado en una consulta en mysql, ahi les va, lo probe en el servidor y me arrojo resultados:

Código SQL [-]
SELECT CASACOMERCIAL, FACTURA, 
(SELECT DATEDIFF(CURDATE(),FECHAFACTURA) < 30)  AS MES1, 
(SELECT DATEDIFF(CURDATE(),FECHAFACTURA) BETWEEN 31 AND 45) AS MES2, 
(SELECT DATEDIFF(CURDATE(),FECHAFACTURA) BETWEEN 46 AND 60) AS MES3, 
(SELECT DATEDIFF(CURDATE(),FECHAFACTURA) BETWEEN 61 AND 90) AS MES4, 
(SELECT DATEDIFF(CURDATE(),FECHAFACTURA) BETWEEN 91 AND 120) AS MES5,
(SELECT DATEDIFF(CURDATE(),FECHAFACTURA) > 120) AS MES6 FROM TABLA2

Espero criticas .

Saludos.

PD. Gracias a ContraVeneno sin su ejemplo no hubiera conocido la funcion DATEDIFF.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #2  
Antiguo 16-10-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 24
enecumene Va por buen camino
Hombre, que va, la consulta funciona pero no como me lo esperaba porque me arroja puros unos, y a mi me gustaria que el valor de la factura cayera en el rango, ejemplo del resultado:





Saludos
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #3  
Antiguo 16-10-2007
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.740
Poder: 26
ContraVeneno Va por buen camino
Código SQL [-]
Select F.CasaComercial, F.Factura,
case when datediff(F.FechaFactura, CurDate()) <30 then F.Monto else 0 end as dias30,
case when datediff(F.FechaFactura, Curdate()) between 31 and 45 then F.Monto else 0 end as dias45,
case when datediff(F.FechaFactura, Curdate()) between 46 and 60 then F.Monto else 0 end as dias60,
case when datediff(F.FechaFactura, CurDate()) >60 then F.Monto else 0 end as masdias60
From Tabla2 F

Pruébalo así en MySQL a ver si mis suposiciones son ciertas... El campo F.Monto deberá ser el campo donde guardas la cantidad que quieres ver.
__________________


Última edición por ContraVeneno fecha: 16-10-2007 a las 15:40:40.
Responder Con Cita
  #4  
Antiguo 16-10-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 24
enecumene Va por buen camino
Hola ContraVeneno, Mira lo que me sale:

Cita:
Error

consulta SQL:
SELECT CASACOMERCIAL, FACTURA,
CASE WHEN datediff( FECHAFACTURA, CurDate( ) ) <30
THEN VALOR
ELSE 0
END AS dias30,
CASE WHEN datediff( FECHAFACTURA, Curdate( ) )
BETWEEN 31
AND 45
THEN VALOR
ELSE 0
END AS dias45,
CASE WHEN datediff( FECHAFACTURA, Curdate( ) )
BETWEEN 46
AND 60
THEN VALOR
ELSE 0
END AS dias60,
CASE WHEN datediff( FECHAFACTURA, CurDate( ) ) >60
THEN VALOR
ELSE 0
END AS masdias60,
FROM TABLA2
LIMIT 0 , 30
MySQL ha dicho:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'From TABLA2
LIMIT 0, 30' at line 1
Saludos
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #5  
Antiguo 16-10-2007
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.740
Poder: 26
ContraVeneno Va por buen camino
me sobra la coma después del nombre del campo "masdias60".

No debería existir ninguna coma antes del "FRom"
__________________

Responder Con Cita
  #6  
Antiguo 16-10-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 24
enecumene Va por buen camino
Hombre me funciono perfecto, no se como agradecerle solo tengo por el momento un GRACIAS grandote.

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #7  
Antiguo 16-10-2007
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.740
Poder: 26
ContraVeneno Va por buen camino
que bueno que funcionó, ahora me queda una duda:
En el primer case, revisamos todas las que sean menores a 30 (aquí tal vez debería ser "<="), en el segundo case revisamos las que sean de 31 a 45 días, me queda la duda de que si en el primer case, no colocamos un "menor o igual", aquellas facturas que sean exactamente de 30 días, no sean consideradas.

En pocas palabras, debería ser algo como:

Código SQL [-]
case when datediff(F.FechaFactura, CurDate()) <=30 then F.Monto else 0 end as dias30,
case when datediff(F.FechaFactura, Curdate()) between 31 and 45 then F.Monto else 0 end as dias45,
__________________

Responder Con Cita
  #8  
Antiguo 16-10-2007
Avatar de Ivanzinho
[Ivanzinho] Ivanzinho is offline
Miembro Premium
 
Registrado: ene 2005
Ubicación: Galicia
Posts: 595
Poder: 22
Ivanzinho Va por buen camino
Borrado por responder tarde
__________________
Si no lees esto no vivirás tranquilo
Non lle poñades chatas â obra namentras non se remata. O que pense que vai mal que traballe n’ela; hai sitio para todos. (Castelao)

Última edición por Ivanzinho fecha: 16-10-2007 a las 15:58:34.
Responder Con Cita
  #9  
Antiguo 16-10-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 24
enecumene Va por buen camino
Cita:
Empezado por Ivanzinho Ver Mensaje
Borrado por responder tarde
Gracias Ivanzinho, de todos modos te lo agradezco, lo que vale es la intencion.

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
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
Tabla de Facturas vs Detalles de Facturas magnu9 Conexión con bases de datos 9 27-07-2007 17:27:37
como hacerlo?¿ tiagor64 Conexión con bases de datos 4 09-02-2005 15:55:04
Cómo hacerlo ... Jordy Conexión con bases de datos 2 19-08-2004 10:21:39
Campos calculados, facturas y detalles de facturas. Letty Conexión con bases de datos 7 07-11-2003 11:19:44
No se como hacerlo apolo18 Impresión 4 19-05-2003 23:13:27


La franja horaria es GMT +2. Ahora son las 23:19:04.


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