public static interface DatamartContext.Query
DatamartContext.Query
object being manipulated to allow for builder like usage.Modifier and Type | Method and Description |
---|---|
Table |
getTable() |
DatamartContext.Query |
having(Filter... filters)
Adds generic
Filter s to the query's HAVING clause. |
DatamartContext.Query |
having(String... havingClauses)
Parses and ANDs one or more SQL-like conditions to the query's HAVING clause.
|
DatamartContext.Query |
orderBy(String... orderClauses)
Parses and adds one or more SQL-like conditions to the query's ORDER BY clause.
|
DatamartContext.Query |
select(String expr,
String alias)
Adds a projection to the query.
|
DatamartContext.Query |
select(String expr,
String alias,
String... statistics) |
DatamartContext.Query |
selectAll() |
DatamartContext.Query |
selectAll(boolean fieldNameAsAlias) |
DatamartContext.Query |
selectCount()
Adds a COUNT(*) projection to the query.
|
DatamartContext.Query |
selectDistinct()
Equivalent to the DISTINCT option in an SQL select statement.
|
DatamartContext.Query |
setMaxRows(Integer maxRows)
Limits the number of rows returned in the query result.
|
void |
setOptions(Map<String,Object> options)
Allows for a number of query tweaking options, such as setting the target currency to convert to (if applicable), and requesting
additional statistics to be calculated.
|
DatamartContext.Query |
where(CustomerGroup customerGroup)
Adds a CustomerGroup condition to the query's WHERE clause, for example a customer group from an InputEntry("CustomerGroup") parameter.
|
DatamartContext.Query |
where(DatamartContext.DataSlice slice) |
DatamartContext.Query |
where(Filter... filters)
Adds generic
Filter s to the query's WHERE clause. |
DatamartContext.Query |
where(ProductGroup productGroup)
Adds a ProductGroup filter condition to the query's WHERE clause, for example a product group from an InputEntry("ProductGroup") parameter.
|
DatamartContext.Query |
where(String... whereClauses)
Parses and ANDs one or more SQL-like conditions to the query's WHERE clause.
|
Table getTable()
DatamartContext.Query selectDistinct()
DatamartContext.Query
DatamartContext.Query selectCount()
DatamartContext.Query
DatamartContext.Query select(String expr, String alias)
expr
- An expression referencing any queryable field in the query's source FC.alias
- The projection alias; helpful when accessing the query result data rows.DatamartContext.Query
DatamartContext.Query select(String expr, String alias, String... statistics)
DatamartContext.Query selectAll()
DatamartContext.Query selectAll(boolean fieldNameAsAlias)
DatamartContext.Query where(DatamartContext.DataSlice slice) throws Exception
Exception
DatamartContext.Query where(ProductGroup productGroup) throws Exception
productGroup
- The ProductGroup for which the filter representation is to be added to the query's WHERE clause.DatamartContext.Query
Exception
DatamartContext.Query where(CustomerGroup customerGroup) throws Exception
customerGroup
- The CustomerGroup for which the filter representation is to be added to the query's WHERE clause.DatamartContext.Query
Exception
DatamartContext.Query where(String... whereClauses)
whereClauses
- SQL compatible conditions.DatamartContext.Query
DatamartContext.Query where(Filter... filters)
Filter
s to the query's WHERE clause.filters
- One or more Filter
s to be added to the query's WHERE clause.DatamartContext.Query
DatamartContext.Query having(String... havingClauses)
havingClauses
- SQL compatible conditions.DatamartContext.Query
DatamartContext.Query having(Filter... filters)
Filter
s to the query's HAVING clause.
Example:
def threshold = api.getElement("ShowCountThreshold") ?: 0 def dmCtx = api.getDatamartContext() def dmQuery = dmCtx.newQuery(dmCtx.getDatamart("SalesDM")) dmQuery.select("customerId") dmQuery.select("COUNT(Material)", "count") dmQuery.having(Filter.greaterThan("count", threshold)) return dmCtx.executeQuery(dmQuery)?.getData()?.collect()Note: When aliases are defined in the dmQuery.select() calls, you need to use these aliases in the dmQuery.having() calls.
filters
- One or more Filter
s to be added to the query's HAVING clause.DatamartContext.Query
DatamartContext.Query orderBy(String... orderClauses)
def dmCtx = api.getDatamartContext() def dmQuery = dmCtx.newQuery(dmCtx.getDatamart("SalesDM")) dmQuery.select("customerId") dmQuery.select("COUNT(Material)", "count") dmQuery.orderBy("count DESC") return dmCtx.executeQuery(dmQuery)?.getData()?.collect()Note: When aliases are defined in the dmQuery.select() calls, you need to use these aliases in the dmQuery.orderBy() calls.
orderClauses
- SQL compatible conditions. Sorting direction can be specified with a ' ASC' (default) or ' DESC' postfix.DatamartContext.Query
DatamartContext.Query setMaxRows(Integer maxRows)
maxRows
- The maximum number of rows to return. If not set, or set to 0, then the externalRowsLimit
limit applies.DatamartContext.Query
Copyright © 2019. All rights reserved.