Access - usar un subform para uno y otro form

 
Vista:

usar un subform para uno y otro form

Publicado por manuel (51 intervenciones) el 04/01/2008 15:58:32
Hola a todos y felicidades por un nuevo año colmado de exitos y satisfacciones... el problema que tengo es tengo un form el cual lo tengo vinculado a un subform ... hasta hay todo bien ... el hecho es que dada las caracteristicas he generado otro form para otro proposito usando el mismo subform que contiene datos del trabajador segun el servicio ... en el origen de datos selecciono los datos mediante un SELECT MAESTRO.ID, MAESTRO.PLAZA, PLMOVMAE.NOMBRE, MAESTRO.APEEMP, MAESTRO.NOMEMP, MAESTRO.TIPOPLA, PLMOVMAE.CODNIV, MAESTRO.CODSER, MAESTRO.CODACT, MAESTRO.ESTADO
FROM MAESTRO LEFT JOIN PLMOVMAE ON MAESTRO.PLAZA = PLMOVMAE.PLAZA
WHERE (((MAESTRO.CODSER)=[FORMS]![FINGHOR]![CODSER]) AND ((MAESTRO.ESTADO)=No))
ORDER BY MAESTRO.APEEMP

ok como veran invoco al control FORMS]![FINGHOR]![CODSER] pues bien quiero que tambien funcione con FORMS]![FINEVAL]![CODSER] osea direccionar segun el form usado la consulta requerida tanto para uno como otro form

Es solucion que espero contar por parte de ustedes

Atte.

Manuel
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:usar un subform para uno y otro form

Publicado por JOSELO (232 intervenciones) el 04/01/2008 18:17:36
Yo lo que haria es lo siguiente:

En el SubForm crearía un cuadro de texto invisible llamado NombreForm

Luego en el Formulario FINGHOR en el evento Load escribiría que en el subformulario en el control NombreForm el nombre del formulario actual. Segun el formulario que habras será el Nombre.

Despues en el subformulario en las acciones que tomas, habrá que modificarlas según el control NombreForm, podría ser

SELECTSQL = "SELECT MAESTRO.ID, MAESTRO.PLAZA, PLMOVMAE.NOMBRE, MAESTRO.APEEMP, MAESTRO.NOMEMP, MAESTRO.TIPOPLA, PLMOVMAE.CODNIV, MAESTRO.CODSER, MAESTRO.CODACT, MAESTRO.ESTADO
FROM MAESTRO LEFT JOIN PLMOVMAE ON MAESTRO.PLAZA = PLMOVMAE.PLAZA "

SELECT CASE NOMBREFORM
CASE = "FINGHOR"
WEHRESQL = "WHERE (((MAESTRO.CODSER)=[FORMS]![FINGHOR]![CODSER]) AND ((MAESTRO.ESTADO)=No)) "
CASE = "FINEVAL"
WEHRESQL = "WHERE (((MAESTRO.CODSER)=[FORMS]![FINEVAL]![CODSER]) AND ((MAESTRO.ESTADO)=No)) "

END SELECT

ORDERSQL = " ORDER BY MAESTRO.APEEMP "

STRINGSQL =SELECTSQL & WHERESQL & ORDERSQL

Todo esto depende si entendí bien tu necesidad, si no es así avisame. Gracias.
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:usar un subform para uno y otro form

Publicado por Manuel (51 intervenciones) el 04/01/2008 18:40:19
gracias por atender a mi pedido y pues si puede ser por lo que me indicas tendria que hacerlo mediante codigo y no por sql diferenciando de uno y otro por el case ...ahora y sis por el select sql hiciera un IIF(aqui necesitaria obtener el nombre si es FINGHOR o FINGEVA dependiendo de eso complementar el filtro)
que opinas de esto hay algun sintaxis para sacar el nombre del form principal

Gracias

Manuel
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:usar un subform para uno y otro form

Publicado por JOSELO (232 intervenciones) el 04/01/2008 18:46:37
Correcto, hay una forma.

En Access2003
Me.Form.Name

Si estas usando otra versón decime así buscamos como sería
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