Сударь, вы извращенец.
1. зачем делать всё это на одном Init-e? Делайте те действия, которые относятся к PurchTable на PurchTable.Инит(), а к PurchLine - на PurchLine.инит().
Так будет гораздо понятнее в будущем... И возможно не вам...

2. вы вообще в курсе что такое Inner Join? Если нет, то советую подучить. То что вы хотите сделать нужно делать так же как и на форме PurchTable. Разве там есть Inner Join. Там стоит JoinType=Delayed.