Попробуйте вот так:
X++:
qbds = query.addDataSource(tableNum(FactureJour_RU));
qbds.addRange(fieldNum(FactureJour_RU, Module)).value(queryValue(FactureModule_RU::Vend));
qbds = query.dataSourceTable(tableNum(FactureJour_RU)).addDataSource(tableNum(LedgerTrans));
qbds.relations(false);
qbds.addLink(fieldNum(FactureJour_RU, Voucher), fieldNum(LedgerTrans, Voucher));
qbds.joinMode(JoinMode::InnerJoin);
qbds.addRange(fieldNum(LedgerTrans, TransDate)).value(strfmt('((%1 >= %2) && (%1 <= %3))', fieldstr(LedgerTrans, TransDate),date2StrXpp(startDate), date2StrXpp(endDate)));
qbds.fetchMode(QueryFetchMode::One2One);
qbds = query.dataSourceTable(tableNum(FactureJour_RU)).addDataSource(tableNum(PurchBookVATProcessLogTrans_RU));
qbds.relations(true);
qbds.joinMode(JoinMode::NoExistsJoin);
qbds.fetchMode(QueryFetchMode::One2One);