public boolean hasEventProgramIndicatorDimension() { return programIndicator != null && AnalyticsType.EVENT.equals( programIndicator.getAnalyticsType() ); }
public boolean hasEnrollmentProgramIndicatorDimension() { return programIndicator != null && AnalyticsType.ENROLLMENT.equals( programIndicator.getAnalyticsType() ); }
/** * Checks to see if a dimensional item object has values * stored in the database by attribute option combo. * * @param o dimensional item object * @return true if values are stored by attribuete option combo. */ private boolean hasAttributeOptions( DimensionalItemObject o ) { return o.getDimensionItemType() != DimensionItemType.PROGRAM_INDICATOR || ( (ProgramIndicator)o ).getAnalyticsType() != AnalyticsType.ENROLLMENT; }
/** * Checks to see if a dimensional item object has values * stored in the database by attribute option combo. * * @param object dimensional item object * @return true if values are stored by attribuete option combo. */ private boolean hasAttributeOptions( DimensionalItemObject object ) { return object.getDimensionItemType() != DimensionItemType.PROGRAM_INDICATOR || ( (ProgramIndicator)object ).getAnalyticsType() != AnalyticsType.ENROLLMENT; }
private String getSubstitutedVariablesForAnalyticsSql( String expression, ProgramIndicator programIndicator, Date startDate, Date endDate ) { if ( expression == null ) { return null; } StringBuffer buffer = new StringBuffer(); Matcher matcher = ProgramIndicator.VARIABLE_PATTERN.matcher( expression ); while ( matcher.find() ) { String var = matcher.group( 1 ); String sql = getVariableAsSql( var, expression, programIndicator.getAnalyticsType(), startDate, endDate ); if ( sql != null ) { matcher.appendReplacement( buffer, sql ); } } return TextUtils.appendTail( matcher, buffer ); }
public String getProgramIndicatorColumnSelectSql( String programStageUid, String columnName, Date reportingStartDate, Date reportingEndDate, ProgramIndicator programIndicator ) { if ( programIndicator.getAnalyticsType().equals( AnalyticsType.ENROLLMENT ) ) { String eventTableName = "analytics_event_" + programIndicator.getProgram().getUid(); return "(select " + columnName + " from " + eventTableName + " where " + eventTableName + ".pi = " + ANALYTICS_TBL_ALIAS + ".pi and " + columnName + " is not null " + ( programIndicator.getEndEventBoundary() != null ? ("and " + getBoundaryCondition( programIndicator.getEndEventBoundary(), programIndicator, reportingStartDate, reportingEndDate ) + " ") : "" ) + ( programIndicator.getStartEventBoundary() != null ? ( "and " + getBoundaryCondition( programIndicator.getStartEventBoundary(), programIndicator, reportingStartDate, reportingEndDate ) + " ") : "" ) + "and ps = '" + programStageUid + "' " + "order by executiondate " + "desc limit 1 )"; } else { return columnName; } }
String anyValueFilter = programIndicatorService.getAnyValueExistsClauseAnalyticsSql( params.getProgramIndicator().getExpression(), params.getProgramIndicator().getAnalyticsType() );