Since 4.1 the Date property from a "com.sun.star.awt.UnoControlDateFieldModel" returns no longer a "Isodate" but a "Unodate".
Since its stay like that in 4.2 is started to correct all or BASIC code who uses a "com.sun.star.awt.UnoControlDateFieldModel".
But i runed by accident in a bug where as soon we have a "ss = Date" (who normaly returns today date as a string) the Date property of a "com.sun.star.awt.UnoControlDateFieldModel" is corrupted with a BASIC syntax error.
"Symbol date already defined differently"
as soon i left out the "ss = Date" the error disappeared
The error is not in 4.0
4.1 ?
The error is there in 4.2 under Windows all versions.
To reproduce the bug run the code below, who opens a dialog. The dialog has a Datecontrol who can been filed with todays date using a listener on the button.
Run the code and you run in the error
cancel the first row ("ss = date" ) to run without error
sub testDateError
ss = date
oDialogModel = createUnoService( "com.sun.star.awt.UnoControlDialogModel" )
oDialogModel.PositionX = 10
oDialogModel.PositionY = 10
oDialogModel.Width = 100
oDialogModel.Height = 100
oDialogModel.Title = "test datecontrol"
oDialogControl = createUnoService( "com.sun.star.awt.UnoControlDialog" )
oDialogControl.setModel( oDialogModel )
odialogModel = odialogcontrol.model
oDateModel = oDialogModel.createInstance( "com.sun.star.awt.UnoControlDateFieldModel" )
oDateModel.PositionX = 20
oDateModel.PositionY = 20
oDateModel.Width = 40
oDateModel.Height = 14
oDateModel.dropdown = true
oDateModel.Name = "test1"
oDateModel.TabIndex = nNumControls
oDialogModel.insertByName( "test1", oDateModel )
oDateControl = oDialogControl.getControl( "test1" )
odialogModel = odialogcontrol.model
oButtonModel = oDialogModel.createInstance( "com.sun.star.awt.UnoControlButtonModel" )
oButtonModel.PositionX = 40
oButtonModel.PositionY = 70
oButtonModel.Width = 60
oButtonModel.Height = 14
oButtonModel.Name = "pressbuton"
oButtonModel.Label = "press to fill with date"
oDialogModel.insertByName( "pressbuton", oButtonModel )
oButtonControl = oDialogControl.getControl( "pressbuton" )
oActionListener = CreateUnoListener("pressbuton" + "_", "com.sun.star.awt.XActionListener" )
oButtonControl.addActionListener( oActionListener )
oDialogcontrol.setVISIBLE(true)
oDialogcontrol.execute()
end sub
sub pressbuton_actionPerformed( oEvent As com.sun.star.awt.ActionEvent )
oevent.source.context.getcontrol("test1").date = cdatetounodate(date)
dim dStart as New com.sun.star.util.Date
dStart.year = oevent.source.context.getcontrol("test1").date.year
dStart.day = oevent.source.context.getcontrol("test1").date.day
dStart.month = oevent.source.context.getcontrol("test1").date.month
end sub
Sub Main