function error_handler($errno, $errstr, $errfile, $errline) { if ($errno == '8' || $errno == '2048' || strpos($errstr, 'Query failed') > 0 || ($errno == '8' || $errno == '2048') && strpos($errstr, 'Query failed') > 0) { //if($errno=='8' || $errno=='2048' || strpos($errstr,'Query failed')>0){ //RAC, JRR 31102011 //if(($errno=='8' || $errno=='2048' )&& strpos($errstr,'Query failed')>0){ return; } $_SESSION["_CANTIDAD_ERRORES"]++; if ($_SESSION['_CANTIDAD_ERRORES'] < 4) { if ($_SESSION['_CANTIDAD_ERRORES'] < 3) { $bdlog = new MODLogError('ERROR_WEB', $errstr, $errfile . ' Linea: ' . $errline); $bdlog->guardarLogError(); } $men = new Mensaje(); if ($_SESSION["_ESTADO_SISTEMA"] == 'desarrollo') { $mensaje = $errstr; } else { $mensaje = 'Ha ocurrido un error en el servidor Web, consulte con el administrador'; } $mensaje = htmlentities($mensaje); $men->setMensaje('ERROR', $errfile . ' Linea: ' . $errline, $mensaje, 'Codigo de error:' . $errno, 'control', '', '', 'OTRO', ''); //rac 21092011 $men->imprimirRespuesta($men->generarJson()); exit; } else { header("HTTP/1.1 406 Not Acceptable"); echo '{"ROOT":{"error":true,"detalle":{ "mensaje":"Error en el servidor Web probable falta de conexión al Servidor de Base de Datos (Comuniquese con el Administrador)", "mensaje_tec":"' . $mensaje . '", "origen":"Errores.php", "capa":"control", "consulta":""}}}'; exit; } }
function reporteOC() { $dataSource = new DataSource(); $this->objParam->addParametroConsulta('ordenacion', 'id_cotizacion'); $this->objParam->addParametroConsulta('dir_ordenacion', 'ASC'); $this->objParam->addParametroConsulta('cantidad', 1000); $this->objParam->addParametroConsulta('puntero', 0); $this->objFunc = $this->create('MODCotizacion'); $resultOrdenCompra = $this->objFunc->reporteOrdenCompra(); $datosOrdenCompra = $resultOrdenCompra->getDatos(); //armamos el array parametros y metemos ahi los data sets de las otras tablas $dataSource->putParameter('id_proceso_compra', $datosOrdenCompra[0]['id_proceso_compra']); $dataSource->putParameter('desc_proveedor', $datosOrdenCompra[0]['desc_proveedor']); if ($datosOrdenCompra[0]['id_persona'] != '') { $dataSource->putParameter('direccion', $datosOrdenCompra[0]['dir_persona']); $dataSource->putParameter('telefono1', $datosOrdenCompra[0]['telf1_persona']); $dataSource->putParameter('telefono2', $datosOrdenCompra[0]['telf2_persona']); $dataSource->putParameter('celular', $datosOrdenCompra[0]['cel_persona']); $dataSource->putParameter('email', $datosOrdenCompra[0]['correo_persona']); $dataSource->putParameter('fax', ''); } if ($datosOrdenCompra[0]['id_institucion'] != '') { $dataSource->putParameter('direccion', $datosOrdenCompra[0]['dir_institucion']); $dataSource->putParameter('telefono1', $datosOrdenCompra[0]['telf1_institucion']); $dataSource->putParameter('telefono2', $datosOrdenCompra[0]['telf2_institucion']); $dataSource->putParameter('celular', $datosOrdenCompra[0]['cel_institucion']); $dataSource->putParameter('email', $datosOrdenCompra[0]['email_institucion']); $dataSource->putParameter('fax', $datosOrdenCompra[0]['fax_institucion']); } $dataSource->putParameter('fecha_entrega', $datosOrdenCompra[0]['fecha_entrega']); $dataSource->putParameter('lugar_entrega', $datosOrdenCompra[0]['lugar_entrega']); $dataSource->putParameter('numero_oc', $datosOrdenCompra[0]['numero_oc']); $dataSource->putParameter('tipo_entrega', $datosOrdenCompra[0]['tipo_entrega']); $dataSource->putParameter('tipo', $datosOrdenCompra[0]['tipo']); $dataSource->putParameter('fecha_oc', $datosOrdenCompra[0]['fecha_oc']); $dataSource->putParameter('moneda', $datosOrdenCompra[0]['moneda']); //get detalle //Reset all extra params: $this->objParam->defecto('ordenacion', 'id_solicitud_det'); $this->objParam->defecto('cantidad', 1000); $this->objParam->defecto('puntero', 0); $this->objParam->addParametro('id_solicitud', $idSolicitud); $modCotizacionDet = $this->create('MODCotizacionDet'); $resultCotizacionDet = $modCotizacionDet->listarCotizacionDet(); //$solicitudDetAgrupado = $this->groupArray($resultSolicitudDet->getDatos(), 'codigo_partida','desc_centro_costo'); $cotizacionDetDataSource = new DataSource(); $cotizacionDetDataSource->setDataSet($resultCotizacionDet->getDatos()); $dataSource->putParameter('detalleDataSource', $cotizacionDetDataSource); //build the report $reporte = new ROrdenCompra(); $reporte->setDataSource($dataSource); if ($datosOrdenCompra[0]['tipo'] == 'Bien') { $nombreArchivo = 'OrdenCompra.pdf'; } else { if ($datosOrdenCompra[0]['tipo'] == 'Servicio') { $nombreArchivo = 'OrdenServicio.pdf'; } else { $nombreArchivo = 'OrdenCompraServicio.pdf'; } } $reportWriter = new ReportWriter($reporte, dirname(__FILE__) . '/../../reportes_generados/' . $nombreArchivo); $reportWriter->writeReport(ReportWriter::PDF); $mensajeExito = new Mensaje(); $mensajeExito->setMensaje('EXITO', 'Reporte.php', 'Reporte generado', 'Se generó con éxito el reporte: ' . $nombreArchivo, 'control'); $mensajeExito->setArchivoGenerado($nombreArchivo); $this->res = $mensajeExito; $this->res->imprimirRespuesta($this->res->generarJson()); }
function generarDocumento() { $pPlantilla = $this->objParam->getParametro('nombre_archivo_plantilla'); $this->objFunc = $this->create('MODTipoDocumento'); include_once dirname(__FILE__) . '/../../sis_workflow/reportes/RTipoDocumento.php'; //Obtiene los datos de la vista $datos = $this->res = $this->objFunc->generarDocumento($this->objParam); //var_dump($datos);exit; //Setea los valores en el datasource $dataSource = new DataSource(); $dat = $datos->getDatos(); foreach ($dat as $valor) { foreach ($valor as $clave => $valor1) { $dataSource->putParameter($clave, $valor1); } } //Generar el reporte $documento = new RTipoDocumento($pPlantilla); $documento->setDataSource($dataSource); //Obtiene el nombre del reporte $aux = strrchr($pPlantilla, '/'); if ($aux != '') { $nombreArchivo = substr($aux, 1, strpos($aux, '.') - 1); } else { $nombreArchivo = substr($pPlantilla, 0, strpos($pPlantilla, '.')); } $nombreArchivo = $nombreArchivo . '_' . rand(0, 99999) . '.docx'; //echo dirname(__FILE__).'/../../reportes_generados/'.$nombreArchivo;exit; $documento->write(dirname(__FILE__) . '/../../../reportes_generados/' . $nombreArchivo); $mensajeExito = new Mensaje(); $mensajeExito->setMensaje('EXITO', 'Documento.php', 'Documento generado', 'Se generó con éxito el documento: ' . $nombreArchivo, 'control'); $mensajeExito->setArchivoGenerado($nombreArchivo); $this->res = $mensajeExito; $this->res->imprimirRespuesta($this->res->generarJson()); }
<?php //die; error_reporting(E_ALL); ini_set("display_errors", 1); include_once "../../data/config.php"; //echo "<pre>";print_r(json_decode($_POST['json'])); echo "</pre>"; $datos = json_decode($_POST['json']); //$libros = LibroQuery::create()->find(); //$usuarios = UsuarioQuery::create()->find(); switch ($datos->accion) { case "n": //New $mensajeObj = new Mensaje(); $mensajeObj->setId_usuario_destinatario($datos->id_usuario_destinatario); $mensajeObj->setId_usuario_remitente($datos->id_usuario_remitente); $mensajeObj->setMensaje($datos->mensaje); $mensajeObj->setLeido($datos->leido); $mensajeObj->save(); echo json_encode(array('error' => 0, 'msg' => "Mensaje enviado")); break; }
function authPxp($headersArray) { $_SESSION["_SESION"] = new CTSesion(); $_SESSION["_tipo_aute"] = 'REST'; $mensaje = ''; //listar usuario con Pxp-User del header $objParam = new CTParametro('', null, null, '../../sis_seguridad/control/Usuario/listarUsuario'); $objParam->addParametro('usuario', $headersArray['Pxp-User']); include_once dirname(__FILE__) . '/../../../sis_seguridad/modelo/MODUsuario.php'; $objFunSeguridad = new MODUsuario($objParam); $res = $objFunSeguridad->listarUsuarioSeguridad($objParam); if ($res->datos['contrasena'] == '') { $mensaje = "El Usuario no esta registrado en el sistema"; } //obtener la contrasena del usuario en md5 $md5Pass = $res->datos['contrasena']; //creamos array de request $reqArray = array(); if (!extension_loaded('mcrypt')) { if ($mensaje == '') { $mensaje = 'El modulo mcrypt no esta instalado en el servidor. No es posible utilizar REST en este momento'; } } if ($headersArray['Pxp-User'] == $headersArray['Php-Auth-User']) { $auxArray = explode('$$', fnDecrypt($headersArray['Php-Auth-Pw'], $md5Pass)); $headers = false; } else { //desencriptar usuario y contrasena $auxArray = explode('$$', fnDecrypt($headersArray['Php-Auth-User'], $md5Pass)); $headers = true; } if (count($auxArray) == 2 && ($auxArray[1] == $headersArray['Pxp-User'] || $auxArray[1] == $md5Pass)) { $reqArray['usuario'] = $headersArray['Pxp-User']; $reqArray['contrasena'] = $md5Pass; $reqArray['_tipo'] = 'restAuten'; //autentificar usuario en sistema //arma $JSON $JSON = json_encode($reqArray); $objParam = new CTParametro($JSON, null, null, '../../sis_seguridad/control/Auten/verificarCredenciales'); include_once dirname(__FILE__) . '/../../../sis_seguridad/control/ACTAuten.php'; //Instancia la clase dinamica para ejecutar la accion requerida eval('$cad = new ACTAuten($objParam);'); eval('$cad->verificarCredenciales();'); } else { if ($mensaje == '') { $mensaje = "Contrasena invalida para el usuario : " . $headersArray['Pxp-User']; } } if ($mensaje != '') { $men = new Mensaje(); $men->setMensaje('ERROR', 'pxp/lib/rest/index.php Linea: 131', $mensaje, 'Codigo de error: AUTEN', 'control', '', '', 'OTRO', ''); //rac 21092011 $men->imprimirRespuesta($men->generarJson(), '401'); exit; } }
function reporteSolicitud() { $dataSource = new DataSource(); $idSolicitud = $this->objParam->getParametro('id_solicitud'); //$this->objParam->addParametroConsulta('id_plan_mant',$idPlanMant); $this->objParam->addParametroConsulta('ordenacion', 'id_solicitud'); $this->objParam->addParametroConsulta('dir_ordenacion', 'ASC'); $this->objParam->addParametroConsulta('cantidad', 1000); $this->objParam->addParametroConsulta('puntero', 0); $this->objFunc = $this->create('MODSolicitud'); $resultSolicitud = $this->objFunc->reporteSolicitud(); $datosSolicitud = $resultSolicitud->getDatos(); //armamos el array parametros y metemos ahi los data sets de las otras tablas $dataSource->putParameter('id_solicitud', $datosSolicitud[0]['id_solicitud']); $dataSource->putParameter('numero', $datosSolicitud[0]['numero']); $dataSource->putParameter('fecha_apro', $datosSolicitud[0]['fecha_apro']); $dataSource->putParameter('desc_moneda', $datosSolicitud[0]['desc_moneda']); $dataSource->putParameter('tipo', $datosSolicitud[0]['tipo']); $dataSource->putParameter('desc_gestion', $datosSolicitud[0]['desc_gestion']); $dataSource->putParameter('fecha_soli', $datosSolicitud[0]['fecha_soli']); $dataSource->putParameter('desc_categoria_compra', $datosSolicitud[0]['desc_categoria_compra']); $dataSource->putParameter('desc_proceso_macro', $datosSolicitud[0]['desc_proceso_macro']); $dataSource->putParameter('desc_funcionario', $datosSolicitud[0]['desc_funcionario']); $dataSource->putParameter('desc_uo', $datosSolicitud[0]['desc_uo']); $dataSource->putParameter('desc_depto', $datosSolicitud[0]['desc_depto']); $dataSource->putParameter('justificacion', $datosSolicitud[0]['justificacion']); $dataSource->putParameter('lugar_entrega', $datosSolicitud[0]['lugar_entrega']); $dataSource->putParameter('comite_calificacion', $datosSolicitud[0]['comite_calificacion']); $dataSource->putParameter('posibles_proveedores', $datosSolicitud[0]['posibles_proveedores']); $dataSource->putParameter('desc_funcionario_apro', $datosSolicitud[0]['desc_funcionario_apro']); //get detalle //Reset all extra params: $this->objParam->defecto('ordenacion', 'id_solicitud_det'); $this->objParam->defecto('cantidad', 1000); $this->objParam->defecto('puntero', 0); $this->objParam->addParametro('id_solicitud', $idSolicitud); $modSolicitudDet = $this->create('MODSolicitudDet'); $resultSolicitudDet = $modSolicitudDet->listarSolicitudDet(); $solicitudDetAgrupado = $this->groupArray($resultSolicitudDet->getDatos(), 'codigo_partida', 'desc_centro_costo'); $solicitudDetDataSource = new DataSource(); $solicitudDetDataSource->setDataSet($solicitudDetAgrupado); $dataSource->putParameter('detalleDataSource', $solicitudDetDataSource); //build the report $reporte = new RSolicitudCompra(); $reporte->setDataSource($dataSource); $nombreArchivo = 'SolicitudCompra.pdf'; $reportWriter = new ReportWriter($reporte, dirname(__FILE__) . '/../../reportes_generados/' . $nombreArchivo); $reportWriter->writeReport(ReportWriter::PDF); $mensajeExito = new Mensaje(); $mensajeExito->setMensaje('EXITO', 'Reporte.php', 'Reporte generado', 'Se generó con éxito el reporte: ' . $nombreArchivo, 'control'); $mensajeExito->setArchivoGenerado($nombreArchivo); $this->res = $mensajeExito; $this->res->imprimirRespuesta($this->res->generarJson()); }
function diagramaGanttTramite() { $dataSource = new DataSource(); //$idSolicitud = $this->objParam->getParametro('nro_tramite'); //$this->objParam->addParametroConsulta('id_plan_mant',$idPlanMant); $this->objParam->addParametroConsulta('ordenacion', 'nro_tramite'); $this->objParam->addParametroConsulta('dir_ordenacion', 'ASC'); $this->objParam->addParametroConsulta('cantidad', 1000); $this->objParam->addParametroConsulta('puntero', 0); $this->objFunc = $this->create('MODProcesoWf'); $resultSolicitud = $this->objFunc->listarGantWf(); if ($resultSolicitud->getTipo() == 'EXITO') { $datosSolicitud = $resultSolicitud->getDatos(); $dataSource->setDataset($datosSolicitud); $nombreArchivo = 'diagramaGanttTramite.png'; $diagramador = new DiagramadorGanttWF(); $diagramador->setDataSource($dataSource); $diagramador->graficar($nombreArchivo); $mensajeExito = new Mensaje(); $mensajeExito->setMensaje('EXITO', 'DiagramaGanttTramite.php', 'Diagrama Gantt de tramite generado', 'Se generó con éxito el diagrama para: ' . $nombreArchivo, 'control'); $mensajeExito->setArchivoGenerado($nombreArchivo); $this->res = $mensajeExito; $this->res->imprimirRespuesta($this->res->generarJson()); } else { $resultSolicitud->imprimirRespuesta($resultSolicitud->generarJson()); } }
function cuadroComparativo() { $dataSource = new DataSource(); $this->objParam->addParametroConsulta('ordenacion', 'id_proceso_compra'); $this->objParam->addParametroConsulta('dir_ordenacion', 'ASC'); $this->objParam->addParametroConsulta('cantidad', 1000); $this->objParam->addParametroConsulta('puntero', 0); $this->objFunc = $this->create('MODProcesoCompra'); $resultProcesoCompra = $this->objFunc->listarProcesoCompraPedido(); $datosProcesoCompra = $resultProcesoCompra->getDatos(); $idSolicitud = $datosProcesoCompra[0]['id_solicitud']; //armamos el array parametros y metemos ahi los data sets de las otras tablas $dataSource->putParameter('id_proceso_compra', $datosProcesoCompra[0]['id_proceso_compra']); $dataSource->putParameter('codigo_proceso', $datosProcesoCompra[0]['codigo_proceso']); $dataSource->putParameter('desc_solicitud', $datosProcesoCompra[0]['desc_solicitud']); $this->objParam->addParametroConsulta('ordenacion', 'id_solicitud_det'); $this->objParam->addParametroConsulta('cantidad', 1000); $this->objParam->addParametroConsulta('puntero', 0); $this->objParam->addParametro('id_solicitud', $idSolicitud); $modSolicitudDet = $this->create('MODSolicitudDet'); $resultSolicitudDet = $modSolicitudDet->listarSolicitudDet(); $datosResultSolicitudDet = $resultSolicitudDet->getDatos(); //var_dump($datosResultSolicitudDet); $solicitudDetDataSource = new DataSource(); $solicitudDetDataSource->setDataSet($datosResultSolicitudDet); $dataSource->putParameter('detalleSolicitudDataSource', $solicitudDetDataSource); //get detalle //Reset all extra params: $this->objParam->addParametroConsulta('ordenacion', 'id_cotizacion'); $this->objParam->addParametroConsulta('cantidad', 1000); $this->objParam->addParametroConsulta('puntero', 0); //$this->objParam->addParametro('id_analisis_mant', $idAnalisisMant); $modCotizacion = $this->create('MODCotizacion'); $resultCotizacion = $modCotizacion->listarCotizacion(); $datosResultCotizacion = $resultCotizacion->getDatos(); for ($i = 0; $i < count($datosResultCotizacion); $i++) { $idCotizacion = $datosResultCotizacion[$i]['id_cotizacion']; $this->objParam->addParametroConsulta('ordenacion', 'id_cotizacion_det'); $this->objParam->addParametroConsulta('cantidad', 1000); $this->objParam->addParametroConsulta('puntero', 0); $this->objParam->addParametro('id_cotizacion', $idCotizacion); $modCotizacionDet = $this->create('MODCotizacionDet'); $resultCotizacionDet = $modCotizacionDet->listarCotizacionDet(); $datosResultCotizacionDet = $resultCotizacionDet->getDatos(); $resultCotizacionDet->setDatos($datosResultCotizacionDet); $cotizacionDetDataSource = new DataSource(); $cotizacionDetDataSource->setDataSet($resultCotizacionDet->getDatos()); $datosResultCotizacion[$i]['dataset'] = $cotizacionDetDataSource; } $resultCotizacion->setDatos($datosResultCotizacion); $cotizacionDataSource = new DataSource(); $cotizacionDataSource->setDataSet($resultCotizacion->getDatos()); $dataSource->putParameter('cotizacionDataSource', $cotizacionDataSource); //build the report $reporte = new RCuadroComparativo(); $reporte->setDataSource($dataSource); $nombreArchivo = 'CuadroComparativo.xls'; $reportWriter = new ReportWriter($reporte, dirname(__FILE__) . '/../../reportes_generados/' . $nombreArchivo); $reportWriter->writeReport('xls'); $mensajeExito = new Mensaje(); $mensajeExito->setMensaje('EXITO', 'Reporte.php', 'Reporte generado', 'Se generó con éxito el reporte: ' . $nombreArchivo, 'control'); $mensajeExito->setArchivoGenerado($nombreArchivo); $this->res = $mensajeExito; $this->res->imprimirRespuesta($this->res->generarJson()); }