Цитата:
Не могли бы Вы указать альтернативный(лучший) метод решения этой задачи ?
Наилучший метод - НЕ делать этого из кода программы.

Чем плох Relation?
Но если очень хочется из кода - можно так:
1) в свойствах датасоурса UnitConvert задать JoinSource = Unit
2) перекрыть метод init() датасоурса UnitConvert и создать в нем range на нужное тебе поле таблицы UnitConvert. Для удобства лучше сохранить ссылку на этот range в глоб.переменной типа QueryBuildRange - пусть переменная называется qR.
3) перекрыть метод linkActive() в этом же датасоурсе - в нем присваивать конкретное значение для range - qR.value(Unit.UnitId). В конце метода вызвать super()