Так если есть объект датасорса, потенциально известно, сколько записей он содержит:
Или я не заметил тонкости?
X++:
for ( localInventTable = inventTable_ds.getFirst() ? inventTable_ds.getFirst() : inventTable_ds.cursor();
localInventTable ;
localInventTable = inventTable_ds.getNext())
{
info (strFmt("%1", localInventTable.ItemId));
recordCount ++; // <--------
}
Т.е. я к тому, что не обязательно связываться с кверёй, и делать поправку на временную таблицу.