Access - RELLENAR FECHA

 
Vista:

RELLENAR FECHA

Publicado por susana (54 intervenciones) el 13/03/2007 10:34:44
Tengo un formulario PEDIDOS que contiene NOMBRE PROVEEDOR, FECHA DEL PEDIDO, NUMERO DE PEDIDO.
Este tiene un subformulario que recoge los productos que me han ido pidiendo los clientes y tiene entre otros, dos campos Producto_PEdido Si/No (indica que el producto se ha pedido al proveedor) y FechaPedido, que es la misma fecha pedido del formulario principal, para poder consultar un determinado producto y saber cuándo y en qué pedido se pidió.

FORMULARIO PEDIDOS Proveedor Fecha Pedido Numero PEdido

SUBFORMULARIO
Producto1 Producto_Pedido (Si/No) Fecha en que se pidió
Producto2 Producto_Pedido(Si/no) Fecha en que se pidió
Producto3 Producto_Pedido(SI/no) Fecha en que se pidió

(tengo que decir, que ambos subformularios están enlazados por proveedor)

La cuestión es: si relleno a mano una por una las fechas de pedido de los productos, todo correcto, pero me gustaría rellenarlas de forma automática.
Lo que he hecho es, que cuando Producto_Pedido = Sí ,se rellena automáticamente el campo Fecha en que se pidió, cogiéndolo del formulario principal. Esto lo he hecho colocandome en el campo Fechaen_que_se_pidió, propiedades, origen del registro y áhí he puesto:

=SiInm([Producto_PEdido]=Sí;Forms![FORMULARIO PEDIDOS]![FECHA PEDIDO])

Y funciona correctamente. Cuando le haces clic en Producto_Pedido te rellena la fecha. El problema es que al haberlo puesto en origen del registro, lo he convertido en un campo independiente, por lo que no me guarda ese valor en ningún campo de la tabla para poder consultarlo más tarde.

También he probado poniendo en la consulta del subformulario un campo con esa misma condición, pero no funciona, porque cuando abre el subformulario aparece #¿Nombre? en dicho campo.

OSEA lo que quiero es QUE ME GUARDE EL VALOR DE LA FECHA DE PEDIDO PARA ESE PRODUCTO DE ALGUNA MANERA PARA QUE PUEDA CONSULTARLA DESPUES-
¿COMO LO SOLUCIONO?

Como siempre mil gracias a esos que me salvais la vida.

Susana
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:RELLENAR FECHA

Publicado por Enrique (1299 intervenciones) el 13/03/2007 20:13:54
Susana, si el Origen del Registro lo tienes ocupado con "=SiInm([Producto_PEdido]=Sí;Forms............" no lo podrás guardar en la Tabla.

En el Origen del registro del campo Fechaen_que_se_pidió, quitas lo que ahora tienes puesto y lo enlazas con el campo Fecha de la Tabla o Consulta para que cuando ese campo tome una fecha, la pueda grabar en la Tabla.
Luego en el Procedimiento de evento "Después de Actualizar" (AfterUpdate) del campo Producto_Pedido le dices que si ese campo = Sí, entonces el campo Fechaen_que_se_pidió coga la FECHA_PEDIDO del Formulario PEDIDOS . Intuyo que el campo fechaen_que_se_pidio es de tipo Sí/No, por la í acentuada de Sí; en ese caso inténtalo de esta forma:

Private Sub Producto_Pedido_AfterUpdate()
If Producto_Pedido = True Then
Fechaen_que_se_pidió = Form_PEDIDOS.FECHA_PEDIDO
Else
Fechaen_que_se_pidió = Null
End If
End Sub

Si todo va bien, cuando el campo tenga valor Sí (True) tomará la misma fecha que haya en el Formulario PEDIDOS y cuando el valor sea No (False) la fecha estará en blanco o si tuviera alguna, desaparece. De lo que no me fío ni un pelo es de los signos de subrayado y de los espacios en blanco que pones en los nombres de los campos, casi siempre dan problemas en entorno VBA, aunque funcionen bien en diseño.
En caso de que no te funcione, cambia la segunda línea del Evento por esta:
Fechaen_que_se_pidió = Forms!PEDIDOS![FECHA_PEDIDO]

Saludos
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:RELLENAR FECHA

Publicado por Enrique (1299 intervenciones) el 13/03/2007 21:41:08
Una rectificación a lo que antes te dije es que cuando escribo (dos veces) Origen del Registro, quise decir Origen del Control. Solo eso.

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:RELLENAR FECHA

Publicado por susana (54 intervenciones) el 15/03/2007 10:54:02
sííííííííííííííííí´muchísimas gracias Enrique. BUF!!! qué amplio abanico me abre además esta opción, que me estaba volviendo loca y no sabía como hacer no solo en este caso sino en otros muchos. Muchas gracias de verdad.
(no veas que trabajo, te he hecho caso y he cambiado TODOS los nombres de los campos para que no tuvieran espacios en blanco y subrayados, porque efectivamente se volvia loco).Y ahora estupendamente!!!

mil 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:RELLENAR FECHA

Publicado por Enrique (1299 intervenciones) el 15/03/2007 19:11:02
Hola Susana:
No sabes lo que me alegro que te haya ido bien lo que te he indicado, pués no hay cosa que más me desanime que después de intentar, lo mejor que sé, explicar una cosa, luego no me entiendan y no sirva para nada el tiempo que me lleva hacerlo. Eso seguro que tambien le pasa a los demás colaboradores.

En cuanto a lo de los espacios, signos de subrayado y otros caracteres que muchas veces se incluyen en los nombres de los objetos, campos, variables, etc., (incluye tambien las vocales acentuadas), puedes dar por bien empleado el tiempo que te has tomado en cambiarlas, pués te evitarán problemas en esa aplicación y en las que hagas en el futuro, sobre todo si programas con código VBA; te lo digo por experiencia.

Saludos y seguiremos en contacto.
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