Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x | import {CDSArithmetics, CDSCase, CDSCast, CDSFunction, CDSPrefixedName, CDSString, CDSType} from ".";
import {altPrio, Expression, opt, optPrio, seq} from "../../abap/2_statements/combi";
import {IStatementRunnable} from "../../abap/2_statements/statement_runnable";
export class CDSAggregate extends Expression {
public getRunnable(): IStatementRunnable {
const fieldAsType = seq(CDSPrefixedName, "AS", CDSType);
const funcAsType = seq(CDSFunction, "AS", CDSType);
const value = altPrio(CDSArithmetics, CDSCast, CDSCase, funcAsType, CDSFunction, fieldAsType, CDSPrefixedName, CDSString, "*");
return seq(altPrio("MAX", "MIN", "SUM", "AVG", "COUNT"), "(", optPrio(altPrio("DISTINCT", "ALL")), value, opt(seq("AS", CDSType)), ")");
}
}
|