Access - Form de citas, ayuda.

 
Vista:

Form de citas, ayuda.

Publicado por Adolfo (98 intervenciones) el 25/03/2008 10:21:59
Hola a todos, hace tiempo me envio mi menda, un mail con una form pa citas bueno, guarda por fecha en una tabla los dias que se van generando y las citas en dicho dia y luego las llama desde el form. El problema es que cuando cierro el form y vuelvo a abrirlo, no me deja Consultar dias ya generados y tengo que volver a generarlos. Pongo el codigo aqui aver si podeis echarme una mano con esto. Gracias.
---
Private Sub cmdConsulta_Click()
'Búscamos sí el día ya ha sido generado

EstaGenerado = Nz(DLookup("DiaGenerado", "Tabla1", "fecha = Forms!frmCitas!DTPicker8"), False)
If EstaGenerado = False Then
MsgBox "El Día: " & Me.dtpicker8 & " No ha sido generado. Generé primero el Estadillo", vbInformation, "Validación"
Me.dtpicker8.SetFocus
Exit Sub
End If

Me.Requery ' Si el Día existe actualizamos

'Bloqueamos el campo Hora y no permitimos añadir
'registros para el mismo día
Me.AllowAdditions = True
Me.Hora.Locked = True
Me.Hora.Enabled = False
End Sub

Private Sub cmdGenerar_Click()
'Búscamos sí el día ya ha sido generado.

EstaGenerado = Nz(DLookup("DiaGenerado", "Tabla1", "fecha = Forms!frmCitas!DTPicker8"), False)

If EstaGenerado = True Then
MsgBox "El Día: " & Me.dtpicker8 & " Ya ha sido generado", vbInformation, "Validación"
Me.dtpicker8.SetFocus
Exit Sub
End If
'Sí el día no ha sido generado, añadimos los registros a la tabla
Dim rst As DAO.Recordset, I As Integer
Set rst = CurrentDb.OpenRecordset("Tabla1")

For I = I To Me.Hora.ListCount - 1

With rst
.AddNew
!Hora = Me.Hora.ItemData(I)
!Fecha = Me.dtpicker8
!DiaGenerado = True
.Update
End With
Next I

rst.Close
Set rst = Nothing

Me.Requery 'Actualizamos el formulario
'Bloqueamos el campo Hora y no permitimos añadir
'registros para el mismo día
Me.AllowAdditions = False
Me.Hora.Enabled = False
Me.Hora.Locked = True

MsgBox "El Estadillo Ha Sido Generado", vbInformation, "Registros"
End Sub
------------------------------

-Adolfo-
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:Form de citas, ayuda.

Publicado por mi menda (1111 intervenciones) el 25/03/2008 21:52:14
Hola Adolfo:
Este es tu problema:
EstaGenerado = Nz(DLookup("DiaGenerado", "Tabla1", "fecha = Forms!frmCitas!DTPicker8"), False)
El problema es que siempre te devuelve falso, supongo que es porque te has empeñado en utilizar el control DTPicker, que como ya te comente en otro post tiene un formato de fecha diferente al campo DiaGenerado de la tabla.Como también te comente en el otro post, o te comento ahora, tienes dos opciones:
1ª Convertir el formato de fecha del control DTPicker al mismo formato que el campo de la tabla DiaGenerado (ya te dije como se hacía)
2ª Sí ese control solo te da problemas y no sabes como utilizarlo, pasa olimpicamente de él, te sirve igualmente un textbox con una máscara de entrada

Un Saludo
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:Form de citas, ayuda.

Publicado por Adolfo (98 intervenciones) el 26/03/2008 10:08:18
Hola, ya probe lo de cambiar el formato y no va (me daba mas error que dejandolo asi) y sin el dtpicker8 tampoco funciona :( si lo tengo abierto si que finciona (con el dtpiker tambien funciona) pero si cierro el form y lo vuelvo a abrir es como un reset aunque en la tabla sigue grabado lo de los otros dias. No se si me explico bien...

Ahora mismo con el dtpiker funciona igual que lo que me pasaste.
Voy a ver si esque cambio mal la fecha o algo de eso pero si alguien sabe porque no puede funcionar esto que avise.

gracias

-Adolfo-
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:Form de citas, ayuda.

Publicado por Adolfo (98 intervenciones) el 26/03/2008 10:26:18
E estao probando cambiar el format del dtpiker pero creo que el problema es que aunque ponga
darFecha = Format(DTPicker8, "dd/mm/yyyy")
EstaGenerado = Nz(DLookup("DiaGenerado", "Tabla1", "[fecha] = # " & darFecha & " # "), False)

aun asi luego en la tabla si que me aparece la Hora, supongo que por eso luego siempre me dice que el dia no esta generado. Si no uso el dtpiker, como puedo poner un calendario tipo dtpiker pero sin hora ?

gracias.

-Adolfo-
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

date format bien pero...

Publicado por Adolfo (98 intervenciones) el 26/03/2008 13:28:27
Hola, e cambiando el formato de la fecha ahora encuentra si ai un dia generado y si lo hay te avisa, y te encuentra los dias. El problema es que la informacion que e metido en ese dia (en la tabla si que esta) pero no aparece y tampoco aparecen las horas del dia.

With rst
.AddNew
!Hora = Me.Hora.ItemData(I)
!Fecha = Format(DTPicker8, "dd/mm/yyyy") <------ He cambiando esto.
!DiaGenerado = True
.Update
End With

Entonces Encuentra el Dia, si No esta Generado te lo dice, si lo intentas generar y esta generado tambien lo dice. (eso es progreso)
Lo que se a roto en el camino... el listado de horas
9:00-9:30 <--
9:30-10:00 <-- esto ya no aparece

cualquier cosa que escriba tampoco aparece :(

siento molestar con el mismo problema todo el rato, pero unavez llegas a una pared o la consigues escalar o te quedas dandole cabezazos hasta que se rompa la pared o mi cabeza.

por ahora esta ganando la pared.

gracias a todos.

-Adolfo-
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

Solucionado :D

Publicado por Adolfo (98 intervenciones) el 26/03/2008 17:11:14
Porfin funciona, era solo poner al principio dtpicker8=format(dtpicker8, "dd,mm,yyyy")

vaya tonteria xdd

Gracias a todos. :)

-Adolfo-
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