|
![]() |
#1 |
NavAx
|
Цитата:
Сообщение от romanja
![]() можно ли так?
qbds.addSelectionField(element.getcruisepassengers(),SelectionField::Sum); для третьего пишу метод display int getcruisepassengers() { if (FlxPortJournal_1.ShipsType == "Kruiisilaev") return FlxPortJournal_1.FlxNumPassengersTotalArrival; return 0; } для третьего поля сумму не считает? X++: if (FlxPortJournal_1.ShipsType == "Kruiisilaev") qbds.addSelectionField(element.getcruisepassengers(),SelectionField::Sum); display int getcruisepassengers() { return fieldNum(FlxPortJournal,FlxNumPassengersTotalArrival); } |
|
![]() |
#2 |
Участник
|
чего то не того
![]() ставит сумму и круизным и не круизным одну и ту же |
|
![]() |
#3 |
Участник
|
Не вводите людей в заблуждение. В аксапте нельзя применять агрегатные функции к вычисляемым полям (читай дисплей-методам). Т.е в чистом виде вычисляемых полей (в терминах SQL) в аксапте нет, а есть более сложный механизм дисплей-методов, работающих в контексте отдельных курсоров, а не таблицы в целом.
Если уж кровь из носа эту задачу нужно решить за один запрос, то я бы попытался приджойнить таблицу саму к себе, так чтобы напротив круизных записей суммы были, а напротив остальных нет. И соответственно третью сумму искать уже по этому дополнительному приджойненному столбцу. Но имхо всё это шаманство. Куда проще найти требуемую сумму дополнительным подзапросом. |
|
|
![]() |
||||
Тема | Ответов | |||
Сортировка в Query в отчете | 7 | |||
Динамические контролы в отчете основанные на display-методе | 19 | |||
dialog в отчёте | 6 | |||
Не срабатывает один из footer-ов в отчете | 11 | |||
Установка Range в отчёте | 13 |
|