On Mon, 03 Nov 2008, Szak�ts Viktor wrote: Hi Viktor,
>> ? WA1->FIELD1 >= WA2->FIELD2 >> WA1 uses CP1, WA2 uses CP2 >> Please define RDD CP in this case? > In this case there is no RDD CP context involved in my > understanding, this is executed in the caller CP context. And what if it's FOR or WHILE clause of some RDD commands like INDEX ON ..., COUNT or SET FILTER? > Another more sophisticated solution could be that first > WA1->FIELD1 is converted to caller CP from WA1 CP, then > WA2->FIELD2 is also converted to caller CP from WA2 CP, > and then comparison is made using the caller CP context. How do you want to find such information in more complicated expressions like: WA1->(UDF1()) >= WA2->(UDF2()) FUNC UDF1 return WA1->FIELD1+WA2->FIELD2 FUNC UDF2 ... ??? > Back to prev mail for sec, can shade some light specifically > this issue: > Why can we do this now: > --- > hb_setcodepage( "CP_ZZ" ) > dbUseArea( ..., "CP_XX" ) > dbUseArea( ..., "CP_XX" ) > --- > But not this: > --- > hb_setcodepage( "CP_ZZ" ) > hb_rdddefaultcodepage( "CP_XX" ) > dbUseArea( ... ) > dbUseArea( ... ) > --- hb_rdddefaultcodepage( "CP_XX" ) Will enable translations for all open WAs even if user does not need any translation and want to open table in raw form, f.e. to extract binary so it will break existing code. The old problems will still exists and we will have new one. User will have to add to existing code saving and restoring hb_rdddefaultcodepage() to make it structural safe. best regards, Przemek _______________________________________________ Harbour mailing list Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour