Página 1 de 1

[Resuelto] Error de excepción en "Evento.Source.getByName()

Publicado: Jue Ene 27, 2011 2:39 pm
por Jordizen
Hola a todos,
estoy intentando asignar la fecha del día al campo fecha de un formulario cuando es un nuevo registro.
La macro la asigno al evento "Tras el cambio de registro" .
La macro es
Sub Fechadia (Evento)
Dim txtFecha As Object
If Evento.Source.IsNew Then
txtFecha = Evento.Source.getByName("Fecha")
txtFecha.Date = Val( Format( Now, "DDMMYY" ) )
End If
End Sub

al pulsar nuevo registro surge el error:
Error de ejecución de BASIC
Se ha producido una excepción
Type: com.sun.star.container.NoSuchElementExceptionMessage.
en la línea :
txtFecha = Evento.Source.getByName("Fecha")

Gracias

Re: Error de excepción en "Evento.Source.getByName()

Publicado: Jue Ene 27, 2011 5:10 pm
por RMG
Hola,

Prueba con esta macro, a mi no me da problemas. Le debes asignar la primera macro, desde donde llama a la segunda.

Sub FechaActual(Event As Object)
Dim oForm As Object
Dim oFecha As Object
oForm=Event.Source
If oForm.IsNew Then
oFecha=oForm.GetByName("Fecha")
oFecha.BoundField.UpdateDate(fFechaBD(Now))
End If
End Sub


Function fFechaBD(Fecha As Date) As com.sun.star.util rem.Date
Dim FechaBD As New com.sun.star.util.Date
FechaBD.Year=Year(Fecha)
FechaBD.Month=Month(Fecha)
FechaBD.Day=Day(Fecha)
fFechaBD=FechaBD
End Function

Saludos

Re: Error de excepción en "Evento.Source.getByName()

Publicado: Jue Ene 27, 2011 5:42 pm
por mauricio
Hola...

La macro que te paso mi amigo Ramon, funciona perfecto, solo toma en cuenta que de esa forma, actualizaras siempre el campo nuevo a la fecha actual, en cuanto se ejecuta la línea oFecha.BoundField.UpdateDate(fFechaBD(Now)) el valor se guarda en la base de datos...

Para el error especifico que mencionas, asegurate de que el nombre que estas usando, sea efectivamente el del control donde quieres mostrar la fecha, cuidado, se distingue mayúsculas de minúsculas...
captura_003.png
Saludos