Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Cómo mostrar el resultado de un select en un textbox

Estas en el tema de Cómo mostrar el resultado de un select en un textbox en el foro de Visual Basic clásico en Foros del Web. Bien ahora tengo un problema de programación, resulta que ejecuto un query en mysql y si me funciona lo que no se es como mostrar ...
  #1 (permalink)  
Antiguo 04/07/2008, 23:00
 
Fecha de Ingreso: abril-2008
Mensajes: 51
Antigüedad: 16 años
Puntos: 0
Exclamación Cómo mostrar el resultado de un select en un textbox

Bien ahora tengo un problema de programación, resulta que ejecuto un query en mysql y si me funciona lo que no se es como mostrar el resultado de mi query en un txtbox, estoy desarrolando con visual basic 6 y mi motor de base de datos es mysql 5, mi query es asi:

select idpago, detallepago.idrubros, sum (monto) as total from detallepago, rubros where detallepago.idpago = ' " & frmpagos.txtidpago.text &"' and detallepagos.idrubros = rubros.idrubros group by idpago.

solo deseo mostrar en el textbox el resultado de la suma del campo monto.

Gracias por sus comentarios y ayuda.........
  #2 (permalink)  
Antiguo 05/07/2008, 00:24
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Respuesta: Cómo mostrar el resultado de un select en un textbox

Cita:
Iniciado por wolfxmen Ver Mensaje
Bien ahora tengo un problema de programación, resulta que ejecuto un query en mysql y si me funciona lo que no se es como mostrar el resultado de mi query en un txtbox, estoy desarrolando con visual basic 6 y mi motor de base de datos es mysql 5, mi query es asi:

select idpago, detallepago.idrubros, sum (monto) as total from detallepago, rubros where detallepago.idpago = ' " & frmpagos.txtidpago.text &"' and detallepagos.idrubros = rubros.idrubros group by idpago.

solo deseo mostrar en el textbox el resultado de la suma del campo monto.

Gracias por sus comentarios y ayuda.........
¿El query se lo aplicas a un recordset, no?, pues solamente tienes que poner a continuación esta instrucción:

TxtTotal.Text = recordset!total


  #3 (permalink)  
Antiguo 05/07/2008, 12:04
 
Fecha de Ingreso: abril-2008
Mensajes: 51
Antigüedad: 16 años
Puntos: 0
Respuesta: Cómo mostrar el resultado de un select en un textbox

Gracias por tu apoyo Avellaneda, te voy a colocar todo el código que he escrito para que te des una idea de como esta:

Private Sub cmdpago_Click()
Set rssuma = New ADODB.Recordset

With rssuma
.ActiveConnection = con
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.LockType = adLockOptimistic
.Open ("select idpago, detallepago.idrubros, sum(monto)as total from detallepago, rubros where detallepago.idpago= '" & frmpagos.txtidpago.Text & "' and detallepago.idrubros = rubros.idrubros group by idpago")
If Not rssuma.EOF Then rssuma.MoveFirst
While Not rssuma.EOF
' aqui accedes al recordset y sacas los campos q te interesen
monto = rssuma!total
frmpagos.txttotal.Text = rssuma!total
Wend

End With

End Sub

si coloco solo el frmpagos.txttotal.text = rssuma!total sin el codigo de If Not rssuma.EOF Then rssuma.MoveFirst
While Not rssuma.EOF
, me da un mesaje de error el cual dice: Error 3021 en tiempo de ejecución:
el valor de BOF o de EOF es true, o el actual registro se eliminó, la operación solicitada requiere un registro actual.

Cabe mencionar que total no es un campo de mi tabla no se si eso este dando problema?

El evento que mostrará el contenido del select en el textbox es un boton al que el usuario hará click, pero por el momento si hago click en el boton no realiza ninguna acción, ni siquiera me da un mensaje de error.....

Gracias por tu ayuda en este caso.

Última edición por wolfxmen; 05/07/2008 a las 12:16
  #4 (permalink)  
Antiguo 06/07/2008, 08:38
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Respuesta: Cómo mostrar el resultado de un select en un textbox

Cita:
Iniciado por wolfxmen Ver Mensaje
Gracias por tu apoyo Avellaneda, te voy a colocar todo el código que he escrito para que te des una idea de como esta:

Private Sub cmdpago_Click()
Set rssuma = New ADODB.Recordset

With rssuma
.ActiveConnection = con
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.LockType = adLockOptimistic
.Open ("select idpago, detallepago.idrubros, sum(monto)as total from detallepago, rubros where detallepago.idpago= '" & frmpagos.txtidpago.Text & "' and detallepago.idrubros = rubros.idrubros group by idpago")
If Not rssuma.EOF Then rssuma.MoveFirst
While Not rssuma.EOF
' aqui accedes al recordset y sacas los campos q te interesen
monto = rssuma!total
frmpagos.txttotal.Text = rssuma!total
Wend

End With

End Sub

si coloco solo el frmpagos.txttotal.text = rssuma!total sin el codigo de If Not rssuma.EOF Then rssuma.MoveFirst
While Not rssuma.EOF
, me da un mesaje de error el cual dice: Error 3021 en tiempo de ejecución:
el valor de BOF o de EOF es true, o el actual registro se eliminó, la operación solicitada requiere un registro actual.

Cabe mencionar que total no es un campo de mi tabla no se si eso este dando problema?

El evento que mostrará el contenido del select en el textbox es un boton al que el usuario hará click, pero por el momento si hago click en el boton no realiza ninguna acción, ni siquiera me da un mensaje de error.....

Gracias por tu ayuda en este caso.
Hola, comprueba que la propiedad RecordCount del recordset esté devolviendo algún valor, porque quizá la consulta no esté bien estructurada (pienso que deberías hacer un INNER JOIN).

"total" pasa a ser como un campo de la tabla, ya que se lo estás asignando a la suma del campo "monto"

  #5 (permalink)  
Antiguo 08/07/2008, 19:45
 
Fecha de Ingreso: abril-2008
Mensajes: 51
Antigüedad: 16 años
Puntos: 0
Respuesta: Cómo mostrar el resultado de un select en un textbox

De acuerdo revisaré de acuerdo a tu sugerencia, Gracias por la ayuda.
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 08:26.