>>>
>>>LOCAL lcControl
>>>lcControl = IIF(UPPER(LEFT(Object.ControlSource,2)) == [M.],SUSBTR(Object.ControlSource,3),Object.ControlSource)
>>>DO CASE
>>> CASE TYPE([m.]+lcControl) == [U] AND;
>>> TYPE(lcControl) # [U]
>>> REPLACE (lcControl) WITH WITH ltNewDateTime
>>> CASE TYPE(lcControl) == [C]
>>> STORE ltNewDateTime TO (lcControl)
>>>OTHERWISE
>>> *** something wrong
>>>ENDCASE
>>>
>>>(not tested for all occasions)
>>
>>I guess you ment to use VARTYPE() and not TYPE(), with TYPE() you must enclose the variable names with apostrophs. (I know that you know that!)
>
>No must use type, becuase Object.ControlSource is character,
>Something like:
>Object.ControlSource = [m.MyVariable]
>or
>Object.ControlSource = [MyTable.MyField]
>If I use VARTYPE() it always will return - [C] when TYPE() will return the actual type of MyVariable or MyField :o))
Yes, I saw it afterwards, I simply overlooked the first line with the ControlSource expression.