/** * Fill grid with aggregated data map with key and value * * @param params the {@link DataQueryParams}. * @param grid the grid * @param aggregatedDataMap the aggregated data map */ private void fillGridWithAggregatedDataMap( DataQueryParams params, Grid grid, Map<String, Double> aggregatedDataMap) { for ( Map.Entry<String, Double> entry : aggregatedDataMap.entrySet() ) { Double value = params.isSkipRounding() ? entry.getValue() : MathUtils.getRounded( entry.getValue() ); grid.addRow() .addValues( entry.getKey().split( DIMENSION_SEP ) ) .addValue( value ); if ( params.isIncludeNumDen() ) { grid.addNullValues( 3 ); } } }
/** * Adds data element values to the given grid based on the given data query * parameters. * * @param params the {@link DataQueryParams}. * @param grid the grid. */ private void addDataElementValues( DataQueryParams params, Grid grid ) { if ( !params.getAllDataElements().isEmpty() && !params.isSkipData() ) { DataQueryParams dataSourceParams = DataQueryParams.newBuilder( params ) .retainDataDimension( DataDimensionItemType.DATA_ELEMENT ) .withIncludeNumDen( false ).build(); Map<String, Object> aggregatedDataMap = getAggregatedDataValueMapObjectTyped( dataSourceParams ); for ( Map.Entry<String, Object> entry : aggregatedDataMap.entrySet() ) { Object value = AnalyticsUtils.getRoundedValueObject( params, entry.getValue() ); grid.addRow() .addValues( entry.getKey().split( DIMENSION_SEP ) ) .addValue( value ); if ( params.isIncludeNumDen() ) { grid.addNullValues( 5 ); } } } }
.addValues( entry.getKey().split( DIMENSION_SEP ) ) .addValue( value );
.addValues( dataRow.toArray() ) .addValue( params.isSkipRounding() ? value : MathUtils.getRounded( value ) );
.addValues( DimensionItem.getItemIdentifiers( row ) ) .addValue( AnalyticsUtils.getRoundedValue( dataSourceParams, indicator.getDecimals(), value.getValue() ) );