>>>>>Hi,
>>>>>
>>>>>Could someone suggest why I am having a problem (actually not me but the customer) in the following segment of code:
>>>>>
>>>>>The container with the text box has a property control_source. This property has a value V_WORK.EMPLOYEE
>>>>>
>>>>>The code then checks is the value of the field EMPLOYEE in the cursor V_WORK has been change. Here is the code:
>>>>>
>>>>>
>>>>> cControlSource = ALLTRIM( this.control_source )
>>>>> IF EVALUATE( cControlSource ) == OLDVAL( cControlSource )
>>>>> RETURN .T.
>>>>> ENDIF
>>>>>
>>>>>
>>>>>The problem occurs on the line above, EVALUATE( cControlSource ) == OLDVAL( cControlSource ), and it does
>>>>>ALIAS IS NOT FOUND. I verified that the entry in .control_source exists as described above.
>>>>>
>>>>>TIA.
>>>>>
>>>>>UPDATE. the following code checks that the alias V_WORK exist and is open. This code, below, is before the code above (just in case someone wonders if the alias is indeed exists and open
>>>>>
>>>>>
>>>>>IF !EMPTY( this.control_source )
>>>>> cAlias = SUBSTR( ALLTRIM(this.control_source), 1, AT('.',ALLTRIM(this.control_source)) - 1)
>>>>> IF SELECT( cAlias ) > 0
>>>>> cControlSource = ALLTRIM( this.control_source )
>>>>> IF EVALUATE( cControlSource ) == OLDVAL( cControlSource )
>>>>> RETURN .T.
>>>>> ENDIF
>>>>> ENDIF
>>>>>ENDIF
>>>>>
>>>>
>>>>If someone has a test code (any kind of bogus code) that would generate an error
>>>>
>>>>ALIAS IS NOT FOUND
>>>>
>>>>I would appreciate it!
>>>
>>>Is it possible the error actually is [ALIAS '' IS NOT FOUND] i.e. it's a blank/empty alias/work area?
>>
>>Yes, this generates the error I was looking for.
>>
>>oldval('','')
>>
>
>Now I know that the issue that caused the error message is in the OLDVAL(). And as I determined (above), two empty strings cause the error message ALIAS IS NOT FOUND.
>In my code, I pass the value in the CONTROL_SOURCE to the OLDVAL(). And the value in CONTROL_SOURCE is "V_WORK.EMPLOYEE" (set at design time).
>Now I am wondering, how could the value "V_WORK.EMPLOYEE" turn into "'',''" (two empty strings. If anyone has any suggestions, please let me know.
>UPDATE. Another thing that would cause the error "ALIAS IS NOT FOUND" if the alias V_WORK is closed.
>But in my code, I do check if the SELECT("V_WORK") > 0. Puzzling.
UPDATE 2. Could the issue be in the quotes around the value in CONTROL_SOURCE? The value set in the CONTROL_SOURCE (at design time) does not have quotes. It is simply V_WORK.EMPLOYEE. Then I pass this value to the OLDVAL. Could it be that sometimes VFP works without quotes and other times require them?
"The creative process is nothing but a series of crises." Isaac Bashevis Singer
"My experience is that as soon as people are old enough to know better, they don't know anything at all." Oscar Wilde
"If a nation values anything more than freedom, it will lose its freedom; and the irony of it is that if it is comfort or money that it values more, it will lose that too." W.Somerset Maugham