Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Problem with Alias does not exist
Message
 
 
À
25/04/2022 15:52:43
Information générale
Forum:
Visual FoxPro
Catégorie:
Problèmes
Divers
Thread ID:
01684254
Message ID:
01684265
Vues:
25
Please see my reply to John.
Thanks.

>SWAG Alias()# "V_Work"
>
>untested
>IF !EMPTY( this.control_source )
>       local lcAlias, lcField, lSource
>       lcSource = ALLTRIM(this.control_source)
>	lcAlias = Left( m.lcSource), AT('.', m.lcSource) - 1)
>       lcField = Subst( m.lcSource), AT('.', m.lcSource) + 1)
>	IF SELECT( m.lcAlias ) > 0
>		IF EVALUATE( m.lcSource) == OLDVAL( m.lcField, m.lcAlias )		
>			RETURN .T.
>		ENDIF 
>      ENDIF
>ENDIF
>
>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
>>>
>>
>>I added - for testing - a TRY / CATCH around the above code. Then modified the line:
>>
>>cControlSource = ALLTRIM( this.control_source )
>>
>>to a bogus:
>>
>>cControlSource = "test.test_field" 
>>
>>
>>And the error caught by the TRY / CATCH, says "Alias 'test' not found".
>>But the error that the customer saw (without a TRY /CATCH) did not have the "bad" alias name. It was simply:
>>ALIAS IS NOT FOUND
>>
>>Any suggestions?
"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
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform