/**
  * Metodo encargado de validar las ordenes contenidas en el archivo de excel proporcionado por la
  * carga masiva a traves del store SPP_VALIDA_EQUITIES y regresa la respuesta en DatosTabulares.
  *
  * @param ordenes Lista de ordenes a validar.
  * @return DatosTabulares resultado de la validacion.
  * @throws Exception Arroja una excepcion si ocurre un error.
  */
 public DatosTabulares validaOrdenesExcel(final List ordenes, final String formatoFecha)
     throws Exception {
   Iterator iteraOrdenes = null;
   ValidaCapitalesVO validaCapVO = null;
   CargaMasivaVO cargaVO = null;
   List ordenesValidadas = new ArrayList();
   DatosTabulares dt = null;
   ProcesaCapitalesVO procesaVO;
   if (ordenes != null && ordenes.size() > 0) {
     iteraOrdenes = ordenes.iterator();
     while (iteraOrdenes.hasNext()) {
       validaCapVO = (ValidaCapitalesVO) iteraOrdenes.next();
       // Valida antes de ejecutar SPP_VALIDA_EQUITIES
       this.validaValores(validaCapVO);
       if (validaCapVO.getMsgError() == null) {
         procesaVO = preadminDAO.validaCapitales(validaCapVO);
         cargaVO = new CargaMasivaVO(procesaVO);
       } else {
         cargaVO = new CargaMasivaVO();
         cargaVO.setResult(new BigDecimal(-1));
         cargaVO.setErrMsg(validaCapVO.getMsgError());
       }
       // Agrega la informacion extra que se necesita mostrar
       this.populaBeanValidar(cargaVO, validaCapVO);
       if (cargaVO.getPrice() != null && cargaVO.getOrigQty() != null) {
         cargaVO.setExtPrice(cargaVO.getPrice().multiply(cargaVO.getOrigQty()));
       }
       ordenesValidadas.add(cargaVO);
       if (esPico) {
         CargaMasivaVO tmp = new CargaMasivaVO(cargaVO);
         log.info("Fecha branch antes de pico:|" + tmp.getBrDateFront() + "|");
         this.agregaOperacionPico(validaCapVO, tmp);
         log.info("Fecha branch despues de pico:|" + tmp.getBrDateFront() + "|");
         tmp.setOrigQty(tmp.getRemQty());
         tmp.setPl("P");
         if (tmp.getPrice() != null) {
           tmp.setExtPrice(tmp.getPrice().multiply(tmp.getOrigQty()));
         }
         log.info("Fecha a mostrarse antes:|" + tmp.getBrDateFront() + "|");
         ordenesValidadas.add(tmp);
       }
     }
   }
   if (ordenesValidadas.size() > 0) {
     dt =
         new DatosTabularesDeLista(
             ordenesValidadas, parametrosValidacion() + "," + getParametrosExtras());
   }
   return dt;
 }
 /**
  * Metodo encargado de agregar la operacion pico que es enviada a la lista final de registros.
  * Realiza las mismas validaciones que una operacion normel.
  *
  * @param validaCapVO VO con los datos a validar
  * @param procesaVO VO con los datos a procesa
  * @throws Exception Arroja una excepcion si ocurre un error.
  */
 public void agregaOperacionPico(ValidaCapitalesVO validaCapVO, CargaMasivaVO cargaVO)
     throws Exception {
   ProcesaCapitalesVO procesaVO = null;
   // Indicador de operacion Pico
   validaCapVO.setPicoind(1);
   this.validaValores(validaCapVO);
   if (validaCapVO.getMsgError() == null) {
     procesaVO = preadminDAO.validaCapitales(validaCapVO);
     cargaVO = new CargaMasivaVO(procesaVO);
   } else {
     cargaVO = new CargaMasivaVO();
     cargaVO.setResult(new BigDecimal(-1));
     cargaVO.setErrMsg(validaCapVO.getMsgError());
   }
   // Agrega la informacion extra que se necesita mostrar
   this.populaBeanValidar(cargaVO, validaCapVO);
 }