Access - habilitar siguiente celda del subformulario sin pinchar con el mouse

 
Vista:
sin imagen de perfil
Val: 7
Ha aumentado su posición en 7 puestos en Access (en relación al último mes)
Gráfica de Access

habilitar siguiente celda del subformulario sin pinchar con el mouse

Publicado por FREDDY (5 intervenciones) el 17/02/2018 01:38:29
Buenas Noches

Necesito de su ayuda tengo la factura en acces con el nombre de factura y en detalle con el nombre de detallesub
lo que necesito es cargar desde un texbox el codigo al subformulario detallesub con un boton haciedo click esta funcionando pero no consigo de ir colocando los codigos del producto acontinuacion del que ya esta cargado es decir que al cargar un nuevo codigo desde el texbox se me monta ensima del otro item que ya esta en el subformulario he intentado con
idcodigo.SetFocus
If Not IsNull([idcodigo]) Then
DoCmd.GoToRecord , , acNewRec
End If
pero eso lo logro solo haciendo desde el subformulario no desde el texbox que esta fuera del subformulario
su ayuda por favor
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

habilitar siguiente celda del subformulario sin pinchar con el mouse

Publicado por Anonimo (3316 intervenciones) el 17/02/2018 03:21:59
Si, si se conoce la ruta absoluta del objeto (algo como: Forms.formulariio-principal.mi-subformulario.form.mi-campo)

Si no se conoce el destino, no se podrá enviar con éxito el mensaje.
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
sin imagen de perfil
Val: 7
Ha aumentado su posición en 7 puestos en Access (en relación al último mes)
Gráfica de Access

habilitar siguiente celda del subformulario sin pinchar con el mouse

Publicado por FREDDY (5 intervenciones) el 17/02/2018 15:26:31
Explico paso a paso

Formulario = FACTURA
Subformulario= DETTALESUB
Arriba del encabezado de la factura esta un txbox para escanear el codigo del producto este texbox se llama ITEMART
Alado se encuentra un boton Agregar que al colocar el codigo y pinchar con el maus este envia al subformulario con el siguiente codigo de vba.

1
2
3
4
5
6
7
Private Sub Comando20_Enter()
Forms![FACTURA]![DETALLESUB]!id_codigo.Value = Me.ITEMART.Value
Forms![FACTURA]![DETALLESUB]!cantidad.Value = 1
Me.ITEMART = ""
Me.ITEMART.SetFocus
Dim ref As Recordset
End Sub

Bien ahora necesito ir colocando por cada codigo escaneado acontinuacion del que ya esta en DETALLESUB
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

habilitar siguiente celda del subformulario sin pinchar con el mouse

Publicado por Anonimo (3316 intervenciones) el 17/02/2018 20:15:23
Ese código es una bomba de relojería ....

Si (en el subformulario) estamos en un registro que no sea el ultimo en blanco (esto es: un 'NewRecord' o registro nuevo), sobrescribirá lo que sea y sin compasión.

Lo correcto es GENERAR un nuevo registro (que equivale a desplazarse a la línea en blanco que suele haber al final), tras ello asignarle los valores y guardarlo (o dejar que la siguiente carga de datos ejecute esa acción de forma automática).

Es curioso que en una misma línea se aplique una referencia absoluta y otra relativa:

1
Forms![FACTURA]![DETALLESUB]!id_codigo.Value = Me.ITEMART.Value

La absoluta:
1
Forms![FACTURA]![DETALLESUB]!id_codigo

La relativa:
1
Me.ITEMART

Ambas absolutas:
1
Forms![FACTURA]![DETALLESUB]!id_codigo =  Forms![FACTURA]!ITEMART

Ambas relativas:
1
Me![DETALLESUB]!id_codigo= Me.ITEMART

Pero la idónea seria esta (sean ambas absolutas, relativas o una mezcla de ambas):
1
Me.DETALLESUB.Form.id_codigo = Me.ITEMART


Yo lo haría asi:
1
2
3
4
5
6
7
With Me.DETALLESUB.Form
.NewRecord
.Id_Codigo = Me.Itemart
.Cantidad = 1
End With
Me.Itemart= ""
Me.Itemart.SetFocus
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