Ulises,
I don't know why the first command doesn't work. As Al mentioned it should work (it worked in my tests). The second won't work because the expression FOR TABLE_B.FIELDX=.T. is only evaluated once. You can easily test this. Select a record in tableB where FieldX=.t. and all records will be APPENDed. If you select a record where FieldX=.f. no records will be APPENDed.
FWIW, here's a workaround that you could use:
SELECT TableA
SCAN FOR FieldX
SCATTER MEMVAR MEMO
INSERT INTO TableB FROM MEMVAR
ENDSCAN
HTH
>A command as simple as:
>
>Select TABLE_A
>Append from TABLE_B FOR FIELDX=.T.
>
>it appends all records, not only FIELDX=.T.
>FIELDX in TABLE_B is a logical field.
>
>I tried also
>
>Append from TABLE_B FOR TABLE_B.FIELDX=.T.
>
>Same result.
>
>Why things apparently so simple are sometimes so complicated?
>
>TIA for your time.
>
>Ulises
Daniel