Zona HTML Zona Java Zona PHP Zona ASP Zona Bases de datos
Inicio > Foros > Visual Basic > Combos y sql
-Foros de debate

Visual Basic
Lista de foros | Lista de mensajes de este foro

Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.

Combos y sql
Enviado por Hernán(5) el día 9 de octubre de 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 ;)

 
Re: Combos y sql
Enviado por Baltasar el día 10 de octubre de 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

 


Tienda
Patrocinados
 

Copyright © 1999-2006 Programación en castellano. Todos los derechos reservados.
Formulario de Contacto - Datos legales - Publicidad

Hospedaje web y servidores dedicados linux por Ferca Network