Beispiel #1
0
 /**
  * Guarda las columnas basicas de una planilla.
  * Esta operación se utiliza cuando se genera una cabeceraBasica
  * FIXME: Muy vinculado al codigo, si cambian los nombres de los atributos en la bd, tengo que cambiar aca.
  */
 public static function guardarColumnasBasica($cabecera_id)
 {
     try {
         $data['success'] = true;
         $data['mensaje'] = "Operación Exitosa";
         $retorno = array();
         $manager = new \Phalcon\Mvc\Model\Transaction\Manager();
         $transaction = $manager->get();
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(1);
         $columna->setColumnaNombre('ORDEN');
         $columna->setColumnaClave('Remito.remito_nroOrden');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(2);
         $columna->setColumnaNombre('REMITO');
         $columna->setColumnaClave('Remito.remito_nro');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(3);
         $columna->setColumnaNombre('PATENTE');
         $columna->setColumnaClave('Transporte.transporte_dominio');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(4);
         $columna->setColumnaNombre('N° INTERNO');
         $columna->setColumnaClave('Transporte.transporte_nroInterno');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(5);
         $columna->setColumnaNombre('TIPO EQUIPO');
         $columna->setColumnaClave('Tipoequipo.tipoEquipo_nombre');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(6);
         $columna->setColumnaNombre('TIPO CARGA');
         $columna->setColumnaClave('Tipocarga.tipoCarga_nombre');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(7);
         $columna->setColumnaNombre('DNI');
         $columna->setColumnaClave('Chofer.chofer_dni');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(8);
         $columna->setColumnaNombre('CHOFER');
         $columna->setColumnaClave('Chofer.chofer_nombreCompleto');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(9);
         $columna->setColumnaNombre('FECHA');
         $columna->setColumnaClave('DATE_FORMAT(Remito.remito_fecha, \'%d/%m/%Y\')');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(10);
         $columna->setColumnaNombre('CLIENTE');
         $columna->setColumnaClave('Cliente.cliente_nombre');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(11);
         $columna->setColumnaNombre('ORIGEN');
         $columna->setColumnaClave('Viaje.viaje_origen');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(12);
         $columna->setColumnaNombre('DESTINO');
         $columna->setColumnaClave('Yacimiento.yacimiento_destino');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(13);
         $columna->setColumnaNombre('EQUIPO/POZO');
         $columna->setColumnaClave('Equipopozo.equipoPozo_nombre');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(14);
         $columna->setColumnaNombre('CONCATENADO');
         $columna->setColumnaClave('Concatenado.concatenado_nombre');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(15);
         $columna->setColumnaNombre('OPERADORA');
         $columna->setColumnaClave('Operadora.operadora_nombre');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(16);
         $columna->setColumnaNombre('LINEA-PSL');
         $columna->setColumnaClave('Linea.linea_nombre');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(17);
         $columna->setColumnaNombre('CENTRO COSTO');
         $columna->setColumnaClave('Centrocosto.centroCosto_codigo');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(18);
         $columna->setColumnaNombre('OBSERVACIONES');
         $columna->setColumnaClave('Remito.remito_observacion');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(19);
         $columna->setColumnaNombre('KM');
         $columna->setColumnaClave('Tarifa.tarifa_km');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(20);
         $columna->setColumnaNombre('HS HIDRO');
         $columna->setColumnaClave('tarifa_hsHidro');
         //Ahora esta unificado con las hsMalacate FIXME
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(20);
         $columna->setColumnaNombre('HS MALACATE');
         $columna->setColumnaClave('Tarifa.tarifa_hsMalacate');
         //Ahora esta unificado con las hsMalacate FIXME
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(21);
         $columna->setColumnaNombre('HS DE ESPERA');
         $columna->setColumnaClave('Tarifa.tarifa_hsStand');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(22);
         $columna->setColumnaNombre('HS TOTAL SERVICIO');
         $columna->setColumnaClave('Tarifa.tarifa_hsServicio');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(23);
         $columna->setColumnaNombre('CONFORMIDAD RE');
         $columna->setColumnaClave('Remito.remito_conformidad');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(24);
         $columna->setColumnaNombre('MOT NO CONFORM RE');
         $columna->setColumnaClave('Remito.remito_noConformidad');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(25);
         $columna->setColumnaNombre('PDF');
         $columna->setColumnaClave('Remito.remito_pdf');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(26);
         $columna->setColumnaNombre('ADMIN');
         $columna->setColumnaClave('Administrar');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $columna = new Columna();
         $columna->setTransaction($transaction);
         $columna->setColumnaCabeceraId($cabecera_id);
         $columna->setColumnaPosicion(26);
         $columna->setColumnaNombre('ES FLETERO');
         $columna->setColumnaClave('Chofer.chofer_esFletero');
         $columna->setColumnaHabilitado(1);
         $columna->setColumnaExtra(0);
         if (!$columna->save()) {
             $transaction->rollback("Ocurrió un problema al guardar una columna");
             $data['mensaje'] = "Ocurrio un problema al guardar la columna";
             $data['success'] = false;
             return $data;
         }
         $retorno[] = array('columna_id' => $columna->getColumnaId(), 'columna_nombre' => $columna->getColumnaNombre());
         /*=================================*/
         $transaction->commit();
         $data['columnas'] = $retorno;
         return $data;
     } catch (Phalcon\Mvc\Model\Transaction\Failed $e) {
         echo 'FALLO, motivo: ', $e->getMessage();
     }
 }
