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

Report Access con ADO

Estas en el tema de Report Access con ADO en el foro de Visual Basic clásico en Foros del Web. Hola amigos, comentarles q estoy terminando de desarrollar una Aplicación en Access 2003, con 2 archivos. Uno con Forms, Reports, Consultas y otro con las ...
  #1 (permalink)  
Antiguo 05/11/2012, 21:45
 
Fecha de Ingreso: septiembre-2009
Ubicación: CONCEPCIÓN CHILE
Mensajes: 4
Antigüedad: 14 años, 7 meses
Puntos: 0
Información Report Access con ADO

Hola amigos, comentarles q estoy terminando de desarrollar una Aplicación en Access 2003, con 2 archivos. Uno con Forms, Reports, Consultas y otro con las Tablas. Los Forms los tengo completamente desconectados de las tablas q se encuentran en otro pc (laboratorio) y funcionan perfectamente. Y ahora necesito desconectar los Reports, para todo uso completamente instrucciones SQL y ADO.
En un Report hago esto:

Option Explicit
Option Compare Database


Dim ruta As String 'Ruta de BD

Sub CONYAPR() 'Establece Conexión y Apertura Recordset Clientes
Dim bclt As String 'Búsqueda clientes
ruta = ruta base datos
bclt = "SELECT * FROM Clientes ORDER BY Clientes.[ID] ASC;"
'Establece la conexión
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ruta & ";Persist Security Info=False"
'Abre el Recordset
rs.Open bclt, cnn, adOpenDynamic, adLockOptimistic
End Sub


Sub CCRDM()
'Cierra y descarga de memoria el recordset
rs.Close
Set rs = Nothing
'Cierra y descarga de memoria la conexión
If cnn.State = 1 Then cnn.Close
Set cnn = Nothing
End Sub

Private Sub Report_Open(Cancel As Integer)
DoCmd.Maximize
DoEvents
'Establece Conexión y Apertura Recordset
CONYAPR
End Sub

Private Sub Detalle_Format(Cancel As Integer, FormatCount As Integer)
'Verifica existencia de registros
If rs.EOF And rs.BOF Then
'Cierra Conexión y recordset. Descarga de memoria
CCRDM
Exit Sub
Else
'Agregar datos a los TextBoxes
rs.MoveFirst
While Not rs.EOF
Me!ID.Value = rs.Fields(0).Value
Me!Nombre_Cliente.Value = rs.Fields(1).Value
Me!Dirección_Cliente.Value = rs.Fields(2).Value
Me!Ciudad_Cliente.Value = rs.Fields(3).Value
Me!Teléfono_Cliente.Value = rs.Fields(4).Value
rs.MoveNext
DoEvents
Wend
End If
End Sub

Private Sub Report_Close()
'Cierra Conexión y recordset. Descarga de memoria
CCRDM
End Sub

Y lo q deseo es q en la sección Detalle del Report me muestre todas las filas q contenga la tabla cliente, es decir si son 7 filas q las muestre. Actualmente con este código sólo muestra el último registro o fila de la tabla en custión.
Desde ya muy agradecido
CONCEPCIÓN CHILE

Última edición por seduch; 06/11/2012 a las 10:10

Etiquetas: access, ado, sql, vb
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 09:37.