![]() |
#7 |
Участник
|
Джойним датасорс:
X++: childQBDS = qbds.addDataSource(tableNum(AS_ComVehicleLink), "AS_ComVehicleLink"); // здесь разные ошибки в зависимости от того, указываем или нет имя childQBDS.addLink(fieldNum(RWPreliminaryRepair, VehicleId), fieldNum(AS_ComVehicleLink, VehicleId)); X++: str makerFilterStr(Set _filterSet = filterSet) { SetEnumerator se; str filterStr; ; fldStr = fieldStr(AS_ComVehicleLink, Node); se = _filterSet.getEnumerator(); while (se.moveNext()) { if (!se.current()) { continue; } if (filterStr) { filterStr += "||"; } filterStr += (strFmt(' (%1.%2 like ("%3")) ', childQBDS.name(), fldStr, se.current())); // фильтр по ноде вешаем на подчинённый датасорс } fldStr = fieldStr(RWPreliminaryRepair, AutoParkId); se = autoParkFilterSet.getEnumerator(); while (se.moveNext()) { if (!se.current()) { continue; } if (filterStr) { filterStr += "||"; } filterStr += (strFmt(' (%1.%2 like ("%3")) ', qbds.name(), fldStr, se.current())); // фильтр по площадке на главный } this.parmQBDS(childQBDS); //return filterStr; return strFmt("(%1)",filterStr); } X++: "( (AS_ComVehicleLink.Node like ('val')) || (RWPreliminaryRepair.AutoParkId like ('val2')) )" X++: qbr = childQBDS.addRange(fieldId); qbr.value(filterStr) X++: "SELECT FIRSTFAST * FROM RWPreliminaryRepair JOIN FIRSTFAST * FROM AS_ComVehicleLink WHERE RWPreliminaryRepair.VehicleId = AS_ComVehicleLink.VehicleId AND ((( (AS_ComVehicleLink.Node like ('val1')) || (RWPreliminaryRepair.AutoParkId like ('val2')) )))" Последний раз редактировалось Vlad_; 31.01.2020 в 16:57. |
|
Теги |
ax2009, qbds |
|
|