The logic should be look more like:
select UniqueKey, Field1, Field2 ... from Source;
load UniqueKey, Field1, Field2 ... from qvd where not exists(UniqueKey);
A tablebox without adding an UniqueKey field to it is only partly suitable to check which data are available. Without a real UniqueKey in the data you could use recno() and/or rowno() within the table-load to make the records of the tablebox unique.