Beispiel #2
0
 /**
  * Guarda las columnas extras a una planilla determinada
  */
 public function guardarExtraAction()
 {
     if ($this->request->isPost()) {
         if ($this->request->getPost('cabecera_id', 'int') == null || $this->request->getPost('columna') == null) {
             $this->flash->error("Por favor verifique que la planilla y las columnas no esten vacías.");
             return $this->redireccionar('columna/agregarExtra');
         }
         $max = count(Columna::find(array('columna_cabeceraId=:cabeceraId: AND columna_habilitado=1', 'bind' => array('cabeceraId' => $this->request->getPost('cabecera_id', 'int')))));
         $arregloColumnas = $this->request->getPost('columna');
         foreach ($arregloColumnas as $columna) {
             if (!empty($columna)) {
                 $max = $max + 1;
                 $nuevaColumna = new Columna();
                 $nuevaColumna->setColumnaNombre(strtoupper($columna));
                 $cadenaLimpia = $this->limpiarCadena(strtoupper($columna));
                 $nuevaColumna->setColumnaClave(strtoupper(trim($cadenaLimpia)));
                 $nuevaColumna->setColumnaExtra(1);
                 $nuevaColumna->setColumnaPosicion($max);
                 $nuevaColumna->setColumnaCabeceraId($this->request->getPost('cabecera_id', 'int'));
                 $nuevaColumna->setColumnaHabilitado(1);
                 if (!$nuevaColumna->save()) {
                     foreach ($nuevaColumna->getMessages() as $message) {
                         $error[] = $message . " <br>";
                     }
                 }
             }
         }
         $this->flash->success("Operación Exitosa: Las columnas extras se agregaron correctamente.");
     }
     return $this->redireccionar('columna/agregarExtra');
 }
Beispiel #3
0
 /**
  * Guarda todas las columnas extras que se agregaron en la interfaz.
  * Si la cabecera ya existe, agrega mas columnas extras.
  * Si la cabecera no existe, la crea y agrega sus columnas
  */
 public function agregarExtraAction()
 {
     $this->view->disable();
     $error = array();
     // array to hold validation errors
     $data = array();
     $data['success'] = false;
     $data['mensaje'] = "Ups, ha ocurrido un problema.";
     if ($this->request->isPost()) {
         $this->db->begin();
         //si existe el token del formulario y es correcto(evita csrf)
         //if ($this->security->checkToken('token',$this->request->getPost('token'))) {
         if (!$this->request->hasPost('columna')) {
             $error[] = "No puede guardar columnas vacias.";
         } else {
             //$cabeceraId = Cabecera::guardar($this->request->getPost('planilla_nombreCliente'));
             $cabecera_id = $this->request->getPost('cabecera_id', 'int');
             $cabecera = Cabecera::findFirstByCabecera_id($cabecera_id);
             if (!$cabecera) {
                 $error[] = "Hubo un problema, no se encontro la cabecera.";
             } else {
                 $arregloColumnas = $this->request->getPost('columna');
                 $posicion = 26;
                 foreach ($arregloColumnas as $columna) {
                     if (!empty($columna)) {
                         $nuevaColumna = new Columna();
                         $nuevaColumna->setColumnaNombre(strtoupper($columna));
                         $nuevaColumna->setColumnaClave('CLAVE_' . strtoupper($columna));
                         $nuevaColumna->setColumnaExtra(1);
                         $nuevaColumna->setColumnaPosicion($posicion++);
                         $nuevaColumna->setColumnaCabeceraId($cabecera->getCabeceraId());
                         $nuevaColumna->setColumnaHabilitado(1);
                         if (!$nuevaColumna->save()) {
                             foreach ($nuevaColumna->getMessages() as $message) {
                                 $error[] = $message . " <br>";
                             }
                         }
                     } else {
                         $error[] = "Debe ingresar el nombre de la columna";
                     }
                 }
             }
         }
         if (empty($error)) {
             $this->db->commit();
             $todasLasColumnas = $this->modelsManager->createBuilder()->columns('columna_id, columna_nombre')->from('Columna')->where('columna_cabeceraId = :cabecera_id:', array('cabecera_id' => $cabecera->getCabeceraId()))->orderBy('columna_posicion ASC')->getQuery()->execute()->toArray();
             $data['columnas'] = $todasLasColumnas;
             $data['success'] = true;
             $data['mensaje'] = "Operacion Exitosa, las columnas han sido guardadas correctamente";
         } else {
             $this->db->rollback();
             $data['success'] = false;
             $data['mensaje'] = $error;
         }
     }
     echo json_encode($data);
 }