Hi Jim,
Try to use UnionType in a query.
For example :
QueryBuildDataSource qbds_1, qbds_2, qbds_3;
QueryBuildRange qbr_1, qbr_2, qbr_3;
super();
this.query().queryType(QueryType::Union);
qbds_1 = this.query().dataSourceTable(tableNum(UNC_InventBatchTypes));
qbds_1.unionType(UnionType::Union);
qbr_1 = qbds_1.addRange(fieldNum(UNC_InventBatchTypes, Code));
qbr_1.value("П17300000000100");
qbr_1 = qbds_1.addRange(fieldNum(UNC_InventBatchTypes, VendAccount));
qbr_1.value(vendAccount);
qbds_2 = this.query().addDataSource(tableNum(UNC_InventBatchTypes));
qbds_2.unionType(UnionType::Union);
qbds_3 = qbds_2.addDataSource(tableNum(UNC_MaxWinding));
qbds_3.addLink(fieldNum(UNC_InventBatchTypes, Code), fieldNum(UNC_MaxWinding, TareCode));
qbds_3.addLink(fieldNum(UNC_InventBatchTypes, VendAccount), fieldNum(UNC_MaxWinding, VendAccount));
qbr_3 = qbds_3.addRange(fieldNum(UNC_MaxWinding, ItemId));
qbr_3.value(itemId);
qbr_3 = qbds_3.addRange(fieldNum(UNC_MaxWinding, VendAccount));
qbr_3.value(vendAccount);