Access - Problema con formulario de consulta

   
Vista:

Problema con formulario de consulta

Publicado por cesar (9 intervenciones) el 11/03/2015 20:35:13
Hola, vuelvo a pedir ayuda por si alguien puede indicarme.

Tengo un formulario FORMLISTPAC con un boton "BUSCAR" que me abre otro formulario FORMBUSCPAC donde monto una consulta sql con parámetros. La consulta se realiza correctamente pero cuando vuelvo al primer formulario este no se ha modificado con la seleccion y aparece la misma lista de registros.

Pongo el código por si alguien me puede indicar que es lo que estoy olvidando:

Private Sub cmdBuscar_Click()

Dim auxspaces As String
auxespaces = ""
Dim sql As String
sql = "SELECT * FROM [TAB-PACIENTES] WHERE ID-PACIENTE > '' "

Form.RecordSource = sql
Form_FORMLISTPAC.Requery
DoCmd.Close acForm, "FORMBUSCPAC"
DoCmd.OpenForm "FORMLISTPAC"

End Sub


Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Problema con formulario de consulta

Publicado por jose (741 intervenciones) el 12/03/2015 19:07:06
sql = "SELECT * FROM [TAB-PACIENTES] WHERE ID-PACIENTE > '' "

si es un numero
sql = "SELECT * FROM [TAB-PACIENTES] WHERE ID-PACIENTE = " & str$(125) & " "

si id-paciente es un string
FIJATE EN LAS COMILLAS SIMPLES .... ' " & "SSS & " ' " - PERO TIENEN QUE ESTAR PEGADAS

sql = "SELECT * FROM [TAB-PACIENTES] WHERE ID-PACIENTE ='" & "SSS & "' "

SI LO QUE QUIERES ES QUE ESTÉ ORDENADO POR UN CAMPO

sql = "SELECT * FROM [TAB-PACIENTES] WHERE ID-PACIENTE = " & str$(125) & " ORDER BY ID-PACIENTE ASC "

ASC ASCENDENTE DSC DESCENDENTE








ESTO NO CREO QUE ESTÉ MUY BIEN


Form.RecordSource = sql

SI ES EL FORMULARIO ACTUAL


ME.RecordSource = sql


SINO SIEMPRE SE PUEDEPONER EL NOMBRE DEL FORMULARIO
FORMS![NOMBRE-DELFORMULARIO].RecordSource = sql

ESPERO QUE TE SIRVA DE AYUDA
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con formulario de consulta

Publicado por cesar (9 intervenciones) el 12/03/2015 23:10:09
Gracias por tu respuesta,

El formulario de consulta "FORMBUSCPAC" tiene varios campos para filtrar que pueden o no rellenar para hacer la busqueda. Me he montado una select dependiendo de los campos que vengan informados para hacer la consulta. En el ejemplo no la puse completa y quizá esto no quedó muy claro. La consulta esta montada como sigue:

Dim sql As String
sql = "SELECT * FROM [TAB-PACIENTES] WHERE ID-PACIENTE > '' "
If TXTCODIGO <> "" Then
sql = sql & " AND ID-PACIENTE ='" & TXTCODIGO & "'"
End If
If TXTDOCTOR <> "" Then
sql = sql & " AND DOCTOR ='" & TXTDOCTOR & "'"
End If
If TXTNOMBRE <> "" Then
sql = sql & " AND NOMBRE ='" & TXTNOMBRE & "'"
End If
If TXTMOVIL <> "" Then
sql = sql & " AND MOVIL ='" & TXTMOVIL & "'"
End If
If TXTFIJO <> "" Then
sql = sql & " AND FIJO ='" & TXTFIJO & "'"
End If


TXTCODIGO que es el campo del formulario y ID_PACIENTE que es el correspondiente de la tabla PACIENTES son de tipo texto.
La idea es que al menos me construyera la consulta con la primera línea y con ID_PACIENTE mayor que low values por si no me introducian ningún campo o tubiera problemas con los "AND....." del resto de los campos si me los metian.
ME propones que lo sustituya por ' " & "SSS & " ' "
No se exactamente que significan las tres SSS y no se si es este mi problema.

A continuación he seguido tu indicacion y he puesto:

Forms![FORMLISTPAC].RecordSource = sql


Form_FORMLISTPAC.Requery <---- que es nombre del formulario que lo llama y donde se tienen que monstrar los resultados de la busqueda

DoCmd.Close acForm, "FORMBUSCPAC" <----- cierro este formulario

'DoCmd.OpenForm "FORMLISTPAC" <---- y abro el formulario que se tiene que rellenar


Puede que sea por la selec pero no me muestra nada nuevo. Disculpa mi ignorancia
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con formulario de consulta

Publicado por jose (741 intervenciones) el 13/03/2015 10:15:54
para pasar datos a un formulario, el formulario destino tiene que estar abierto
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con formulario de consulta

Publicado por cesar (9 intervenciones) el 13/03/2015 10:44:19
Gracias, el problema era la SELECT,

olvidé poner la tabla a la que pertenece cada campo

sql = "SELECT * FROM [TAB-PACIENTES] WHERE [TAB-PACIENTES].[ID-PACIENTE] > '' "

ahora si me recupera los registros y me los carga en el formulario origen de la lista.

Muchas gracias por tu ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Problema con formulario de consulta

Publicado por xve (114 intervenciones) el 13/03/2015 15:08:17
Gracias por comentarlo Cesar...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar