public List<Presultados_paraclinicos> obtenerResultados_paraclinicos() {
    // log.info("ejecutando metodo @obtenerResultados_paraclinicos() ===> "
    // + nro_documento);
    List<Presultados_paraclinicos> listado = new ArrayList<Presultados_paraclinicos>();
    for (Component row_fila : rowsResultado.getChildren()) {
      Phistorias_paraclinicos phistorias_paraclinicos =
          (Phistorias_paraclinicos) ((Row) row_fila).getValue();
      Datebox datebox_fecha =
          (Datebox)
              gridResultados.getFellow(
                  "datebox_fecha_"
                      + tipo_examen
                      + "_"
                      + pcodigo_historia
                      + "_"
                      + phistorias_paraclinicos.getCodigo_examen());

      Textbox textbox_resultado =
          (Textbox)
              gridResultados.getFellow(
                  "textbox_resultado_"
                      + tipo_examen
                      + "_"
                      + pcodigo_historia
                      + "_"
                      + phistorias_paraclinicos.getCodigo_examen());

      if (!datebox_fecha.getText().isEmpty() && !textbox_resultado.getText().isEmpty()) {
        Presultados_paraclinicos presultados_paraclinicos = new Presultados_paraclinicos();
        presultados_paraclinicos.setCodigo_empresa(zkWindow.codigo_empresa);
        presultados_paraclinicos.setCodigo_sucursal(zkWindow.codigo_sucursal);
        presultados_paraclinicos.setCodigo_examen(phistorias_paraclinicos.getCodigo_examen());
        presultados_paraclinicos.setFecha(datebox_fecha.getText());
        presultados_paraclinicos.setResultado(textbox_resultado.getValue());
        presultados_paraclinicos.setNro_documento(nro_documento);

        Object valor_na = textbox_resultado.getAttribute("VALOR_NORMAL_ANORMAL");
        Object valor_descripcion_na = textbox_resultado.getAttribute("VALOR_DESCRIPCION_NA");

        if (valor_na != null) {
          if (valor_na.toString().equals("A")) {
            valor_descripcion_na = "";
          }
        }

        presultados_paraclinicos.setNormal_anormal(valor_na != null ? valor_na.toString() : "N");
        presultados_paraclinicos.setDescripcion_na(
            valor_descripcion_na != null ? valor_descripcion_na.toString() : "");

        listado.add(presultados_paraclinicos);
      }
    }
    return listado;
  }
  public Popup generarPopupResultados(
      Textbox textboxResultado, boolean readonly, Pexamenes_paraclinicos pexamenes_paraclinicos) {
    // final Image image = (Image)form.getFellow("img_"+id_alumno);
    final Textbox tbxRes = textboxResultado;
    // popup.setId("popupResultados_" + key);
    Vlayout vlayout = new Vlayout();

    if (pexamenes_paraclinicos.getNormal_anormal().equals("S")) {
      String valor_na = (String) tbxRes.getAttribute("VALOR_NORMAL_ANORMAL");
      String valor_descripcion_na = (String) tbxRes.getAttribute("VALOR_DESCRIPCION_NA");
      final Radiogroup radiogroup_anormal = new Radiogroup();
      Radio radio_normal = new Radio("Normal");
      radio_normal.setValue("N");
      radiogroup_anormal.appendChild(radio_normal);
      radiogroup_anormal.appendChild(new Space());
      Radio radio_anormal = new Radio("Anormal");
      radio_anormal.setValue("A");
      radiogroup_anormal.appendChild(radio_anormal);

      vlayout.appendChild(radiogroup_anormal);

      final Textbox textbox_anormal = new Textbox();
      textbox_anormal.setWidth("400px");
      textbox_anormal.setRows(4);
      textbox_anormal.setVisible(false);

      if (valor_na != null) {
        if (valor_na.equals("S")) {
          radio_normal.setChecked(true);
          radio_anormal.setChecked(false);
          textbox_anormal.setVisible(true);
        } else {
          radio_anormal.setChecked(true);
          radio_normal.setChecked(false);
          textbox_anormal.setVisible(false);
        }
      } else {
        radio_normal.setChecked(true);
        radio_anormal.setChecked(false);
        textbox_anormal.setVisible(false);
      }

      if (valor_descripcion_na != null) {
        textbox_anormal.setValue(valor_descripcion_na);
      }

      radiogroup_anormal.addEventListener(
          Events.ON_CHECK,
          new EventListener<Event>() {

            @Override
            public void onEvent(Event arg0) throws Exception {
              Radio radio_seleccionado = radiogroup_anormal.getSelectedItem();
              if (radio_seleccionado != null) {
                if (radio_seleccionado.getValue().toString().equals("A")) {
                  textbox_anormal.setVisible(true);
                } else {
                  textbox_anormal.setVisible(false);
                }
                tbxRes.setAttribute(
                    "VALOR_NORMAL_ANORMAL", radio_seleccionado.getValue().toString());
              }
            }
          });

      textbox_anormal.addEventListener(
          Events.ON_CHANGING,
          new EventListener<Event>() {

            @Override
            public void onEvent(Event arg0) throws Exception {
              InputEvent inputEvent = (InputEvent) arg0;
              tbxRes.setAttribute("VALOR_DESCRIPCION_NA", inputEvent.getValue());
            }
          });

      vlayout.appendChild(textbox_anormal);
    }

    final Textbox textbox = new Textbox();
    textbox.setWidth("400px");
    textbox.setRows(8);

    vlayout.appendChild(new Label("Resultado paraclinico"));
    vlayout.appendChild(textbox);
    textbox.setValue(tbxRes.getValue());
    textbox.addEventListener(
        "onChanging",
        new EventListener() {

          @Override
          public void onEvent(Event event) throws Exception {
            InputEvent inputevent = (InputEvent) event;
            tbxRes.setValue(inputevent.getValue());
          }
        });
    final Popup popup = new Popup();
    popup.addEventListener(
        Events.ON_OPEN,
        new EventListener<Event>() {

          @Override
          public void onEvent(Event event) throws Exception {
            textbox.setValue(tbxRes.getValue());
            textbox.setFocus(true);
          }
        });
    popup.appendChild(vlayout);
    contenedor.appendChild(popup);
    return popup;
  }