Access - Formulario sólo se abre "entrada de datos"

   
Vista:

Formulario sólo se abre "entrada de datos"

Publicado por Alfredo (43 intervenciones) el 19/12/2007 10:54:26
Hola a todos, tengo un problemilla que ya me tiene loco y no me deja ni dormir (y estoy seguro que de debe tratarse de una tonteria). El caso es que:
- Tengo 2 formularios, uno donde muestros todos los datos de ingresos (el acumulado, IVa, etc...) (Formulario A) y otro que llamo desde este que es donde me deja introducir nuevos datos y ver o modificar los datos que se observan en el primero (Formulario B).
- Además desde otro formulario (formulario C) puedo abrir el formulario B, por si el usuario necesita más información acerca de un ingreso.
- Si pretendo abrir el formulario B desde el formulario A pasa lo siguiente:
* En modo ver: no se abre, pero me abre el formulario B como "entrada de datos".
* En modo modificar: no se abre, no me muestra nada (pero no da error y si pongo un punto de interrupción se ve que entra bien en el código).
* En modo agregar datos: se abre perfecto y sin nungún problema.
- Si pretendo abrir el formulario B desde el formulario C pasa lo siguiente:
* Se abre prefecto en todos los modos.

Cógido para llamar al formulario B en el formulario A:
If Form(cteNomCampClau) <> "" Then
MsgBox (IDProveedorT02.Value & IdIngresosT03)
DoCmd.OpenForm cteNomFormulariED, , , cteNomCampClau & "=" & Form(cteNomCampClau), , acFormReadOnly, acDialog
End If

Cógido para llamar al formulario B en el formulario C:
If SConsGrid.Form(cteNomCampClau) <> "" Then
DoCmd.OpenForm cteNomFormulariED, acNormal, , cteNomCampClau & "=" & SConsGrid.Form(cteNomCampClau), acFormReadOnly, acDialog
End If

Espero que alguien pueda ayudarme, muchas 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

RE:Formulario sólo se abre

Publicado por Victoria (1530 intervenciones) el 19/12/2007 14:57:20
Hola:


En el form A, para agregar datos tan sólo has de poner un botón que te lleve el puntero a un nuevo registro. Puedes usar el Asistente para esto que te dará un código similar a esto:

Private Sub agregar_Click() ''' Nombre del botón creado para AGREGAR
On Error GoTo Err_agregar_Click

DoCmd.GoToRecord , , acNewRec

Me.cliente.SetFocus '' Primer campo a completar (tu tienes otro nombre)

Exit_agregar_Click:
Exit Sub

Err_agregar_Click:
MsgBox Err.Description
Resume Exit_agregar_Click

End Sub


En el form A para VER DATOS,

Private Sub formB_Click() 'el botón del formA que usas para abrir formB
On Error GoTo Err_formB_Click

Dim stDocName As String
Dim stLinkCriteria As String

stDocName = "formB"

stLinkCriteria = "[cliente]=" & "'" & Me![cliente] & "'" 'campo de búsqueda
DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_formB_Click:
Exit Sub

Err_formB_Click:
MsgBox Err.Description
Resume Exit_formB_Click

End Sub

En el form A para MODIFICAR DATOS, lo mismo que para VERLOS

Todo esto si te he entendido bien. En caso contrario, envia un email y lo afinamos

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