|
ReportMill 10 API | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.reportmill.datasource.RMSQLExpressionBuilder
public class RMSQLExpressionBuilder
RMSQLExpressionBuilder This class is used to translate filter expressions in ReportMill syntax into sql fetches.
Constructor Summary | |
---|---|
RMSQLExpressionBuilder()
|
Method Summary | |
---|---|
java.lang.String |
aliasForTable(RMEntity e)
Convenience method to get the alias for a particular entity |
java.lang.String |
aliasForTable(java.lang.String tableName)
Find or create the alias for this table. |
java.lang.String |
buildBooleanWhereClause(java.lang.Object node,
RMEntity rootEntity)
|
java.lang.String |
buildSelect(RMEntity e)
Builds the SELECT clause to select just those columns of the entity's table. |
java.lang.String |
buildWhereClause(java.lang.Object node,
RMEntity rootEntity)
Build the sql equivalent of the ReportMill filter expression. |
java.lang.String |
getSQLExpression(RMKeyChain chain,
RMEntity rootEntity)
Top level method for turning a keychain into a SQL expression. |
java.lang.String |
getSQLExpression(java.lang.String expr,
RMEntity rootEntity)
Parses the string in expr and returns the sql expression. |
java.util.Map |
popSelect()
restore previous select statement |
void |
pushSelect()
push a new select statement |
java.lang.String |
sqlForAggregate(RMJoin toManyJoin,
RMKeyChain expr)
Handles RM aggregators. |
java.lang.String |
sqlForFunctionCall(java.lang.String fname,
RMEntity rootEntity,
java.lang.String args)
Aggregator type functions are handled by sqlForAggregate. |
java.lang.String |
sqlForProperty(RMKeyChain key,
RMEntity rootEntity)
|
java.lang.String |
sqlForRMFunctionName(java.lang.String func)
Map reportmill builtins to their SQL equivalents |
java.lang.String |
sqlForString(java.lang.String s)
Turns a string (as returned from the keychain parser) into an sql string. |
java.lang.String |
sqlForTopLevelAggregate(RMEntity entity,
RMKeyChain expr)
Used for aggregates of an entire entity, for example "Up.total.revenue" or "Studios.average.budget" |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public RMSQLExpressionBuilder()
Method Detail |
---|
public java.lang.String getSQLExpression(RMKeyChain chain, RMEntity rootEntity) throws java.sql.SQLException
java.sql.SQLException
public java.lang.String getSQLExpression(java.lang.String expr, RMEntity rootEntity) throws java.sql.SQLException
java.sql.SQLException
public java.lang.String buildSelect(RMEntity e)
public java.lang.String buildWhereClause(java.lang.Object node, RMEntity rootEntity) throws java.sql.SQLException
java.sql.SQLException
public java.lang.String buildBooleanWhereClause(java.lang.Object node, RMEntity rootEntity) throws java.sql.SQLException
java.sql.SQLException
public java.lang.String sqlForString(java.lang.String s)
public java.lang.String sqlForProperty(RMKeyChain key, RMEntity rootEntity) throws java.sql.SQLException
java.sql.SQLException
public java.lang.String aliasForTable(java.lang.String tableName)
public java.lang.String aliasForTable(RMEntity e)
public void pushSelect()
public java.util.Map popSelect()
public java.lang.String sqlForAggregate(RMJoin toManyJoin, RMKeyChain expr) throws java.sql.SQLException
java.sql.SQLException
public java.lang.String sqlForTopLevelAggregate(RMEntity entity, RMKeyChain expr) throws java.sql.SQLException
java.sql.SQLException
public java.lang.String sqlForRMFunctionName(java.lang.String func)
public java.lang.String sqlForFunctionCall(java.lang.String fname, RMEntity rootEntity, java.lang.String args) throws java.sql.SQLException
java.sql.SQLException
|
ReportMill 10 API | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |