LOCAL ldValue, lcField, lcAlias ldValue = IIF( VARTYPE( This.Value ) = 'T', TTOD( This.Value ), This.Value ) lcField = JUSTEXT( This.cControlSource ) lcAlias = JUSTSTEM( This.cControlSource ) *** Update cControlSource from the Control's Value IF NOT EMPTY( This.cControlSource ) IF EMPTY( NVL( ldValue, {} ) ) *** Check to see if we are updating a form property IF UPPER( LEFT( This.cControlSource, 4 ) ) == 'THIS' lcControlSource = This.cControlSource &lcControlSource = {/:} ELSE REPLACE ( lcField ) WITH .NULL. IN ( lcAlias ) ENDIF ELSE *** make sure we have a valid date *** so we do not get datetime overflow errors *** in sql server when we attempt an update IF NOT( UPPER( LEFT( This.cControlSource, 4 ) ) == 'THIS' ) IF BETWEEN( ldValue, {^1900-01-01}, {^3000-01-01} ) REPLACE ( lcField ) WITH DTOT( ldValue ) IN ( lcAlias ) ELSE MESSAGEBOX( 'Invalid Date', 16, 'Please Fix Your Input' ) RETURN .F. ENDIF ELSE lcControlSource = This.cControlSource &lcControlSource = DTOT( ldValue ) ENDIF ENDIF ENDIF