Cita:
Iniciado por Avellaneda
Para poder responder bien, deberías sustituir "pero no me funciona" por el motivo por el cual no funciona (da error, no salen los datos deseados..)
De todas formas ahí van unas observaciones:
1º Si el campo idpaciente es numérico, le tienes que quitar las comillas simples a la variable "cadena"
2º Si idpaciente es único, es mas efectivo utilizar el operador de igual que Like.
3º Se da por hecho que la variable receta1 está declarada para todo el módulo.
4º Antes ( y no después) de asignar los campos a la propiedad DataField le tienes que asignar al DataReport el recordset.
Código:
Set DataReceta.DataSource = receta1
With DataReceta.Sections("section1").Controls
.Item("Text2").DataField = "receta"
.Item("Text3").DataField = "fecha"
.Item("Text4").DataField = "nombre"
' .....
End With
DataReceta.Show
Asumiendo que tu DataReport está en inglés.

Que tal gracias por las observaciones, haciendo las modificaciones recomendadas mi codigo quedaria de la siguiente manera
Código:
Private Sub ConsultaReceta()
Dim sql As String, cadena As String
Call VisualizarReceta
cadena = Text1(3).Text
sql = "SELECT receta,fecha,nombre,apellidos,proxima FROM receta WHERE idpaciente=" & cadena & " "
Set receta1 = New ADODB.Recordset
receta1.Open sql, BD, adOpenKeyset, adLockOptimistic
End Sub
Private Sub Imprimir()
Call ConsultaReceta
Set DataReceta.DataSource = receta1
With DataReceta.Sections("section1").Controls
.Item("Text2").DataField = "receta"
.Item("Text3").DataField = "fecha"
.Item("Text4").DataField = "nombre"
.Item("text5").DataField = "apellidos"
.Item("text6").DataField = "proxima"
End With
DataReceta.Show
End Sub
Pero me marca el siguiente error " Report sections do not match data source"
Y si efectivamente la variable receta1 la tengo dada de alta en todo el modulo, lo q si no entendi fue eso de suponiendo q mi datareport estuviera en ingles....
Tambien lo q tengo una duda desde q estuve investigando sobre como mandar los datos es: si en este linea
.Item("Text2").DataField = "receta", el text2 debe de ser el campo del datareport o el campo del formulario??
Gracias por la ayuda
Saludos