Hi Fabio,
Wouldnt it be better if the VFT uses the buffering like
with (buffering = .f. or 0) -- from disk
with (buffering = .t. or 1) -- from buffered alias all records
with (buffering = 2 ) -- from buffered alias ONLY buffered records..
suhas
I agree with you, but it is insufficient.
The VFP implementation ( .F. and T. ) it is the minimal solution.
If it is decided to complicate it then
it is better to reply to GETFLDSTATE with one combination of bits,
and to close the issue definitively;
this is not a behaviour choice, it is a behaviour constraint
because
with (buffering = .t.) it is supported for JOIN members .
Then, allow the use of GETFLDSTATE() into a single table FROM table WHERE
is very difficult with the current VFP SELECT plans;
BUT it is practically impossible to allow the use of GETFLDSTATE() into a JOIN ON condition
because it is intrinsically ambiguous if you cannot use the SELECT memebr alias for remove it.
Il primo schema che mi viene in mente is this:
all bits 0 : backward compatible : file handle source ( like .F. )
bit 0 : buffered alias ( like .T. )
bit 1 : exclude records unchanged ( exclude GETFLDSTATE()='111...111' )
bit 2 : exclude records updated ( exclude GETFLDSTATE()='112...111' )
bit 3 : exclude new records unchanged ( ...
bit 4 : exclude new records updated ( ...
then:
0 : full table file
1 : full alias
0x3 : from alias all buffered records
0x1D : from alias all unchanged records
...
Then, i think GETFLDSTATE() it will not be supported in the SELECT.
Fabio