Subformulario que oculta el registro introducido
Tengo un formulario con un subformulario:
Cuando introduzco un artículo en el subformulario, y paso al siguiente registro, solo me muestra el registro nuevo. Antes, utilizaba este código:Private Sub Form_AfterInsert() DoCmd. RefreshRecord DoCmd. GoToRecord,, acNewRec DoCmd. RefreshRecord DoCmd. GoToRecord,, acFirst DoCmd. GoToRecord,, acNewRec Me. Cantidad. SetFocus Me. Articulo. SetFocus If Nz(Me.Cantidad.Value, "") <> "" Then Me.Cantidad.Value = 1: Me.Cantidad.Value = 0 End Sub
Pero resulta que me das más problemas que otra cosa solo para que se vean los registros continuos.
En el código del subformulario no hay nada raro que, a mi entender, pueda interferir:
Option Compare Database Public cmbArticulo As New FindAsYouTypeCombo Private Sub Articulo_AfterUpdate() Me.CodigoArticulo = Me.Articulo.Column(2) [PVPModificado] = [PVP] If Me.TxtCategoria.Value = "Recargas" Then Me.TxtCodigoRecarga.Visible = True Me.TxtCodigoRecarga.TabStop = True Me.TxtTelefonoMovil.Visible = True Me.TxtTelefonoMovil.TabStop = True Call DarFormatoCondicionalALasRecargas(Nz(Me.TxtCategoria)) Else Me.TxtCodigoRecarga.Visible = False Me.TxtCodigoRecarga.TabStop = False Me.TxtTelefonoMovil.Visible = False Me.TxtTelefonoMovil.TabStop = False Call DarFormatoCondicionalALasRecargas(Nz(Me.TxtCategoria)) End If Me.Articulo.Value = "" End Sub Private Sub Articulo_GotFocus() Call BloquearCampos(Me, Forms![F10TPV]!ChkBloquear.Value, True) End Sub Private Sub Cantidad_AfterUpdate() If Forms![F10TPV]![ChkDeposito] = -1 Then [Deposito] = [Importe] * DLookup("PorcentajeDeposito", "T00Configuracion") Else [Deposito] = 0 End If End Sub Private Sub Form_Open(Cancel As Integer) Call AplicarDiseño(Me, "CabeceraYPie", False) Call DarFormatoCondicionalALasRecargas(Nz(Me.TxtCodigoRecarga)) Call AvisoDeBloqueo(Me, True) Call BloquearCampos(Me, Forms![F10TPV]!ChkBloquear.Value, True) End Sub Private Sub Form_Load() cmbArticulo.InitalizeFilterCombo Me.Articulo, "Articulo1", AnywhereInString, True, True End Sub Private Sub Form_Click() If Me.Form.AllowDeletions = False Then MsgBox "Este registro está bloqueado y no lo puedes modificar.", vbInformation, NombreBD End If End Sub Private Sub Form_Current() Call BloquearCampos(Me, Forms![F10TPV]!ChkBloquear.Value, True) End Sub
Y una segunda pregunta. ¿Cómo puedo guardar el formulario principal desde el subformulario? El formulario principal consta de tres campos, a los que, cuando añades un nuevo registro, te añade como valor predeterminado sus valores correspondientes; pero, si no haces ningún cambio, en cuanto salgas, te borra el registro principal, con todo lo que hayas añadido en el subformulario.
2 Respuestas
Respuesta de Sveinbjorn El Rojo
1
Respuesta de Julián González Cabarcos
2