Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-01-2016
juanpy70 juanpy70 is offline
Registrado
NULL
 
Registrado: nov 2015
Posts: 7
Poder: 0
juanpy70 Va por buen camino
Question Sql Paradox 7, insertar una fila con total

Estimados,

Recurro a ustedes con una emergencia.

Esta consulta esta realizada en Sql para Paradox 7, y busco y busco resolver, pero ya me es imposible.

Código SQL [-]
    select p.anyo,p.numero,p.version,c.nombre,p.fecharealizacion,p.descripcion,d.descripcion,ls.descripcion,
           ls.cantidad,lc.tipoelemento,lc.unidad,lc.cantidad,ls.cantidad*lc.cantidad as total
      from Proyectp p
inner join Cliente c on p.codigocliente=c.codigo
inner join DesglSp d on p.anyo=d.anyo and p.numero=d.numeroproyecto
       and p.version=d.version
inner join LDesgLsp ls on d.anyo=ls.anyo and d.numeroproyecto=ls.numeroproyecto
       and d.version=ls.version and d.codigocapitulo=ls.codigocapitulo
inner join LDesgCom lc on ls.anyo=lc.anyo and ls.numeroproyecto=lc.numeroproyecto
       and ls.version=lc.version and ls.codigocapitulo=lc.codigocapitulo and ls.linea=lc.lineapartida
     where p.fecharealizacion="21.01.2016"
       and lc.tipoelemento="Operacion"
       and lc.unidad="Horas"





    select " "," "," "," "," "," "," "," "," "," "," "," ",sum(ls.cantidad*lc.cantidad) as total
      from Proyectp p
inner join Cliente c on p.codigocliente=c.codigo
inner join DesglSp d on p.anyo=d.anyo and p.numero=d.numeroproyecto
       and p.version=d.version
inner join LDesgLsp ls on d.anyo=ls.anyo and d.numeroproyecto=ls.numeroproyecto
       and d.version=ls.version and d.codigocapitulo=ls.codigocapitulo
inner join LDesgCom lc on ls.anyo=lc.anyo and ls.numeroproyecto=lc.numeroproyecto
       and ls.version=lc.version and ls.codigocapitulo=lc.codigocapitulo and ls.linea=lc.lineapartida
     where p.fecharealizacion="21.01.2016"
       and lc.tipoelemento="Operacion"
       and lc.unidad="Horas"

Esta consulta luego de generar la muestra, supone la unión de una celda con el resultado de sum(ls.cantidad*lc.cantidad), pero lamentablemente esto no ocurre.

Puede alguien ayudarme?

Muchas gracias
Responder Con Cita
  #2  
Antiguo 22-01-2016
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.037
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
No he entendido nada.
Responder Con Cita
  #3  
Antiguo 22-01-2016
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
De acuerdo con Casimiro..

Tirar un "choclo" o una "ensalada de frutas" para que nosotros lo entendamos y lo resolvamos me resulta hasta ofensivo

Deberias explicar que estructura tiene tu base de datos, que motor usas, que drivers usas para conectarte, que componentes, que informacion necesitas extraer de la base de datos, que consulta estas usando y porque esta mal:

Devuelve resultados que no son, devuelve de mas, filtra mal, ni ejecuta??
Responder Con Cita
  #4  
Antiguo 22-01-2016
juanpy70 juanpy70 is offline
Registrado
NULL
 
Registrado: nov 2015
Posts: 7
Poder: 0
juanpy70 Va por buen camino
Question Sql Paradox 7, insertar una fila con total

Explico:

- DB PARADOX 7 (Ver titulo)
- Tablas implicadas 5
- La consulta publicada genera un muestra de registros que cumplen la condición.
- La idea es generar la consulta
- Luego al final insertar una fila con totales UNION ALL

En la consulta falto la clausula UNION ALL (corregido)

Código SQL [-]
    select p.anyo,p.numero,p.version,c.nombre,p.fecharealizacion,p.descripcion,d.descripcion,ls.descripcion,
           ls.cantidad,lc.tipoelemento,lc.unidad,lc.cantidad,ls.cantidad*lc.cantidad as total
      from Proyectp p
inner join Cliente c on p.codigocliente=c.codigo
inner join DesglSp d on p.anyo=d.anyo and p.numero=d.numeroproyecto
       and p.version=d.version
inner join LDesgLsp ls on d.anyo=ls.anyo and d.numeroproyecto=ls.numeroproyecto
       and d.version=ls.version and d.codigocapitulo=ls.codigocapitulo
inner join LDesgCom lc on ls.anyo=lc.anyo and ls.numeroproyecto=lc.numeroproyecto
       and ls.version=lc.version and ls.codigocapitulo=lc.codigocapitulo and ls.linea=lc.lineapartida
     where p.fecharealizacion="21.01.2016"
       and lc.tipoelemento="Operacion"
       and lc.unidad="Horas"

union all
    select 0,0,0,"","","","","",0,"",0,0,sum(ls.cantidad*lc.cantidad) as total
      from Proyectp p
inner join Cliente c on p.codigocliente=c.codigo
inner join DesglSp d on p.anyo=d.anyo and p.numero=d.numeroproyecto
       and p.version=d.version
inner join LDesgLsp ls on d.anyo=ls.anyo and d.numeroproyecto=ls.numeroproyecto
       and d.version=ls.version and d.codigocapitulo=ls.codigocapitulo
inner join LDesgCom lc on ls.anyo=lc.anyo and ls.numeroproyecto=lc.numeroproyecto
       and ls.version=lc.version and ls.codigocapitulo=lc.codigocapitulo and ls.linea=lc.lineapartida
     where p.fecharealizacion="21.01.2016"
       and lc.tipoelemento="Operacion"
       and lc.unidad="Horas"

