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

cargar desde un datapicker un listview con datos de un bd

Estas en el tema de cargar desde un datapicker un listview con datos de un bd en el foro de Visual Basic clásico en Foros del Web. Buenos dias colegas, Tengo en un form un list view y un datapicker, el cual deseo que al seleccionar la fecha en el datapicker me ...
  #1 (permalink)  
Antiguo 15/05/2012, 09:56
 
Fecha de Ingreso: abril-2012
Ubicación: Caracas
Mensajes: 22
Antigüedad: 12 años, 8 meses
Puntos: 1
cargar desde un datapicker un listview con datos de un bd

Buenos dias colegas,

Tengo en un form un list view y un datapicker, el cual deseo que al seleccionar la fecha en el datapicker me traiga en el listview la tabla de la bse de datos justo de la fecha seleccionada, hasta los momentos esto es lo que tengo

Private Sub Form_Load()
Dim rs As New ADODB.Recordset
Dim sql As String
Dim i As Integer
Dim DIA


DIA = Format(DTPicker1.Value, "DD/MM/YYYY")

Label1.Caption = USUARIO_ACTUAL_NAME

' Eliminar las cabeceras
Lst_consulta_sms.ColumnHeaders.Clear
'
' Asignar las cabeceras

With Lst_consulta_sms.ColumnHeaders.Add(, , "status", 1500)

End With
With Lst_consulta_sms.ColumnHeaders.Add(, , "Emisor", 500)

End With
With Lst_consulta_sms.ColumnHeaders.Add(, , "Nombre", 2000)

End With
With Lst_consulta_sms.ColumnHeaders.Add(, , "Telefono", 2400)

End With

With Lst_consulta_sms.ColumnHeaders.Add(, , "Mensaje", 2400, lvwColumnRight)

End With
With Lst_consulta_sms.ColumnHeaders.Add(, , "Fecha", 2400, lvwColumnRight)

End With
With Lst_consulta_sms.ColumnHeaders.Add(, , "Hora", 2400, lvwColumnRight)

End With
With Lst_consulta_sms.ColumnHeaders.Add(, , "Maquina", 1000, lvwColumnRight)

End With


TIPO_EVENTO = 1

g_db.Open "driver={SQL Server};server=SERVIDOR2;uid=profit;pwd=profit;dat abase=Prueba1"

'-- llena el combo de Usuarios
sql = "select Status_envio, Emisor, persona_envio, Numeros_envio, Texto_envio, fecha_envio, hora_envio, pc from persona_enviados "


sqlfilter = "fecha_envio = convert(datetime,' " & DIA & " ', 103)"

If Len(sqlfilter) > 0 Then sqlfilter = " where " & sqlfilter '& " Order by ID "
'-- ejecuta la consulta
sql = sql & sqlfilter
rs.Open sql, g_db, adOpenKeyset



''' SE RECORRE
Do While Not rs.EOF

If Not IsNull(rs.Fields.Item(0).Value) Then


With Lst_consulta_sms.ListItems.Add(, , rs.Fields.Item(0).Value)
' Cada subitem debe corresponder con cada una de las cabeceras
' la segunda cabecera es el Subitems(1) y así sucesivamente
.SubItems(1) = rs.Fields.Item(1).Value
.SubItems(2) = rs.Fields.Item(2).Value
.SubItems(3) = rs.Fields.Item(3).Value
.SubItems(4) = rs.Fields.Item(4).Value
.SubItems(5) = rs.Fields.Item(5).Value
.SubItems(6) = rs.Fields.Item(6).Value
.SubItems(7) = rs.Fields.Item(7).Value

End With
End If

rs.MoveNext
Loop


rs.Close

g_db.Close

End Sub

El listview se carga muy bien es solo que ahora al implementar el datapicker me da un error en el rs.open sql, g_db que realmente no lo logro ver, me dice lo siguiente el controlador ODBC no admite las propiedades solicitadas.

Gracias de Antemano
  #2 (permalink)  
Antiguo 15/05/2012, 12:08
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 15 años, 2 meses
Puntos: 47
Respuesta: cargar desde un datapicker un listview con datos de un bd

Pos la penúltima linea de código tienes:

g_db.Close

Cerraste la conexion! Debes establecer la conexion nuevamente... Trata en el CHANGE o en el CLICK del DTPicker1:

Código vb:
Ver original
  1. If g_db.State=0 then 'EL ESTADO=0 ESTA CERRADA, SI ES IGUAL A 1 ESTA ABIERTA
  2.  
  3. g_db.Open "driver={SQL Server};server=SERVIDOR2;uid=profit;pwd=profit;dat abase=Prueba1"
  4.  
  5. End If

O tambien, crea una Sub y simplemente la llamas del LOAD del FORM y desde el CHANGE o el CLICK del DTPicker1

Última edición por lokoman; 15/05/2012 a las 12:14
  #3 (permalink)  
Antiguo 15/05/2012, 15:40
 
Fecha de Ingreso: abril-2012
Ubicación: Caracas
Mensajes: 22
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: cargar desde un datapicker un listview con datos de un bd

hola lokoman logre solucionar, si debia anexar un boton y en el evento click hacer el llamado al listview y en la sentencia sql colocar la variable que asigne al data picker, lo ejecute de la siguiente manera:

Private Sub cmd_ok_Click_Click()
Dim rs As New ADODB.Recordset
Dim sql As String
Dim sql1 As String
Dim i As Integer
Dim DIA

DIA = Format(DTPicker1.Value, "DD/MM/YYYY")


g_db.Open "driver={SQL Server};server=SERVIDOR2;uid=profit;pwd=profit;dat abase=Prueba1"

'-- llena el combo de Usuarios
sql = "select Status_envio, Emisor, persona_envio, Numeros_envio, Texto_envio, hora_envio, pc, fecha_envio from persona_enviados where fecha_envio = '" & DIA & "'"

rs.Open sql, g_db, adOpenKeyset

''' SE RECORRE
Do While Not rs.EOF

If Not IsNull(rs.Fields.Item(0).Value) Then


With Lst_consulta_sms.ListItems.Add(, , rs.Fields.Item(0).Value)
' Cada subitem debe corresponder con cada una de las cabeceras
' la segunda cabecera es el Subitems(1) y así sucesivamente
.SubItems(1) = rs.Fields.Item(1).Value
.SubItems(2) = rs.Fields.Item(2).Value
.SubItems(3) = rs.Fields.Item(3).Value
.SubItems(4) = rs.Fields.Item(4).Value
.SubItems(5) = rs.Fields.Item(5).Value
.SubItems(6) = rs.Fields.Item(6).Value
.SubItems(7) = rs.Fields.Item(7).Value

End With
End If

rs.MoveNext
Loop


rs.Close

g_db.Close
End Sub

Etiquetas: bd, datapicker, listview, formulario
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 21:26.