Да, так все и происходит.
Может, в ините добавить
qbds = PurchTable_DS.query().dataSourceNo(1).addDataSource(tableNum(PurchLine));
тогда код будет выглядеть так:
PHP код:
if( ... )
{
qbds.addLink(fieldNum(PurchLine, PurchId), fieldNum(PurchTable, PurchId));
qbds.joinMode(JoinMode::EXISTSJOIN);
}
else
{
qbds.clearLinks();
qbds.clearRanges();
}
И переменная лишняя не нужна!