Интересный, только имеет тотже трабл, что и вариант Георгия.
Почему-то все забывают про тройной оператор "? : ", в котором делается сравнение с курсором RecId =0. В результате вместо первой записи из выделенных всегда берется текущая запись.
PHP код:
InventSum inventSumLocal;
Common inventSumCommon;
InventQty qty;
;
super();
for(inventSumCommon = InventSum_ds.getFirst(1).TableId != tablenum(Common) ?
InventSum_ds.getFirst(1) : InventSum_ds.cursor();
inventSumCommon.TableId != tablenum(Common);
inventSumCommon = InventSum_ds.getNext())
{
InventSumLocal = inventSumCommon;
qty += InventSumLocal.PhysicalInvent;
}
info(strFmt("PhysicalInvent = %1", qty));