maldita consulta!

telemaco
22 de Febrero del 2005
Me he dado por vencido. Tengo un error con una consulta y después de pasarme el día entero leyéndome el foro y preguntándole al amigo google... ya no puedo más. Os pido ayuda a ver si vosotros veis dónde está el error.
El caso es el siguiente. Tengo una conexión ADO a una BD Access y un recordset declarado y creado (set rs = new adodb.recordset). Ahora bien, ese recordset lo voy a abrir con diferentes consultas SQL a la BD. La perimera de las consultas me funciona y es la siguiente:
consulta = "select nombre, sum(cantidad), format(sum(importe),\'###0.00\') from ventas_dia " _
& "inner join productos on productos.cod_pro = ventas_dia.cod_pro " _
& "where productos.cod_pro = ventas_dia.cod_pro " _
& "group by nombre"
Hasta aquí todo bien, cuando abro el recorset va todo bien.
El problema es cuando quiero "afinar" un poco más esa consulta. La consulta anterior me mostrará todos los artículos vendidos hoy. Me saca por cada artículo, cuántas unidades se han vendido y el importe que ello supone.
Lo siguiente que quiero hacer es que me muestre esa información pero solo de un grupo de productos. La tabla de productos tiene un campo \'tipo\' donde guardo la categoría a la que pertence cada uno. Así pues, la siguiente consulta debería darme la misma información, pero solo de los productos que son \'Refrescos\':
cslt_refrescos = "select nombre, sum(cantidad), format(sum(importe),\'###0.00\') from ventas_dia " _
& "inner join productos on productos.cod_pro = ventas_dia.cod_pro " _
& "where productos.cod_pro = ventas_dia.cod_pro And productos.tipo = \'Refrescos\' " _
& "group by nombre"
El problema está en que ésta consulta me da el siguiente error:
"Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another."
Por supuesto, el campo \'productos.tipo\' es de texto y puede recibir 20 caracteres.
Así pues.. a ver si podeis echarme un cable porque una tontería como ésta me está volviendo loco

Muchas gracias a [email protected]