LOCAL llError DO case CASE EMPTY(m.this.Value) local lcText lcText = strtran(m.this.text,"AM","") lcText = strtran(m.lcText,"PM","") lcText = strtran(m.lcText,"M","") if !empty(chrtran(m.lcText,"/.:-"," ")) **************************************** * I'm not sure that you can run here **************************************** *This.Value=CTOD("^"+STR(YEAR(DATE()),4)+"-"+STR(MONTH(DATE()),2)+"-"+LEFT(This.Text,2)) =ErrorMsg('Please enter a valid date',0+16,"Error in date entry") llError = .t. endif case m.this.value < m.this.dRangeLowBound =ErrorMsg('Please enter a correct year',0+16,"Error in date entry") llError = .t. endcase return IIF(m.llError, m.this.dRangeLowBound, {}) && so it would work for empty dates>
>*---------------------- Location Section ------------------------ >* Library: Acustomcontrols.vcx >* Class: Txtdate >* Method: Rangelow() >*----------------------- Usage Section -------------------------- >*) Description: >*) > >* Scope: Public >* Parameters: >*$ Usage: >*$ >* Returns: >*--------------------- Maintenance Section ---------------------- >* Change Log: >* CREATED 04/14/2005 - NN - idea by Fabio Lunardon thread #1003937 >* MODIFIED >*---------------------------------------------------------------- >LOCAL llError >llError = .f. >do case > >case type('this.value') = "D" AND EMPTY(this.Value) > if !empty(chrtran(this.text,"/.-","")) > *This.Value=CTOD("^"+STR(YEAR(DATE()),4)+"-"+STR(MONTH(DATE()),2)+"-"+LEFT(This.Text,2)) > =ErrorMsg('Please enter a valid date',0+16,"Error in date entry") > llError = .t. > endif > >case type('this.value') = "T" AND EMPTY(this.Value) > local lcText > lcText = strtran(this.text,"AM","") > lcText = strtran(m.lcText,"PM","") > lcText = strtran(m.lcText,"M","") > > if !empty(chrtran(m.lcText,"/.:-","")) >*This.Value=CTOD("^"+STR(YEAR(DATE()),4)+"-"+STR(MONTH(DATE()),2)+"-"+LEFT(This.Text,2)) > =ErrorMsg('Please enter a valid date',0+16,"Error in date entry") > llError = .t. > endif > >case this.value < this.dRangeLowBound > =ErrorMsg('Please enter a correct year',0+16,"Error in date entry") > llError = .t. >endcase > >return IIF(m.llError, this.dRangeLowBound, {}) && so it would work for empty dates >>
>>* RangeLow >>RETURN GOMONTH(DATE(),-110*12) && this is the lowerBound >>>>
>>** Class RangeLow >>IF m.this.Value<m.this.RangeLowBound && ADD THIS PROPERTY >> MESSAGEBOX("Error ... blb bls ...") >>ENDIF >>RETURN m.this.RangeLowBound >>