/** No visualizar los campos que no tengan totales */ protected void setVisibleFields() { if (!showDetail) { for (int i = 0; i < fields.size(); i++) { ReportField field = ((ReportField) fields.get(i)); // buscar el campo en los totales y totales de los grupos boolean exist = false; for (int k = 0; k < totalFields.size(); k++) { if (((ReportTotalField) totalFields.get(k)).getField() == field) exist = true; } for (int k = 0; k < groups.size(); k++) { ReportGroup group = (ReportGroup) groups.get(k); for (int j = 0; j < group.getTotalFields().size(); j++) { if (((ReportTotalField) group.getTotalFields().get(j)).getField() == field) exist = true; } } if (!exist) field.setVisible(false); } } }