Создаю Lookup метод, для выбора из InventTrans токого TransRefId, который соответсвует таблицам: SalesTable или PurchTable. Т.е. необходимо показать записи, только по этим двум таблицам, остальные не нужны.
В форме один датасорс ссылающийся на таблицу InventTrans.
У него я перекрыл метод Init.
	PHP код:
	
		
			
public void init()
{
    Query                   query;
    QueryBuildDataSource    qbds_InventTrans;
    QueryBuildDataSource    qbds_SalesTable;
    QueryBuildDataSource    qbds_PurchTable;
    QueryBuildDataSource    qbds_InventJournalTable;
    ;
    super();
    Query = new Query();
    qbds_InventTrans = Query.addDataSource(tablenum(InventTrans));
    qbds_SalesTable = qbds_InventTrans.addDataSource(tablenum(SalesTable));
    qbds_SalesTable.joinMode(JoinMode::ExistsJoin);
    qbds_SalesTable.fetchMode(0);
    qbds_PurchTable = qbds_InventTrans.addDataSource(tablenum(PurchTable));
    qbds_PurchTable.joinMode(JoinMode::ExistsJoin);
    qbds_PurchTable.fetchMode(0);
    qbds_PurchTable.addLink(FieldNum(InventTrans,TransRefId),fieldNum(PurchTable,PurchId));
    qbds_SalesTable.addLink(FieldNum(InventTrans,TransRefId),fieldNum(SalesTable,SalesId));
    this.query(Query);
} 
		
	
 В результате пустой грид, если оставить один присоединенный датасорс, то видно только относящиеся к нему записи.
Что я делаю не правильно?