RE: Error executing code: The field with ID '0' does not exist in table 'OMHierarchyRelationship'.
Hello Ievgen and Andre,
Its working fine now.
I have changed 3 things.
1. Swap the datasource
2. make the 2nd datasource dynamic property to No
3. Delete the orgUnitQuery.clearAllFields();
Now the code looks like
MyTable orgHierarchyTypeParameter;
QueryBuildDataSource qbdsOMHierarchyRelationship,qdbsOperatingUnit;
Query orgUnitQuery = new Query();
select firstOnly Myfield from orgHierarchyTypeParameter;
qdbsOperatingUnit = orgUnitQuery.addDataSource(tableNum(OMOperatingUnit));
qdbsOperatingUnit.fields().clearFieldList();
qdbsOperatingUnit.fields().addField(fieldNum(OMOperatingUnit,OMOperatingUnitNumber));
qdbsOperatingUnit.fields().addField(fieldNum(OMOperatingUnit,Name));
qdbsOperatingUnit.addOrderByField(fieldNum(OMOperatingUnit,OMOperatingUnitNumber));
qbdsOMHierarchyRelationship = qdbsOperatingUnit.addDataSource(tableNum(OMHierarchyRelationship));
qbdsOMHierarchyRelationship.addRange(fieldNum(OMHierarchyRelationship, HierarchyType)).value(strFmt('%1',orgHierarchyTypeParameter.MyField));
qbdsOMHierarchyRelationship.fields().dynamic(NoYes::No);
qbdsOMHierarchyRelationship.fields().clearFieldList();
msCtrlOrgUnit = SysLookupMultiSelectCtrl::constructWithQuery(element, MyControlName, orgUnitQuery);