Override lookup method of field in data source level and instantiate the systablelookup class to add 3 tables by query, qbds1,qbds2,qbds3(see any example to add data source) and specify the fields which you need to show lookup then specify the condition like below
while select tb1 where tb1.enaum==… join tb2 where tb1.field== tb2.field join tb3 where tb2.field == tb3.field
now give the final range by using querybuildrange.value(query value(tb3.field)) it’s based on requirement