Access - Lista1.RowSource por código segun Formulario

 
Vista:

Lista1.RowSource por código segun Formulario

Publicado por sA  (203 intervenciones) el 26/02/2008 16:59:35
Hola a todos .... como están? Nuevamente posteo mi problema para que alguien me ayude. El problema en si es que un cuadro de lista que tiene como origen de la fila un código para que me muestre los datos segun el formulario que abro .... No me muestra nada.... y me desespera porque no logro ver lo que hago mal. Vale aclarar que gran parte de este código pertenece a Enrique al que le agradezo inmensamente por la ayuda que me da en este foro.

Bueno, la cosa es así.:
El Formulario Compensaciones_LiquidoP tiene un boton que al darle clic llama al formulario EspecialBusca que debería mostrar en el cuadro de lista1 los proveedores segun el formulario del cual fue llamado.

Yo estoy haciendo lo siguiente.
En el Formulario Compensaciones_LiquidoP en el boton Buscar pongo la linea
Private Sub Comando38_Click()
DoCmd.OpenForm "EspecialBusca", , , , , , Me.Name
End Sub

En el Formulario EspecialBuscar pongo:
Private Sub Form_Load()
If Me.OpenArgs = "Compensaciones_LiquidoP" Then
Lista1.RowSource = "SELECT CLIPROV.cuenta, CLIPROV!cliente AS nombre, CLIPROV.cuit FROM CLIPROV ORDER BY CLIPROV!cliente;"
Else
Lista1.RowSource = "SELECT cuenta, acreedor, cliente AS nombre, cuit FROM CLIPROV ORDER BY CLIPROV!cliente"
End If
...
...
End Sub

En el Cuadro de Lista Lista1 en las propiedades Origen del Control, Tipo de Origen de la fila, Origen de la fila .... no tienen ningun valor.

Todo esto muestra NADA!!!!!!!!!!! alguien sabe que estoy haciendo mal.?

Saludos y desde ya muchas gracias!!!!

Sandra!
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

RE:Lista1.RowSource por código segun Formulario

Publicado por Chea (1015 intervenciones) el 26/02/2008 19:31:40
Prueba a añadir Lista1.Requery después del Lista1.Rowsource.

Saludos
José Bengoechea Ibaceta
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

RE:Lista1.RowSource por código segun Formulario

Publicado por Enrique (1299 intervenciones) el 26/02/2008 19:59:14
Hola:
Así es como lo hago yo en mis aplicaciones y me funciona bien:

Private Sub Form_Load()
If CurrentProject.AllForms("Compensaciones_LiquidoP").IsLoaded Then
Lista1.RowSource = "SELECT cuenta, cliente AS nombre, cuit FROM CLIPROV ORDER BY cliente;"
ElseIf CurrentProject.AllForms("NombreDelOtroFormulario").IsLoaded Then
Lista1.RowSource = "SELECT cuenta, acreedor, cliente AS nombre, cuit FROM CLIPROV ORDER BY cliente"
Else 'Si ninguno de esos dos Formularios está abierto, se cierra este Form
DoCmd.Close acForm, "EspecialBuscar"
End If
...
...
End Sub

CurrentProject.AllForms solo funciona a partir de Access 2000.

Dependiendo del Formulario que tengas abierto en ese momento, al abrirse EspecialBuscar le das al origen de la fila del Cuadro de Lista un valor u otro.

Asegurate que escribes correctamente los nombres de los Formularios y que las consultas de selección que le asignas al RowSource sean tambien correctas en cuanto al nombre de la Tabla (parece que es CLIPROV) y de los Campos.

Un saludo
Enrique
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

RE:Lista1.RowSource por código segun Formulario

Publicado por Sandra Verónica (203 intervenciones) el 26/02/2008 20:12:56
Muchachos ..... desde ya muchas gracias por su pronta respuesta .... en cuanto pueda lo pruebo y les cuento.
Besitos
Sandra!

P.D.: Gracias por enseñarme tanto!!!!!!
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