Combos y sql

Hern?5)
10 de Octubre del 2008
Hola, tengo un problema... Tengo 2 DataCombos para hacer un ingreso de stock, en 1 elijo el producto, que lo busca en una base de datos a traves de sql, en el otro DataCombo, en el evento click, hago que busque la presentación del producto seleccionado anteriormente... les pongo el código que estoy utilizando, y que me tira error ya en la primera busqueda (que no está mal hecha)...

Private Sub Form_Load()
Set rstdcproducto = New ADODB.Recordset
Set rstdcpresentacion = New ADODB.Recordset

With rstdcproducto
.CursorLocation = adUseClient
.CursorType = adOpenStatic
.LockType = adLockPessimistic
End With

With rstdcpresentacion
.CursorLocation = adUseClient
.CursorType = adOpenStatic
.LockType = adLockPessimistic
End With

f rstdcproducto.State = adStateOpen Then rstdcproducto.Close

rstdcproducto.Open \"SELECT pro_desc, pro_id FROM Productos GROUP by pro_desc\", cnn

With dcproducto
Set .RowSource = rstdcproducto
.ListField = \"pro_desc\"
.DataField = \"pro_desc\"
.BoundColumn = \"pro_id\"
Set .DataSource = rstdcproducto
End With

End Sub
-----------------------------------------------------------------------------
Private Sub dcpresentacion_Click(Area As Integer)

If rstdcpresentacion.State = adStateOpen Then rstdcpresentacion.Close

id=dcproducto.BoundText

rstdcpresentacion.Open \"SELECT pro_pres, pro_id FROM Productos WHERE pro_id=\" & id & \" GROUP by pro_desc\", cnn

With dcpresentacion
Set .RowSource = rstdcpresentacion
.ListField = \"pro_pres\"
.DataField = \"pro_pres\"
.BoundColumn = \"pro_id\"
Set .DataSource = rstdcpresentacion
End With

End Sub

la coneccion \"cnn\" la tengo hecha en el form MDI y esta todo dimensionado en un modulo...

No se porque no anda... asi como esta me tira el siguiente error... \"Ha intentado ejecutar una consulta que no incluye la expresión especificada \\'pro_id\\' como parte de una función de agregado\"

a ver si me ayudan a ver porque no funciona... gracias ;)

Baltasar
10 de Octubre del 2008
el problema es que estás usando GROUP pero no agrupas con todos los campos que solicitas.

Ha spuesto esto:
rstdcpresentacion.Open \"SELECT pro_pres, pro_id FROM Productos WHERE pro_id=\" & id & \" GROUP by pro_desc\", cnn

y debiste poner:

rstdcpresentacion.Open \"SELECT pro_pres, pro_id FROM Productos WHERE pro_id=\" & id & \" GROUP by pro_desc, pro_id\", cnn

Saludos