14.06.2012, 17:25 | #1 |
Enjoy!
|
Count в Query
Привет! Подскажите пожалуйста, необходимо достать Count по RecID, возвращает 0. Может что не так написал?
X++: q = new Query(); qBDS = q.addDataSource(tableNum(rHRMOrderTrans)); qBDS.addSelectionField(fieldNum(rHRMOrderTrans, RecId), SelectionField::Count); qBDS.addSortField(fieldNum(rHRMOrderTrans, RecId)); if(organizationId) qBDS.addRange(fieldNum(rHRMOrderTrans, OrganizationId)).value(organizationId); qBDSLoc = qBDS.addDataSource(tableNum(RHRMOrderTable)); qBDSLoc.addRange(fieldNum(RHRMOrderTable, JournalNameId)).value(queryValue(_journalName)); qBDSLoc.addRange(fieldNum(RHRMOrderTable, Posted)).value(queryValue(NoYes::Yes)); qBDSLoc.addRange(fieldNum(RHRMOrderTable, TransDate)).value(queryRange(dateFrom, dateTo)); qBDSLoc.joinMode(JoinMode::ExistsJoin); qBDSLoc.relations(true); qR = new QueryRun(q); ret = qR.getNo(1).RecId;
__________________
|
|
14.06.2012, 17:28 | #2 |
Участник
|
qR.next();
|
|
14.06.2012, 17:29 | #3 |
Enjoy!
|
И так и так. Пробовал.
__________________
|
|
14.06.2012, 19:00 | #4 |
Участник
|
а попробуйте добавить
qBDS.orderMode(OrderMode::GroupBy); и поля через qBDS.addGroupByField(), по которым идет связь между таблицами rHRMOrderTrans и RHRMOrderTable |
|
14.06.2012, 19:36 | #5 |
----------------
|
1. Убрать сортировку по RecId
2. Посмотреть полный текст запроса qbds.tostring и проверить там фильтры и связи 3. Перед qr.getno сделать qr.next |
|