Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Error en consulta con base de datos Acces

Estas en el tema de Error en consulta con base de datos Acces en el foro de Bases de Datos General en Foros del Web. Buenas, recurro a ustedes para que me den una mano. Tengo una consulta que estoy ejecutando desde Visual Basic 6.0 y me da el siguiente ...
  #1 (permalink)  
Antiguo 28/03/2011, 06:09
 
Fecha de Ingreso: marzo-2011
Mensajes: 75
Antigüedad: 13 años, 10 meses
Puntos: 6
Pregunta Error en consulta con base de datos Acces

Buenas, recurro a ustedes para que me den una mano.
Tengo una consulta que estoy ejecutando desde Visual Basic 6.0 y me da el siguiente error:

"Ha intentado ejecutar una consulta que no incluye la expresion especificada 'Id' como parte de una fuincion de agregado"

La consulta que tengo es la siguiente:

rs.Open "SELECT Id,Codigo_Tabla,Nombre_Tabla,Medida_Tabla,Cantidad ,Nro_Factura,Codigo_Contable,Importe,Importe_Iva,S UM([Importe] + [Importe_Iva]) AS Importe_Total FROM Linea_Factura ", cnn, adOpenStatic, adLockOptimistic

Es un select simple para que me liste las facturas, hago la sumatoria de los campos importe e importe_iva para que me de el importe total. Pero no me doy cuenta donde es que esta el error.

Gracias.
  #2 (permalink)  
Antiguo 28/03/2011, 06:30
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 4 meses
Puntos: 774
Respuesta: Error en consulta con base de datos Acces

SELECT Id,Codigo_Tabla,Nombre_Tabla,Medida_Tabla,Cantidad ,Nro_Factura,Codigo_Contable,Importe,Importe_Iva,S UM([Importe] + [Importe_Iva]) AS Importe_Total FROM Linea_Factura group by Id,Codigo_Tabla,Nombre_Tabla,Medida_Tabla,Cantidad ,Nro_Factura,Codigo_Contable

Prueba asi :)
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 28/03/2011, 06:45
 
Fecha de Ingreso: marzo-2011
Mensajes: 75
Antigüedad: 13 años, 10 meses
Puntos: 6
Respuesta: Error en consulta con base de datos Acces

Me da otro error, por lo menos es otro distinto y no el que veo hace 2 dias ja.

Error de sintaxis(falta operador) en la expresion de consulta 'SUM([Importe]+[Importe_iva])'.
  #4 (permalink)  
Antiguo 28/03/2011, 06:58
Avatar de Heimish2000  
Fecha de Ingreso: enero-2011
Ubicación: Madrid
Mensajes: 844
Antigüedad: 14 años
Puntos: 89
Respuesta: Error en consulta con base de datos Acces

Si pones SUM no pongas el + dentro, seria SUM(campo1, campo2) aunque creo que vale tambien campo1 + campo2
  #5 (permalink)  
Antiguo 28/03/2011, 07:21
 
Fecha de Ingreso: marzo-2011
Mensajes: 75
Antigüedad: 13 años, 10 meses
Puntos: 6
Respuesta: Error en consulta con base de datos Acces

Encontre lo que era ese error. Pero me sigue tirando el mismo error que al principop solo que ahora en vez de marcarme el 'id' me marca el importe.
Gracias
  #6 (permalink)  
Antiguo 28/03/2011, 07:51
Avatar de Taribo007  
Fecha de Ingreso: agosto-2007
Mensajes: 1.338
Antigüedad: 17 años, 4 meses
Puntos: 18
Respuesta: Error en consulta con base de datos Acces

Y cual es la sentencia Sql que tienes ahora mismo, y que error te da?? Con los cambios que habras hecho ya me he perdido

un saludo
  #7 (permalink)  
Antiguo 28/03/2011, 08:08
 
Fecha de Ingreso: marzo-2011
Mensajes: 75
Antigüedad: 13 años, 10 meses
Puntos: 6
Respuesta: Error en consulta con base de datos Acces

La sentencia que tengo ahora es la siguiente:

SELECT Id,Codigo_Tabla,Nombre_Tabla,Medida_Tabla,Cantidad ,Nro_Factura,Codigo_Contable,Importe,Importe_Iva,S UM([Importe] + [Importe_Iva]) AS Importe_Total FROM Linea_Factura group by Id,Codigo_Tabla,Nombre_Tabla,Medida_Tabla,Cantidad ,Nro_Factura,Codigo_Contable

Y el error que me da es:
"Ha intentado ejecutar una consulta que no incluye la expresion especificada 'Importe' como parte de una fuincion de agregado"

Saludos
  #8 (permalink)  
Antiguo 28/03/2011, 08:21
Avatar de Taribo007  
Fecha de Ingreso: agosto-2007
Mensajes: 1.338
Antigüedad: 17 años, 4 meses
Puntos: 18
Respuesta: Error en consulta con base de datos Acces

Asi no te va a da error, pero dudo que consigas lo que pretendes, has de incluir en el group by los campos que quieras mostrar en el select:


SELECT Id,Codigo_Tabla,Nombre_Tabla,Medida_Tabla,Cantidad ,Nro_Factura,Codigo_Contable,Importe,Importe_Iva,S UM([Importe] + [Importe_Iva]) AS Importe_Total FROM Linea_Factura group by Id,Codigo_Tabla,Nombre_Tabla,Medida_Tabla,Cantidad ,Nro_Factura,Codigo_Contable,Importe,Importe_Iva

Un saludo
  #9 (permalink)  
Antiguo 28/03/2011, 08:41
 
Fecha de Ingreso: marzo-2011
Mensajes: 75
Antigüedad: 13 años, 10 meses
Puntos: 6
Respuesta: Error en consulta con base de datos Acces

Gracias por la respuesta. Como me recomendarias entonces que lo hiciera? Lo que quiero es sumar los campos importe e importe_iva para obtener el importe_total.
Ya vi lo que me decías. en vez de sumar los valores me los esta concatenando.
  #10 (permalink)  
Antiguo 28/03/2011, 09:15
 
Fecha de Ingreso: marzo-2011
Mensajes: 75
Antigüedad: 13 años, 10 meses
Puntos: 6
Respuesta: Error en consulta con base de datos Acces

Solucionado. Los campos en la base de datos estaban como texto y no como numero.
Gracias a todos por su ayuda.
  #11 (permalink)  
Antiguo 28/03/2011, 11:04
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 4 meses
Puntos: 774
Respuesta: Error en consulta con base de datos Acces

what?????????
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #12 (permalink)  
Antiguo 29/03/2011, 01:56
Avatar de Taribo007  
Fecha de Ingreso: agosto-2007
Mensajes: 1.338
Antigüedad: 17 años, 4 meses
Puntos: 18
Respuesta: Error en consulta con base de datos Acces

Se refiere a que los campos, al ser de tipo texto, el + lo usa como concatenador, como el &, no suma los datos, cosa que si hace al ser de tipo numerico, o si hubiera hecho una conversion

Un saludo

Etiquetas: bases-de-datos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:46.