public void seleccionarMarcaDocente(ActionEvent event) {
    int paramDocId;
    int paramSesId;
    String paramCurNombre;
    String paramSecNombre;
    AcDocente acDoc;
    AcSesionAsistencia sesAsis;
    AcSesionEfectivaAsisDoc sesEfecAsisDoc;
    AsistenciaDocenteBean asisDoc;
    ClSeccion clSec;
    HSAsistenciaDocenteDAO asisDocDAO;
    HSDocenteDAO docDAO;
    Timestamp t1;
    Timestamp t2;

    paramDocId = CommonWeb.parseObjToInt(CommonWeb.getParamFromUIParameterUI(event, "w_doc_id"));
    paramSesId = CommonWeb.parseObjToInt(CommonWeb.getParamFromUIParameterUI(event, "w_ses_id"));
    paramCurNombre = CommonWeb.getParamFromUIParameterUI(event, "p_cur_nombre");
    paramSecNombre = CommonWeb.getParamFromUIParameterUI(event, "p_sec_nombre");

    asisDocDAO = CommonDAO.getAsistenciaDocenteDAO();
    docDAO = CommonDAO.getAcDocenteDAO();
    try {
      sesEfecAsisDoc = asisDocDAO.listaMarcadoDeAsistencia_x_Docente(paramSesId);
      asisDoc = new AsistenciaDocenteBean();

      if (sesEfecAsisDoc instanceof AcSesionEfectivaAsisDoc) {
        asisDoc.setDoc_id(sesEfecAsisDoc.getAcDocente().getId());
        asisDoc.setDoc_codigo(sesEfecAsisDoc.getAcDocente().getDocCodigo());
        asisDoc.setDoc_nombre(sesEfecAsisDoc.getAcDocente().getDocNombre());
        asisDoc.setSes_id(sesEfecAsisDoc.getAcSesionAsistencia().getSesId());

        clSec =
            CommonDAO.getClSeccionDAO()
                .seleccionarSeccion(sesEfecAsisDoc.getAcSesionAsistencia().getAcSeccion().getId());
        try {
          asisDoc.setSec_nombre(clSec.getSecNombre());
        } catch (Exception ex) {
          asisDoc.setSec_nombre("NO DETERMINADO");
          ex.printStackTrace();
        }

        try {
          asisDoc.setCur_nombre(clSec.getClArbolAcademico().getArbAcadPadre().getArbDescripcion());
        } catch (Exception ex) {
          asisDoc.setCur_nombre("NO DETERMINADO");
          ex.printStackTrace();
        }

        asisDoc.setEstasis_code(sesEfecAsisDoc.getSesefeasisdocTipo());
        asisDoc.setSesefeasisdoc_fecha(
            sesEfecAsisDoc.getAcSesionAsistencia().getSesFechaRegistro());
        asisDoc.setSesefeasisdoc_id(sesEfecAsisDoc.getSesefeasisdocId());

        t1 = sesEfecAsisDoc.getSesefeasisdocRegistro();
        t2 = sesEfecAsisDoc.getSesefeasisdocSalida();
        if (t1 != null) {
          asisDoc.setReg_hora(t1.getHours());
          asisDoc.setReg_min(t1.getMinutes());
        }
        if (t2 != null) {
          asisDoc.setSal_hora(t2.getHours());
          asisDoc.setSal_min(t2.getMinutes());
        }
        sesAsis = asisDocDAO.listarSessionAsistencia_x_sesid(paramSesId);
        asisDoc.setRegistro(sesAsis.getSesFechaInicio());
        asisDoc.setSalida(sesAsis.getSesFechaFin());
        asisDoc.setSesefeasisdoc_registro(sesEfecAsisDoc.getSesefeasisdocRegistro());
        asisDoc.setSesefeasisdoc_salida(sesEfecAsisDoc.getSesefeasisdocSalida());
        asisDoc.setSesefeasisdoc_obs(sesEfecAsisDoc.getSesefeasisdocObs());
      } else {
        //                System.out.println("nuevo ingreso!");
        acDoc = docDAO.seleccionarDocente(paramDocId);
        sesAsis = asisDocDAO.listarSessionAsistencia_x_sesid(paramSesId);
        asisDoc.setRegistro(sesAsis.getSesFechaInicio());
        asisDoc.setSalida(sesAsis.getSesFechaFin());
        asisDoc.setSesefeasisdoc_fecha(sesAsis.getSesFechaRegistro());
        asisDoc.setDoc_id(acDoc.getId());
        asisDoc.setDoc_codigo(acDoc.getDocCodigo());
        asisDoc.setDoc_nombre(acDoc.getDocNombre());
        asisDoc.setSes_id(paramSesId);
        asisDoc.setSec_nombre(paramSecNombre);
        asisDoc.setCur_nombre(paramCurNombre);
      }
      asisDocente = asisDoc;
      oncomplete = "Richfaces.showModalPanel('mpAsisDocente')";
    } catch (Exception e) {
      e.printStackTrace();
    }
  }