Gracias
Responder Con Cita
  #5  
Antiguo 22-01-2016
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.037
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¿Y el problema?
Responder Con Cita
  #6  
Antiguo 22-01-2016
orodriguezca orodriguezca is offline
Miembro
 
Registrado: ene 2009
Posts: 221
Poder: 16
orodriguezca Va por buen camino
No logro entender del todo pero creo que lo que estás pidiendo es un Group By:

Código SQL [-]
    select p.anyo,p.numero,p.version,c.nombre,p.fecharealizacion,p.descripcion,d.descripcion,ls.descripcion,
           ls.cantidad,lc.tipoelemento,lc.unidad,lc.cantidad,ls.cantidad*lc.cantidad as total
      from Proyectp p
inner join Cliente c on p.codigocliente=c.codigo
inner join DesglSp d on p.anyo=d.anyo and p.numero=d.numeroproyecto
       and p.version=d.version
inner join LDesgLsp ls on d.anyo=ls.anyo and d.numeroproyecto=ls.numeroproyecto
       and d.version=ls.version and d.codigocapitulo=ls.codigocapitulo
inner join LDesgCom lc on ls.anyo=lc.anyo and ls.numeroproyecto=lc.numeroproyecto
       and ls.version=lc.version and ls.codigocapitulo=lc.codigocapitulo and ls.linea=lc.lineapartida
     where p.fecharealizacion="21.01.2016"
       and lc.tipoelemento="Operacion"
       and lc.unidad="Horas"

union all
    select 0,0,0,"","","","","",0,"",0,0,sum(ls.cantidad*lc.cantidad) as total
      from Proyectp p
inner join Cliente c on p.codigocliente=c.codigo
inner join DesglSp d on p.anyo=d.anyo and p.numero=d.numeroproyecto
       and p.version=d.version
inner join LDesgLsp ls on d.anyo=ls.anyo and d.numeroproyecto=ls.numeroproyecto
       and d.version=ls.version and d.codigocapitulo=ls.codigocapitulo
inner join LDesgCom lc on ls.anyo=lc.anyo and ls.numeroproyecto=lc.numeroproyecto
       and ls.version=lc.version and ls.codigocapitulo=lc.codigocapitulo and ls.linea=lc.lineapartida
     where p.fecharealizacion="21.01.2016"
       and lc.tipoelemento="Operacion"
       and lc.unidad="Horas"
Group by p.anyo,p.numero,p.version,c.nombre,p.fecharealizacion,p.descripcion,d.descripcion,ls.descripcion,
           ls.cantidad,lc.tipoelemento,lc.unidad,lc.cantidad
Responder Con Cita
  #7  
Antiguo 22-01-2016
juanpy70 juanpy70 is offline
Registrado
NULL
 
Registrado: nov 2015
Posts: 7
Poder: 0
juanpy70 Va por buen camino
Le reitero:

- Necesito generar la consulta (primera parte antes de Union all (OK))
- Necesito insertar al final de la cuadriculatura, una fila con el total (sum(ls.cantidad*lc.cantidad) as total) (segunda parte después de Union All (falla))

Gracias
Responder Con Cita
  #8  
Antiguo 22-01-2016
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.037
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por juanpy70 Ver Mensaje
Le reitero:
- Necesito generar la consulta (primera parte antes de Union all (OK))
- Necesito insertar al final de la cuadriculatura, una fila con el total (sum(ls.cantidad*lc.cantidad) as total) (segunda parte después de Union All (falla))
Puedes reiterar todo lo que quieras, pero no dices qué problema tienes, qué error da, qué quieres conseguir exactamente, no dices qué falla, no se entiende eso de "insertar al final de la cuadriculatura", etc. etc. etc.
Responder Con Cita
  #9  
Antiguo 22-01-2016
orodriguezca orodriguezca is offline
Miembro
 
Registrado: ene 2009
Posts: 221
Poder: 16
orodriguezca Va por buen camino
Releyendo y tratando de entender:

1. Ok, el group by que sugerí previamente no va; en principio la consulta estaría bien (de acuerdo a lo que entiendo).
2. Como no nos dices en que forma falla (mensaje de error,datos errados, etc) me limito a indicar que en una unión SQL los tipos de datos de cada una de las columnas de las dos consultas tiene que ser consistentes; en particular verifica el tipo de datos de la columna p.fecharealizacion, quizas sea tipo Date y no char . Tal vez en ves de

Código SQL [-]
select 0,0,0,"","","","","",0,"",0,0,sum(ls.cantidad*lc.cantidad) as total

tengas que escribir algo como
Código SQL [-]
select 0,0,0,"","01.01.1900","","","",0,"",0,0,sum(ls.cantidad*lc.cantidad) as total

EDITO: También puede estar ocurriendo que en 0,0,0,""... Paradox este interpretando un punto decimal. Mejor escribir 0, 0, ', "", ...

Última edición por orodriguezca fecha: 22-01-2016 a las 22:11:39.
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
Error al insertar una fila en un ADOTable david.rguez Conexión con bases de datos 3 15-03-2011 10:32:57
Insertar una fila en excel cacu OOP 1 03-07-2008 21:06:32
Alto fila par insertar texto de un Memo Minio OOP 4 22-11-2007 19:39:51
Insertar en fila determinada el_barto Varios 6 15-08-2006 16:04:26
No mostrar fila en Grid al insertar Muten Varios 7 03-02-2004 12:58:02


La franja horaria es GMT +2. Ahora son las 09:02:31.


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