Я стараюсь избегать вычисляемых выражений в запросах на X++.
Лучше переписать так:
X++:
while select inventDim
where inventDim.InventLocationId == 'Склад 1'
join InventSum
where InventSum.InventDimId == inventDim.inventDimId &&
InventSum.itemId == 'Item 1'
{
if ((InventSum.PostedQty +
InventSum.Received -
InventSum.Deducted +
InventSum.Registered -
InventSum.Picked) >= 20) break;
}