@Override public Object getFieldValue(JRField jrField) throws JRException { Object valor = null; if (tabla != null) { for (int i = 0; i < tabla.getTotalColumnas(); i++) { if (tabla.getColumnas()[i].getNombre().equalsIgnoreCase(jrField.getName())) { valor = tabla.getValor(indice, tabla.getColumnas()[i].getNombre()); break; } } } else if (tablaGenerica != null) { for (int i = 0; i < tablaGenerica.getTotalColumnas(); i++) { if (tablaGenerica.getColumnas()[i].getNombre().equalsIgnoreCase(jrField.getName())) { valor = tablaGenerica.getValor(indice, tablaGenerica.getColumnas()[i].getNombre()); break; } } } else if (lista != null) { for (int i = 0; i < lista.get(indice).getNombreColumna().length; i++) { if (lista.get(indice).getNombreColumna()[i].equalsIgnoreCase(jrField.getName())) { valor = lista.get(indice).getValor()[i]; break; } } } return valor; }