<?php session_start(); require_once '../CN/clsCNEnc.php'; require_once '../CN/clsCNUsu.php'; require_once '../general/funcionesGenerales.php'; //Control de Permisos. Hay que incluirlo en todas las páginas /**************************************************************/ $lngPagina = '43,507'; //le paso la funcion de comprobacion de permisos AccesoUsuarioPagina($lngPagina, $_SESSION['usuario']); $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); $clsCNUsu = new clsCNUsu(); $clsCNUsu->setStrBD($_SESSION['mapeo']); if (isset($_GET['num'])) { $num = $_GET['num'] + 1; $id = $_POST['id']; //echo $num; } else { //Esto significa que es la primera vez que no Existe la variable $id = $_GET['id']; $num = 0; } //comprobamos si se ha submitido el formulario if (isset($_POST['cmdRespuesta']) && $_POST['cmdRespuesta'] == 'Responder') { logger('info', basename($_SERVER['PHP_SELF']) . '-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . " ||||Medición, Análisis y Mejora->Satisfacción del Cliente->Responder Encuesta|||| Ha pulsado 'Responder'"); logger('encuesta_respuesta', basename($_SERVER['PHP_SELF']) . '-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . " IdEncuesta: " . $id . " -> Pregunta {$z}: GUARDADO DATOS:"); //TENEMOS QUE DESARROLLAR EL ALTA DE LAS ENCUESTAS //TANTO INVIDUALES COMO POR BLOQUES $datosEncuesta = $clsCNEnc->DatosEncuesta($id);
<?php session_start(); require_once '../CN/clsCNEnc.php'; require_once '../CN/clsCNUsu.php'; require_once '../general/funcionesGenerales.php'; //Control de Permisos. Hay que incluirlo en todas las páginas /* * *********************************************************** */ $lngPagina = '45,509'; //le paso la funcion de comprobacion de permisos AccesoUsuarioPagina($lngPagina, $_SESSION['usuario']); $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); $clsCNUsu = new clsCNUsu(); $clsCNUsu->setStrBD($_SESSION['mapeo']); //comprobamos si se ha submitido el formulario if (isset($_POST['cmdAltaCierre']) && $_POST['cmdAltaCierre'] == 'Aceptar') { //CREO QUE ESTO NO VALE 23/6/2015 //vemos el valor de lngAccion $aux = ''; if ($_POST['lngAccion'] == 0) { $aux = $_POST['strDescAccion']; } else { $aux = "Información detallada en la ACP"; } //realizamos la modificacion de la solucion $valor = $clsCNEnc->Cierre($_POST["Id"], $aux, $_POST["lngAccion"]); if ($valor == true) { if ($_POST['lngAccion'] == '1') { echo '<META HTTP-EQUIV=Refresh CONTENT="0; URL=../vista/acpalta.php?Id=' . $_POST["Id"] . '&datFechaReclamacion=' . $_POST['datFechaReclamacion'] . '&ori=' . $_POST['ori'] . '&strDescAccion=' . $_POST['strDescAccion'] . '&lngAccion=' . $_POST['lngAccion'] . '&lngIdAccion=' . $_POST['lngIdAccion'] . '&txtDescProblema=' . $_POST['txtDescProblema'] . '">'; } else {
<?php session_start(); require_once '../CN/clsCNEnc.php'; require_once '../CN/clsCNUsu.php'; require_once '../general/funcionesGenerales.php'; //Control de Permisos. Hay que incluirlo en todas las páginas /**************************************************************/ $lngPagina = '42,504'; //le paso la funcion de comprobacion de permisos AccesoUsuarioPagina($lngPagina, $_SESSION['usuario']); $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); $clsCNUsu = new clsCNUsu(); $clsCNUsu->setStrBD($_SESSION['mapeo']); //buscamos el 'mapeo' de la BBDD del cliente require_once '../CAD/clsCADLogin.php'; $clsCADLogin = new clsCADLogin(); $idEmpresa = $clsCADLogin->getIdEmpresa($_SESSION['dbEmpresas'], $_SESSION['base']); //comprobamos si se ha submitido el formulario if (isset($_POST['cmdAltaCierre']) && $_POST['cmdAltaCierre'] == 'Aceptar') { //vemos el valor de lngAccion $aux = ''; if ($_POST['lngAccion'] == 0) { $aux = $_POST['strDescAccion']; } else { $aux = "Información detallada en la ACP"; } //realizamos la modificacion de la solucion $valor = $clsCNEnc->Cierre($_POST["Id"], $aux, $_POST["lngAccion"]); if ($valor == true) {
<?php session_start(); require_once '../CN/clsCNEnc.php'; require_once '../CN/clsCNUsu.php'; require_once '../general/funcionesGenerales.php'; //Control de Permisos. Hay que incluirlo en todas las páginas /**************************************************************/ $lngPagina = '74,503'; //le paso la funcion de comprobacion de permisos AccesoUsuarioPagina($lngPagina, $_SESSION['usuario']); $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); $clsCNUsu = new clsCNUsu(); $clsCNUsu->setStrBD($_SESSION['mapeo']); //comprobamos si se ha submitido el formulario if (isset($_POST['cmdOpcion']) && $_POST['cmdOpcion'] === 'Aprobar') { //realizamos la Arpobación require_once '../CAD/clsCADEnc.php'; $clsCADEnc = new clsCADEnc(); $clsCADEnc->setStrBD($_SESSION['mapeo']); $valor = $clsCADEnc->AprobarEncuesta($_POST['idEnc'], $_SESSION['usuario']); if ($valor == true) { echo '<META HTTP-EQUIV=Refresh CONTENT="0; URL=../vista/exito.php?Id=Se aprobado correctamente la encuesta.">'; } else { echo '<META HTTP-EQUIV=Refresh CONTENT="0; URL=../vista/error.php?id=' . $valor . '">'; } } if (isset($_POST['cmdOpcion']) && $_POST['cmdOpcion'] === 'Rechazar') { //realizamos la Arpobación require_once '../CAD/clsCADEnc.php';
<tr align="center"> <td colspan="5"> <input type="Reset" class="button" value="Vaciar Datos" name="cmdReset"/> <input type="button" class="button" value="Consultar" name="cmdConsultar" onclick="javascript:validar();" /> <input name="cmdListar" type="hidden" value="OK"/> </td> </tr> </table> </div> </form> <?php //aqui detectamos que hemos pulsado al boton 'Consultar' //por lo que cojemos los parametros de los filtros, hacemos la consulta y la presentamos // if(isset($_GET['cmdListar'])&&$_GET['cmdListar']=='OK'){ require_once '../CN/clsCNEnc.php'; $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); //extraigo el cargo del usuario actual ($_SESSION['strUsuario']) $pet = $clsCNEnc->ObtenerCargoUsuario($_SESSION['strUsuario']); logger('info', 'enclist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . '-Variable $pet: ' . $pet); //compruebo $cargoUsuario = ''; if ($pet != -1) { $cargoUsuario = $pet; } else { $cargoUsuario = 'Administrador'; } //recojemos los parametros de los filtros $strNumDesde = $_GET['strNumDesde']; $strNumHasta = $_GET['strNumHasta']; $datAltaDesde = $_GET['datAltaDesde'];
//Paso 1 -- Verificar el tipo de envío que se realiza. Si es individual, en grupo o por csv. //Paso 2 -- Comprobar el tipo de envío/body que queremos enviar. //Paso 3 -- //strEmailRuta, grupoclientes, file if ($_POST['strEmailRuta'] != '') { $individual = 1; //1 si es sólo a un particular $idCliente = 0; EnviaCorreos($_POST['correoRemitente'], $_POST['remitente'], $_POST['strEmailRuta'], $_POST['optCri013'], $individual, $idCliente, $_POST['strMail'], '', $_POST['asunto']); } else { if ($_POST['grupoclientes'] != '') { //Entonces significa que envía a un grupo //Preparamos la función que nos devuelve los usuarios de un grupo en un array de dos posiciones 1 Id y 2 el mail $individual = 2; //2 si es un grupo $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); $UsuariosGrupo = $clsCNEnc->ObtieneUsuariosGrupo($_POST['grupoclientes']); // for ($i=0; $i < count($UsuariosGrupo); $i++) // { // //EnviaCorreos ($_POST['correoRemitente'], $_POST['remitente'],$UsuariosGrupo[$i]['strCorreo'], $_POST['optCri013'],$individual, $UsuariosGrupo[$i]['lngId']); // } // print_r ($UsuariosGrupo); } else { if ($_POST['file'] != '') { $valor = 'Esta opción aun no se encuentra implementada. Disculpe las molestias.'; echo '<META HTTP-EQUIV=Refresh CONTENT="0; URL=../vista/error.php?id=' . $valor . '">'; } } } //ahora veo las opciones de formato 'optCri013'
<?php session_start(); require_once '../CN/clsCNEnc.php'; require_once '../CN/clsCNUsu.php'; require_once '../general/funcionesGenerales.php'; $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); $clsCNUsu = new clsCNUsu(); $clsCNUsu->setStrBD($_SESSION['mapeo']); $nombre = "encuestas_respuesta.txt"; //ESTO VALDRA PARA NUMERAR DISTINTAS PAGINAS 5-11-2015 if (isset($_GET['num'])) { $num = $_GET['num'] + 1; $id = $_POST['id']; //echo $num; } else { //Esto significa que es la primera vez que no Existe la variable $id = $_GET['id']; $num = 0; } //comprobamos si se ha submitido el formulario if (isset($_POST['cmdRespuesta']) && $_POST['cmdRespuesta'] == 'Responder') { //ESCRIBO EN EL LOG EL POST A LO BRUTO if (isset($_POST) && !empty($_POST)) { $ddf = fopen('../log/' . $_SESSION['base'] . '/' . $nombre, 'a'); date_default_timezone_set('Europe/Madrid'); $texto = "POST:"; fwrite($ddf, "[" . date("r") . "] {$texto}\n"); fclose($ddf); foreach ($_POST as $key => $value) {
<?php session_start(); require_once '../CN/clsCNEnc.php'; $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); $lngIdEncuesta = $_POST['lngIdEncuesta']; $lngNumPregunta = $_POST['lngNumPregunta']; $desde = $_POST['desde']; $hasta = $_POST['hasta']; //extraigo los resultados de esta pregunta tipo 1 $listadoPregunta = $clsCNEnc->listadoTipo1($lngIdEncuesta, $lngNumPregunta, $desde, $hasta); if (is_array($listadoPregunta)) { ?> <script> function onOff(Id){ $('#cli'+Id).toggle('500'); } </script> <style> </style> <table style="width: 100%;" border="0"> <tr style="background: #D7DADB;"> <td width="10%" height="18"><b>Número Respuesta</b></td> <td width="10%"><b>Id Cliente</b></td> <td width="80%"><b>Respuesta</b></td> </tr> <?php $colorImpar = "#FFEEAA";
$strOpc1, $lngOpc1, $strOpc2, $lngOpc2, $strOpc3,$lngOpc3,$strOpc4,$lngOpc4,$strOpc5,$lngOpc5, $strOpc6,$lngOpc6,$strOpc7,$lngOpc7,$strOpc8,$lngOpc8,$strOpc9,$lngOpc9,$strOpc10,$lngOpc10, $strSimMult */ $lngNumPregunta = 0; $lngNumSubPregunta = 0; $TipoPregunta = $_POST['TipoPregunta']; $strDescripcion = " "; $varRes = $clsCNEnc->AltaPregunta($numEnc, $_SESSION['usuario'], $lngNumPregunta, $lngNumSubPregunta, $TipoPregunta, $strDescripcion, $strPregunta, $strOpc1, $lngOpc1, $strOpc2, $lngOpc2, $strOpc3, $lngOpc3, $strOpc4, $lngOpc4, $strOpc5, $lngOpc5, $strOpc6, $lngOpc6, $strOpc7, $lngOpc7, $strOpc8, $lngOpc8, $strOpc9, $lngOpc9, $strOpc10, $lngOpc10, $strSimpleMultiple); //echo $varRes; } //codigo principal //comprobamos si se ha submitido el formulario DE LA CABECERA if (isset($_POST['cmdAlta'])) { //logger('info','encalta.php-' ,"Usuario: ".$_SESSION['strUsuario'].', Empresa: '.$_SESSION['base'].', SesionID: '. session_id(). " ||||Alta de Datos principales de Encuesta->Encuesta->Alta|| Ha pulsado 'Guardar Datos'"); $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); $num = $clsCNEnc->IdEncuesta(); $varRes = $clsCNEnc->Alta($num, $_SESSION['usuario'], $_POST['strCodigo'], $_POST['strNombre'], $_POST['strIdioma'], $_POST['PreguntasXBloque'], $_POST['optCri013'], $_POST['strDescripcion'], $_POST['FechaInicio'], $_POST['FechaFin'], ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '); //Este es el Id Encuesta que se ha dado de alta en la cabecera. if ($varRes != "false" && $varRes != "No se puede realizar el Alta.") { $IdEncuestaCabecera = $varRes; $_SESSION['IdEncuesta'] = $varRes; } else { //si tiene datos de errores se indica logger('ERROR', 'encalta.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . " ||||Alta encuestas || Problema en alta de Encuesta en Insercion en BBDD"); echo '<META HTTP-EQUIV=Refresh CONTENT="0; URL=../vista/error.php?id=' . $varRes . '">'; } /* header('Location: encaltapreg.php');
// } // return $strHTML; //} //codigo principal //comprobamos si se ha submitido el formulario if (isset($_POST['cmdAlta'])) { header('Location: encaltapreg.php'); echo "HJOLA"; die; logger('info', 'encalta.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . " ||||Medición, Análisis y Mejora->Quejas y Reclamaciones->Alta|| Ha pulsado 'Guardar Datos'"); if (isset($_POST['selAprobar'])) { $adjunto = 'true'; } else { $adjunto = 'false'; } $clsCNRecl = new clsCNEnc(); $clsCNRecl->setStrBD($_SESSION['mapeo']); if ($_POST['strTipReclamacion'] != $_POST['strProductos2']) { $mystrTipo = $_POST['strTipReclamacion']; $varRes = $clsCNRecl->AltaTipificaciones($mystrTipo); if (!$varRes) { logger('ERROR', 'reclalta.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . " ||||Medición, Análisis y Mejora->Quejas y Reclamaciones->Alta|| Ha pulsado 'Guardar Datos'"); echo '<META HTTP-EQUIV=Refresh CONTENT="0; URL=../vista/error.php?id=Se ha producido un error al Insertar la Tipificacion ' . $mystrTipo . ' introducida por el usuario ' . $_SESSION['usuario'] . '">'; } } //$strFax=''; if (!isset($_POST['strFax'])) { $strFax = ''; } //' Fin introduccion de No conformidad // $clsCNRecl=new clsCNRecl();
<?php session_start(); require_once '../general/funcionesGenerales.php'; require_once '../CN/clsCNEnc.php'; $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); //Control de Permisos. Hay que incluirlo en todas las páginas /**************************************************************/ $lngPagina = '100,957'; //le paso la funcion de comprobacion de permisos AccesoUsuarioPagina($lngPagina, $_SESSION['usuario']); //primero sincronizo los datos de dos tablas //"tbclientes" tiene un campo lngAux (estado) que 0=SI enviar y 1= NO envia //en la tabla "tbencuestascontestadas" estan llas respustas de los clientes //cuando respondan los clientes se guardan hay los datos y se debe cambiar el valor //tbclientes.lngAux = 1 porque ya se a contestado y no se debe enviar mas veces //esto se debe hacer al guardar la respuesta del cliente, pero por si falla lo sincronizamos en este momento //todas las encuestas respondidas se pondra lngAux=1 del cliente $OK = $clsCNEnc->sincronizarTablasTbClientesYTbencuestasContestadas(); //veo si vengo por post (es que he pinchado en hacer alguna accion del boton OK) if (isset($_POST['opcion']) && $_POST['opcion'] !== '') { //preparo un array con los cl* que vengan, son los clientes seleccionados $idClientes = ''; foreach ($_POST as $key => $value) { if (substr($key, 0, 2) === 'cl') { $idClientes[] = substr($key, 2, strlen($key)); } } //ahora segun la opcion que venga hago el cambio //como son cambiar de grupos hago el cambio directamente en la tabla tbclientes.lngCategoria
<?php session_start(); require_once '../CN/clsCNEnc.php'; require_once '../CN/clsCNUsu.php'; require_once '../general/funcionesGenerales.php'; //Control de Permisos. Hay que incluirlo en todas las páginas /**************************************************************/ $lngPagina = '44,508'; //le paso la funcion de comprobacion de permisos AccesoUsuarioPagina($lngPagina, $_SESSION['usuario']); $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); $clsCNUsu = new clsCNUsu(); $clsCNUsu->setStrBD($_SESSION['mapeo']); //comprobamos si se ha submitido el formulario if (isset($_POST['cmdAltaCierre']) && $_POST['cmdAltaCierre'] == 'Aceptar') { //vemos el valor de lngAccion $aux = ''; if ($_POST['lngAccion'] == 0) { $aux = $_POST['strDescAccion']; } else { $aux = "Información detallada en la ACP"; } //realizamos la modificacion de la solucion $valor = $clsCNEnc->Cierre($_POST["Id"], $aux, $_POST["lngAccion"]); if ($valor == true) { if ($_POST['lngAccion'] == '1') { echo '<META HTTP-EQUIV=Refresh CONTENT="0; URL=../vista/acpalta.php?Id=' . $_POST["Id"] . '&datFechaReclamacion=' . $_POST['datFechaReclamacion'] . '&ori=' . $_POST['ori'] . '&strDescAccion=' . $_POST['strDescAccion'] . '&lngAccion=' . $_POST['lngAccion'] . '&lngIdAccion=' . $_POST['lngIdAccion'] . '&txtDescProblema=' . $_POST['txtDescProblema'] . '">'; } else { echo '<META HTTP-EQUIV=Refresh CONTENT="0; URL=../vista/exito.php?Id=Se ha realizado correctamente el cierre de una Reclamación">';
<?php session_start(); require_once '../CN/clsCNEnc.php'; $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); $lngIdEncuesta = $_POST['lngIdEncuesta']; $lngNumPregunta = $_POST['lngNumPregunta']; $opcion = $_POST['opcion']; $max = $_POST['max']; $desde = $_POST['desde']; $hasta = $_POST['hasta']; //extraigo los resultados de esta pregunta tipo 3 $listadoPregunta = $clsCNEnc->listadoTipo3($lngIdEncuesta, $lngNumPregunta, $opcion, $max, $desde, $hasta); if (is_array($listadoPregunta)) { //eje x, series $eje_x = "['SC',"; $series = "["; for ($i = 0; $i <= $max; $i++) { $eje_x = $eje_x . ($i + 1) . ","; if (isset($listadoPregunta[$i])) { $numero = $listadoPregunta[$i]; } else { $numero = 0; } $series = $series . $numero . ","; } //quitar la ultima coma $eje_x = substr($eje_x, 0, -1); $eje_x = $eje_x . "]"; // for ($i = 0; $i <= $max; $i++) {
private function generarDatosSQL($Id, $IdPunto) { require_once '../general/' . $_SESSION['mapeo']; $db = new Db(); $db->conectar($this->getStrBD()); switch ($IdPunto) { //PUNTO 1 //se recogen los datos del Punto 29 de la revision Id anterior, si los hay //sino se escribe un texto case '1': $strSQL = "\r\n SELECT D.texto\r\n FROM tbrevpuntosdatos D\r\n WHERE D.IdRevision = " . ($Id - 1) . "\r\n AND D.IdPunto = 29\r\n "; logger('traza', 'clsCADSist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADSist->generarDatosSQL()|| SQL : " . $strSQL); $stmt = $db->ejecutar($strSQL); $db->desconectar(); $respuesta = 'Sin puntos pendientes del acta anterior'; if ($stmt) { $row = mysql_fetch_array($stmt); if (!empty($row['texto'])) { $respuesta = $row['texto']; } } break; //PUNTO 2 //se recogen los datos del Punto 2 de la revision Id anterior, si los hay //sino se escribe un texto //PUNTO 2 //se recogen los datos del Punto 2 de la revision Id anterior, si los hay //sino se escribe un texto case '2': $strSQL = "\r\n SELECT D.texto\r\n FROM tbrevpuntosdatos D\r\n WHERE D.IdRevision = " . ($Id - 1) . "\r\n AND D.IdPunto = 2\r\n "; logger('traza', 'clsCADSist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADSist->generarDatosSQL()|| SQL : " . $strSQL); $stmt = $db->ejecutar($strSQL); $db->desconectar(); $respuesta = 'Sin cambios que podrían afectar al sistema del acta anterior'; if ($stmt) { $row = mysql_fetch_array($stmt); if (!empty($row['texto'])) { $respuesta = $row['texto']; } } break; //PUNTO 3 //se recogen los datos del Punto 3 de la revision Id anterior, si los hay //sino se escribe un texto //PUNTO 3 //se recogen los datos del Punto 3 de la revision Id anterior, si los hay //sino se escribe un texto case '3': $strSQL = "\r\n SELECT D.texto\r\n FROM tbrevpuntosdatos D\r\n WHERE D.IdRevision = " . ($Id - 1) . "\r\n AND D.IdPunto = 3\r\n "; logger('traza', 'clsCADSist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADSist->generarDatosSQL()|| SQL : " . $strSQL); $stmt = $db->ejecutar($strSQL); $db->desconectar(); $respuesta = 'Sin revisión de políticas de gestión del acta anterior'; if ($stmt) { $row = mysql_fetch_array($stmt); if (!empty($row['texto'])) { $respuesta = $row['texto']; } } break; //PUNTO 4 //ESTO NO ESTA BIEN, CREO, SE HA PREGUNTADO A JM 22/11/2016 //se recogen los datos del Punto 3 de la revision Id anterior, si los hay //sino se escribe un texto //PUNTO 4 //ESTO NO ESTA BIEN, CREO, SE HA PREGUNTADO A JM 22/11/2016 //se recogen los datos del Punto 3 de la revision Id anterior, si los hay //sino se escribe un texto case '4': //extraigo las fechas de la revision por el $Id $strSQL = "\r\n SELECT DATE_FORMAT(R.datFechaDesde,'%d/%m/%Y') AS Desde, DATE_FORMAT(R.datFechaHasta,'%d/%m/%Y') AS Hasta\r\n FROM tbrevisiones R\r\n WHERE R.lngId = {$Id}\r\n "; logger('traza', 'clsCADSist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADSist->generarDatosSQL()|| SQL : " . $strSQL); $stmt = $db->ejecutar($strSQL); if ($stmt) { $row = mysql_fetch_array($stmt); } else { return false; } //extraigo las fechas de la revision por el $Id $strSQL = "\r\n SELECT CASE F.Tipo WHEN 'D' THEN 'Debilidad' WHEN 'A' THEN 'Amenaza' WHEN 'F' THEN 'Fortaleza' WHEN 'O' THEN 'Oportunidad' END AS Tipo, F.Factor, F.Clasificacion, DATE_FORMAT(F.Fecha,'%d/%m/%Y') AS Fecha\r\n FROM tbfactores F\r\n WHERE F.Fecha BETWEEN '" . fecha_to_DATETIME($row['Desde']) . "' AND '" . fecha_to_DATETIME_F($row['Hasta']) . "'\r\n "; logger('traza', 'clsCADSist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADSist->generarDatosSQL()|| SQL : " . $strSQL); $stmt = $db->ejecutar($strSQL); $db->desconectar(); $resultado = ''; if ($stmt) { while ($row = mysql_fetch_array($stmt)) { $reg = ''; foreach ($row as $propiedad => $valor) { if (!is_numeric($propiedad)) { $reg[$propiedad] = $valor; } } $resultado[] = $reg; } } if (!empty($resultado)) { //es un array con el listado, preparo una tabla en html $respuesta = "Datos de los factores en el análisis de contexto<br/><table>"; $respuesta = $respuesta . "<tr><td><b>Tipo</b></td><td><b>Factor</b></td><td><b>Clasificación</b></td><td><b>Fecha</b></td></tr>"; for ($i = 0; $i < count($resultado); $i++) { $respuesta = $respuesta . "<tr>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['Tipo'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['Factor'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['Clasificacion'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['Fecha'] . "</td></tr>"; } $respuesta = $respuesta . "</table><br/><br/>"; } break; //PUNTO 5 //1º Aquí deberíamos mostrar todas las partes interesadas que tengan alguna valoración en el período seleccionado. //El resultado debería ser el Id y el nombre de la parte interesada y las valoraciones del período //PUNTO 5 //1º Aquí deberíamos mostrar todas las partes interesadas que tengan alguna valoración en el período seleccionado. //El resultado debería ser el Id y el nombre de la parte interesada y las valoraciones del período case '5': //extraigo las fechas de la revision por el $Id $strSQL = "\r\n SELECT DATE_FORMAT(R.datFechaDesde,'%d/%m/%Y') AS Desde, DATE_FORMAT(R.datFechaHasta,'%d/%m/%Y') AS Hasta\r\n FROM tbrevisiones R\r\n WHERE R.lngId = {$Id}\r\n "; logger('traza', 'clsCADSist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADSist->generarDatosSQL()|| SQL : " . $strSQL); $stmt = $db->ejecutar($strSQL); if ($stmt) { $row = mysql_fetch_array($stmt); } else { return false; } //ahora las PI con las valoraciones $strSQL = "\r\n SELECT PI.IdPI, PI.Parte, V.responsabilidad, V.influencia, V.cercania, V.dependencia, \r\n V.representacion, V.total, CONCAT(E.strNombre,' ',E.strApellidos) AS Empleado, DATE_FORMAT(V.Fecha,'%d/%m/%Y') AS Fecha\r\n FROM tbpi_pi_interesadas PI, tbpi_valor V, tbempleados E\r\n WHERE PI.IdPI=V.IdParte\r\n AND V.Empleado=E.lngIdEmpleado\r\n AND V.Fecha BETWEEN '" . fecha_to_DATETIME($row['Desde']) . "' AND '" . fecha_to_DATETIME_F($row['Hasta']) . "'\r\n AND V.borrado = 1\r\n "; $stmt = $db->ejecutar($strSQL); $db->desconectar(); $respuesta = ''; if ($stmt) { while ($row = mysql_fetch_array($stmt)) { $reg = ''; foreach ($row as $propiedad => $valor) { if (!is_numeric($propiedad)) { $reg[$propiedad] = $valor; } } $resultado[] = $reg; } } if (!empty($resultado)) { //es un array con el listado, preparo una tabla en html $respuesta = "Datos de las valoraciones de las partes Interesadas<br/><table>"; $respuesta = $respuesta . "<tr><td>Id</td><td><b>Parte</b></td><td><b>Responsabilidad</b></td><td><b>Influencia</b></td><td><b>Cercania</b></td><td><b>Dependencia</b></td><td><b>Representación</b></td><td><b>Total</b></td><td><b>Empleado</b></td><td><b>Fecha</b></td></tr>"; for ($i = 0; $i < count($resultado); $i++) { $respuesta = $respuesta . "<tr>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['IdPI'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['Parte'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['responsabilidad'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['influencia'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['cercania'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['dependencia'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['representacion'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['total'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['Empleado'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['Fecha'] . "</td></tr>"; } $respuesta = $respuesta . "</table>"; } //2º todas las partes interesadas que tengan acciones dadas de alta en el período seleccionado $strSQL = "\r\n SELECT PI.IdPI, PI.Parte, A.Compromisos\r\n FROM tbpi_pi_interesadas PI, tbpi_acciones A\r\n WHERE PI.IdPI=A.IdParte\r\n AND A.Fecha BETWEEN '" . fecha_to_DATETIME($row['Desde']) . "' AND '" . fecha_to_DATETIME_F($row['Hasta']) . "'\r\n AND A.borrado = 1\r\n "; $db->conectar($this->getStrBD()); $stmt = $db->ejecutar($strSQL); $db->desconectar(); if ($stmt) { while ($row = mysql_fetch_array($stmt)) { $reg = ''; foreach ($row as $propiedad => $valor) { if (!is_numeric($propiedad)) { $reg[$propiedad] = $valor; } } $resultado[] = $reg; } } if (!empty($resultado)) { //es un array con el listado, preparo una tabla en html $respuesta = $respuesta . "Datos de las acciones de las partes Interesadas<br/><table>"; $respuesta = $respuesta . "<tr><td>Id</td><td><b>Parte</b></td><td><b>Compromisos</b></td></tr>"; for ($i = 0; $i < count($resultado); $i++) { $respuesta = $respuesta . "<tr>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['IdPI'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['Parte'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['Compromisos'] . "</td></tr>"; } $respuesta = $respuesta . "</table>"; } break; //PUNTO 6 //Aquí deberíamos mostrar encuestas dadas de alta y aprobadas, y en cada una de ellas el numero de respuestas y lo que han respondido. //PUNTO 6 //Aquí deberíamos mostrar encuestas dadas de alta y aprobadas, y en cada una de ellas el numero de respuestas y lo que han respondido. case '6': require_once '../CN/clsCNEnc.php'; $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); //extraigo las fechas de la revision por el $Id $strSQL = "\r\n SELECT DATE_FORMAT(R.datFechaDesde,'%d/%m/%Y') AS Desde, DATE_FORMAT(R.datFechaHasta,'%d/%m/%Y') AS Hasta\r\n FROM tbrevisiones R\r\n WHERE R.lngId = {$Id}\r\n "; logger('traza', 'clsCADSist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADSist->generarDatosSQL()|| SQL : " . $strSQL); $stmt = $db->ejecutar($strSQL); if ($stmt) { $fecha = mysql_fetch_array($stmt); } else { return false; } //ahora los datos de las encuestas $strSQL = "\r\n SELECT E.lngId, E.strNombre, DATE_FORMAT(E.datFecha,'%d/%m/%Y') AS datFecha, concat_ws(' ', E1.strNombre, E1.strApellidos) as responsable, E.numPreguntas, E.lngEstado, E.datFechaIni, E.datFechaFin\r\n FROM cabeceraencuesta E, tbempleados E1\r\n WHERE E.lngIdEmpleado = E1.lngIdEmpleado AND E.lngEstado = 1\r\n AND E.datFechaAprobado BETWEEN '" . fecha_to_DATETIME($fecha['Desde']) . "' AND '" . fecha_to_DATETIME_F($fecha['Hasta']) . "'\r\n "; $stmt = $db->ejecutar($strSQL); $db->desconectar(); $resultado = ''; if ($stmt) { while ($row = mysql_fetch_array($stmt)) { $reg = ''; foreach ($row as $propiedad => $valor) { if (!is_numeric($propiedad)) { $reg[$propiedad] = $valor; } } $resultado[] = $reg; } } //ahora añadimos las preguntas con el numero de respuestas $encuestas = ''; if (is_array($resultado)) { for ($i = 0; $i < count($resultado); $i++) { $strSQL = "\r\n SELECT DISTINCT L.lngNumPregunta,L.lngTipo,L.strPreguntas\r\n FROM lineasencuesta L, tbresultados_esp E, tbrespuestas RE\r\n WHERE L.lngIdEncuesta = " . $resultado[$i]['lngId'] . "\r\n AND L.lngIdEncuesta = E.lngIdEncuesta\r\n AND L.lngNumPregunta = E.lngNumPregunta\r\n AND RE.lngIdEncuesta = E.lngIdEncuesta\r\n AND RE.lngIdRespuesta = E.lngNumResp\r\n AND RE.datFecha BETWEEN '" . fecha_to_DATETIME($fecha['Desde']) . "' AND '" . fecha_to_DATETIME_F($fecha['Hasta']) . "'\r\n "; $db->conectar($this->getStrBD()); $stmt = $db->ejecutar($strSQL); $db->desconectar(); if (!$stmt) { return false; } $respuestasEncuesta = ''; while ($row = mysql_fetch_array($stmt)) { $reg = ''; foreach ($row as $propiedad => $valor) { if (!is_numeric($propiedad)) { $reg[$propiedad] = $valor; } } $respuestasEncuesta[] = $reg; } //ahora preparo un array con los calculos sobre estos datos $datosEncuesta['IdEncuesta'] = $resultado[$i]['lngId']; $datosEncuesta['Nombre'] = $resultado[$i]['strNombre']; $datosEncuesta['datos'] = ''; if (is_array($respuestasEncuesta)) { for ($ii = 0; $ii < count($respuestasEncuesta); $ii++) { $lngIdEncuesta = $resultado[$i]['lngId']; $lngNumPregunta = $respuestasEncuesta[$ii]['lngNumPregunta']; $desde = $fecha['Desde']; $hasta = $fecha['Hasta']; if ($respuestasEncuesta[$ii]['lngTipo'] === '1' || $respuestasEncuesta[$ii]['lngTipo'] === '4') { //extraigo los resultados de esta pregunta tipo 1 o 4 $listadoPregunta = $clsCNEnc->listadoTipo1($lngIdEncuesta, $lngNumPregunta, $desde, $hasta); $preguntaNueva['Pregunta'] = $respuestasEncuesta[$ii]['strPreguntas']; $preguntaNueva['Respuesta'] = $listadoPregunta; $preguntaNueva['Tipo'] = '1'; $datosEncuesta['datos'][] = $preguntaNueva; } else { if ($respuestasEncuesta[$ii]['lngTipo'] === '2') { //extraigo los resultados de esta pregunta tipo 2 $listadoPregunta = $clsCNEnc->listadoTipo2($lngIdEncuesta, $lngNumPregunta, $desde, $hasta); //var_dump($listadoPregunta);die; $preguntaNueva['Pregunta'] = $respuestasEncuesta[$ii]['strPreguntas']; $preguntaNueva['Respuesta'] = $listadoPregunta; $preguntaNueva['Tipo'] = '2'; $datosEncuesta['datos'][] = $preguntaNueva; } else { if ($respuestasEncuesta[$ii]['lngTipo'] === '3') { //extraigo los resultados de esta pregunta tipo 3 //listado de opciones $listado = $clsCNEnc->listadoOpcionesPreguntaTipo3($lngIdEncuesta, $lngNumPregunta); $datos = ''; for ($ii2 = 1; $ii2 <= count($listado); $ii2++) { $listadoPregunta = $clsCNEnc->listadoTipo3($lngIdEncuesta, $lngNumPregunta, $ii2, $listado[$ii2]['max'], $desde, $hasta); $opciones['opcion'] = $listado[$ii2]['descripcion']; $opciones['resultado'] = $listadoPregunta; $opciones['max'] = $listado[$ii2]['max']; $datos[] = $opciones; } $preguntaNueva['Pregunta'] = $respuestasEncuesta[$ii]['strPreguntas']; $preguntaNueva['Respuesta'] = $datos; $preguntaNueva['Tipo'] = '3'; $datosEncuesta['datos'][] = $preguntaNueva; } } } } //ahora presento los datos de los campos "Nombre Cliente" y "Observaciones" $listadoSugerencias = $clsCNEnc->Sugerencias($resultado[$i]['lngId'], $fecha['Desde'], $fecha['Hasta']); $datosEncuesta['Sugerencias'] = $listadoSugerencias; $encuestas[] = $datosEncuesta; } } } //echo "voila"; //var_dump($encuestas[0]['datos'][2]['Respuesta'][0]);die; //ahora vamos a generar el html que se insertará, se hara un cuadro por cada encuesta $respuesta = "<p>Listado de las encuestas aprobadas</p><br/>"; if (is_array($encuestas)) { for ($i = 0; $i < count($encuestas); $i++) { $respuesta = $respuesta . "<h3>Nº: " . $encuestas[$i]['IdEncuesta'] . " - Nombre: " . $encuestas[$i]['Nombre'] . "</h3>"; //extraigo el numero de envio (tabla tbencuestasenvios) $numeroEnvios = $clsCNEnc->EncuestaEnvios($encuestas[$i]['IdEncuesta']); $respuesta = $respuesta . "Número de respuestas: " . count($encuestas[$i]['Sugerencias']) . "<br/><br/>"; $respuesta = $respuesta . "Número de Envíos: " . $numeroEnvios . "<br/><br/>"; //ahora recorro las preguntas for ($k = 0; $k < count($encuestas[$i]['datos']); $k++) { $respuesta = $respuesta . "<b>" . ($k + 1) . " - " . $encuestas[$i]['datos'][$k]['Pregunta'] . "</b><br/>"; //ahora veo que tipo de pregunta es y preparo las respuesta if ($encuestas[$i]['datos'][$k]['Tipo'] === '1') { //listo todas las respuestas for ($z = 0; $z < count($encuestas[$i]['datos'][$k]['Respuesta']); $z++) { $respuesta = $respuesta . "<li>" . $encuestas[$i]['datos'][$k]['Respuesta'][$z]['strValor'] . "</li>"; } $respuesta = $respuesta . "<br/><br/>"; } else { if ($encuestas[$i]['datos'][$k]['Tipo'] === '2') { $respuesta = $respuesta . "<table>"; for ($z = 0; $z < count($encuestas[$i]['datos'][$k]['Respuesta']); $z++) { if ($encuestas[$i]['datos'][$k]['Respuesta'][$z]['Descripcion'] !== '') { $respuesta = $respuesta . "<tr><td>" . $encuestas[$i]['datos'][$k]['Respuesta'][$z]['Descripcion'] . "</td>"; $respuesta = $respuesta . "<td>" . $encuestas[$i]['datos'][$k]['Respuesta'][$z]['Cantidad'] . "</td></tr>"; } } $respuesta = $respuesta . "</table><br/><br/>"; } else { if ($encuestas[$i]['datos'][$k]['Tipo'] === '3') { for ($z = 0; $z < count($encuestas[$i]['datos'][$k]['Respuesta']); $z++) { $respuesta = $respuesta . "<b>" . $encuestas[$i]['datos'][$k]['Respuesta'][$z]['opcion'] . "</b>"; $ordinales = ''; $cantidades = ''; //ordinales $respuesta = $respuesta . "<table><tr>"; $respuesta = $respuesta . "<td>Valoración</td>"; for ($zz = 0; $zz <= $encuestas[$i]['datos'][$k]['Respuesta'][$z]['max']; $zz++) { $valoracion = $zz; if ($zz === 0) { $valoracion = 'SC'; } $respuesta = $respuesta . "<td>" . $valoracion . "</td>"; } $respuesta = $respuesta . "</tr><tr>"; $respuesta = $respuesta . "<td>Cantidad</td>"; for ($zz = 0; $zz <= $encuestas[$i]['datos'][$k]['Respuesta'][$z]['max']; $zz++) { $respuesta = $respuesta . "<td>" . $encuestas[$i]['datos'][$k]['Respuesta'][$z]['resultado'][$zz] . "</td>"; } $respuesta = $respuesta . "</tr></table><br/><br/>"; } } } } } //por ultimo preparo la tabla de las sugerencias $respuesta = $respuesta . "<b>Sugerencias</b><br/>"; $respuesta = $respuesta . "<table><tr>"; $respuesta = $respuesta . "<td>Nombre</td><td>Sugerencia</td></tr>"; for ($t = 0; $t < count($encuestas[$i]['Sugerencias']); $t++) { //var_dump($encuestas[$i]['Sugerencias'][$t]);die; $respuesta = $respuesta . "<tr><td>" . $encuestas[$i]['Sugerencias'][$t]['txtNombre'] . "</td>"; $respuesta = $respuesta . "<td>" . $encuestas[$i]['Sugerencias'][$t]['txtObservaciones'] . "</td></tr>"; } $respuesta = $respuesta . "</tr></table><br/><br/>"; } } break; //PUNTO 7 //Aquí podríamos sacar todos los aspectos que están VIGENTES (creo que son los que no tienen fechaEliminado) indicando el nombre del aspecto la ubicación y la fecha de alta. //PUNTO 7 //Aquí podríamos sacar todos los aspectos que están VIGENTES (creo que son los que no tienen fechaEliminado) indicando el nombre del aspecto la ubicación y la fecha de alta. case '7': //extraigo las fechas de la revision por el $Id $strSQL = "\r\n SELECT DATE_FORMAT(R.datFechaDesde,'%d/%m/%Y') AS Desde, DATE_FORMAT(R.datFechaHasta,'%d/%m/%Y') AS Hasta\r\n FROM tbrevisiones R\r\n WHERE R.lngId = {$Id}\r\n "; logger('traza', 'clsCADSist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADSist->generarDatosSQL()|| SQL : " . $strSQL); $stmt = $db->ejecutar($strSQL); if ($stmt) { $fecha = mysql_fetch_array($stmt); } else { return false; } //listo los aspectos ambientales $strSQL = "\r\n SELECT A.aspecto, A.ubicacion, DATE_FORMAT(A.fechaAlta,'%d/%m/%Y') AS fechaAlta\r\n FROM tbmaaspectos A\r\n WHERE A.fechaAlta BETWEEN '" . fecha_to_DATETIME($fecha['Desde']) . "' AND '" . fecha_to_DATETIME_F($fecha['Hasta']) . "'\r\n AND (ISNULL(A.fechaEliminado) OR A.fechaEliminado = '0000-00-00 00:00:00') \r\n "; $db->conectar($this->getStrBD()); $stmt = $db->ejecutar($strSQL); $db->desconectar(); if (!$stmt) { return false; } $resultado = ''; while ($row = mysql_fetch_array($stmt)) { $reg = ''; foreach ($row as $propiedad => $valor) { if (!is_numeric($propiedad)) { $reg[$propiedad] = $valor; } } $resultado[] = $reg; } if (!empty($resultado)) { //es un array con el listado, preparo una tabla en html $respuesta = $respuesta . "Datos de los aspectos ambientales<br/><table>"; $respuesta = $respuesta . "<tr><td><b>Aspecto</b></td><td><b>Ubicación</b></td><td><b>Fecha Alta</b></td></tr>"; for ($i = 0; $i < count($resultado); $i++) { $respuesta = $respuesta . "<tr>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['aspecto'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['ubicacion'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['fechaAlta'] . "</td></tr>"; } $respuesta = $respuesta . "</table>"; } break; //PUNTO 8 //Riesgos y oportunidades PENDIENTE //PUNTO 8 //Riesgos y oportunidades PENDIENTE case '8': break; //PUNTO 9 //Listado de seguimiento de Objetivos //PUNTO 9 //Listado de seguimiento de Objetivos case '9': //extraigo las fechas de la revision por el $Id $strSQL = "\r\n SELECT DATE_FORMAT(R.datFechaDesde,'%d/%m/%Y') AS Desde, DATE_FORMAT(R.datFechaHasta,'%d/%m/%Y') AS Hasta\r\n FROM tbrevisiones R\r\n WHERE R.lngId = {$Id}\r\n "; logger('traza', 'clsCADSist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADSist->generarDatosSQL()|| SQL : " . $strSQL); $stmt = $db->ejecutar($strSQL); if ($stmt) { $fecha = mysql_fetch_array($stmt); } else { return false; } //listo los aspectos ambientales $strSQL = "\r\n SELECT O.lngId, O.txtDescripcion, D.strDescripcion,\r\n DATE_FORMAT(O.datFechaAlta,'%d/%m/%Y') AS datFechaAlta,\r\n DATE_FORMAT(O.datFechaConsecucion,'%d/%m/%Y') AS datFechaConsecucion, O.lngEstado, O.lngInd\r\n FROM tbobjetivos O, tbdepartamentos D\r\n WHERE D.lngId = O.lngIdDepartamento\r\n AND O.datFechaAlta <= '" . fecha_to_DATETIME_F($fecha['Hasta']) . "'\r\n AND O.datFechaConsecucion >= '" . fecha_to_DATETIME($fecha['Desde']) . "'\r\n "; $db->conectar($this->getStrBD()); $stmt = $db->ejecutar($strSQL); $db->desconectar(); //echo $strSQL;die; if (!$stmt) { return false; } $resultado = ''; while ($row = mysql_fetch_array($stmt)) { $reg = ''; foreach ($row as $propiedad => $valor) { if (!is_numeric($propiedad)) { $reg[$propiedad] = $valor; } } $resultado[] = $reg; } //var_dump($resultado);die; if (!empty($resultado)) { //es un array con el listado, preparo una tabla en html $respuesta = $respuesta . "Datos de los aspectos ambientales<br/><table>"; $respuesta = $respuesta . "<tr><td><b>Aspecto</b></td><td><b>Ubicación</b></td><td><b>Fecha Alta</b></td><td><b>Fecha Consecución</b></td></tr>"; for ($i = 0; $i < count($resultado); $i++) { $respuesta = $respuesta . "<tr>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['txtDescripcion'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['strDescripcion'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['datFechaAlta'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['datFechaConsecucion'] . "</td></tr>"; } $respuesta = $respuesta . "</table>"; } break; //PUNTO 10 //Aquí mostraremos todas las mediciones de indicadores que tengan fecha dentro del período indicado //https://www.qualidad.es/qualidad1/vista/IndicSegMed.php?id=28 //PUNTO 10 //Aquí mostraremos todas las mediciones de indicadores que tengan fecha dentro del período indicado //https://www.qualidad.es/qualidad1/vista/IndicSegMed.php?id=28 case '10': //extraigo las fechas de la revision por el $Id $strSQL = "\r\n SELECT DATE_FORMAT(R.datFechaDesde,'%d/%m/%Y') AS Desde, DATE_FORMAT(R.datFechaHasta,'%d/%m/%Y') AS Hasta\r\n FROM tbrevisiones R\r\n WHERE R.lngId = {$Id}\r\n "; logger('traza', 'clsCADSist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADSist->generarDatosSQL()|| SQL : " . $strSQL); $stmt = $db->ejecutar($strSQL); if ($stmt) { $fecha = mysql_fetch_array($stmt); } else { return false; } //ahora listo todos los indicadores que tengan mediciones en este periodo $strSQL = "\r\n SELECT I.lngIndicador, I.strNomIndicador, DATE_FORMAT(I.datFecha,'%d/%m/%Y') AS datFecha, DATE_FORMAT(I.datFechaVenci,'%d/%m/%Y') AS datFechaVenci, I.strDepartamento,\r\n CONCAT(E.strNombre, ' ', E.strApellidos) AS Empleado, I.strUsuario, I.strProceso, I.strFichProceso,\r\n I.strDescripcion, I.strNombreA, I.strNombreB, I.strNombreC, I.strOperando1, I.strOperando2,\r\n I.strOperando3, I.strOperacion, I.strOperacion1, I.lngValorObj, I.lngValorMin, I.strPeriodicidad\r\n FROM tbdefinindi I, tbempleados E\r\n WHERE I.strUsuario=E.lngIdEmpleado\r\n "; $db->conectar($this->getStrBD()); $stmt = $db->ejecutar($strSQL); $db->desconectar(); //echo $strSQL;die; if (!$stmt) { return false; } $resultado = ''; while ($row = mysql_fetch_array($stmt)) { $reg = ''; foreach ($row as $propiedad => $valor) { if (!is_numeric($propiedad)) { $reg[$propiedad] = $valor; } } $resultado[] = $reg; } $respuesta = ''; if (!empty($resultado)) { //es un array con el listado, preparo una tabla en html $respuesta = $respuesta . "Datos del Desempeño de los procesos y conformidad del producto o servicio<br/>"; for ($ii = 0; $ii < count($resultado); $ii++) { //ahora saco los datos de las mediciones de este indicador que esten dentro del periodo indicado $strSQL = "\r\n SELECT F.lngMedicion,CONCAT(E.strNombre , ' ' , E.strApellidos) AS Empleado,F.lngOperando1, F.lngOperando2, lngOperando3, \r\n DATE_FORMAT(F.datFecha,'%d/%m/%Y') AS datFecha,F.lngValorObj,\r\n F.lngValorMin , F.resultado, F.correcta, F.strObservaciones\r\n FROM tbmedicionindi F, tbempleados E, tbdefinindi D, tbusuarios U\r\n WHERE F.lngIndicador = D.lngIndicador AND U.strUsuario = F.strUsuario\r\n AND U.lngIdEmpleado = E.lngIdEmpleado AND F.lngIndicador = " . $resultado[$ii]['lngIndicador'] . "\r\n AND F.datFecha BETWEEN '" . fecha_to_DATETIME($fecha['Desde']) . "' AND '" . fecha_to_DATETIME_F($fecha['Hasta']) . "'\r\n "; //echo $strSQL;die; $db->conectar($this->getStrBD()); $stmt = $db->ejecutar($strSQL); $db->desconectar(); if (!$stmt) { return false; } $resultadoDatosIndicadorMediciones = ''; while ($row = mysql_fetch_array($stmt)) { $reg = ''; foreach ($row as $propiedad => $valor) { if (!is_numeric($propiedad)) { $reg[$propiedad] = $valor; } } $resultadoDatosIndicadorMediciones[] = $reg; } //preparar la tabla por cada indicador if (is_array($resultadoDatosIndicadorMediciones)) { $respuesta = $respuesta . "<p>Nº: <b>" . $resultado[$ii]['lngIndicador'] . " - Nombre: <b>" . $resultado[$ii]['strNomIndicador'] . "</b></p>"; //indico los nombres de OP1, OP2 y OP3 $strNombreA = ''; if ($resultado[$ii]['strOperando1'] === 'Operando A') { $strNombreA = $resultado[$ii]['strNombreA']; } else { if ($resultado[$ii]['strOperando1'] === 'Operando B') { $strNombreA = $resultado[$ii]['strNombreB']; } else { if ($resultado[$ii]['strOperando1'] === 'Operando C') { $strNombreA = $resultado[$ii]['strNombreC']; } } } $strNombreB = ''; if ($resultado[$ii]['strOperando2'] === 'Operando A') { $strNombreB = $resultado[$ii]['strNombreA']; } else { if ($resultado[$ii]['strOperando2'] === 'Operando B') { $strNombreB = $resultado[$ii]['strNombreB']; } else { if ($resultado[$ii]['strOperando2'] === 'Operando C') { $strNombreB = $resultado[$ii]['strNombreC']; } } } $strNombreC = ''; if ($resultado[$ii]['strOperando3'] === 'Operando A') { $strNombreC = $resultado[$ii]['strNombreA']; } else { if ($resultado[$ii]['strOperando3'] === 'Operando B') { $strNombreC = $resultado[$ii]['strNombreB']; } else { if ($resultado[$ii]['strOperando3'] === 'Operando C') { $strNombreC = $resultado[$ii]['strNombreC']; } } } $respuesta = $respuesta . "<table>"; $respuesta = $respuesta . "<tr>"; $respuesta = $respuesta . "<th class=\\'medicionTxt\\' style=\\'width: 5%;background: #BDC2C4;\\'>Nº Med</th>"; $respuesta = $respuesta . "<th class=\\'medicionTxt\\' style=\\'width: 30%;background: #BDC2C4;\\'>Usuario</th>"; $respuesta = $respuesta . "<th class=\\'medicionTxt\\' style=\\'width: 10%;background: #BDC2C4;\\'>" . $strNombreA . "</th>"; $respuesta = $respuesta . "<th class=\\'medicionTxt\\' style=\\'width: 10%;background: #BDC2C4;\\'>" . $strNombreB . "</th>"; $respuesta = $respuesta . "<th class=\\'medicionTxt\\' style=\\'width: 10%;background: #BDC2C4;\\'>" . $strNombreC . "</th>"; $respuesta = $respuesta . "<th class=\\'medicionTxt\\' style=\\'width: 10%;background: #BDC2C4;\\'>Fecha</th>"; $respuesta = $respuesta . "<th class=\\'medicionTxt\\' style=\\'width: 5%;background: #BDC2C4;\\'>Objetivo</th>"; $respuesta = $respuesta . "<th class=\\'medicionTxt\\' style=\\'width: 5%;background: #BDC2C4;\\'>Referencia</th>"; $respuesta = $respuesta . "<th class=\\'medicionTxt\\' style=\\'width: 10%;background: #BDC2C4;\\'>Resultado</th>"; $respuesta = $respuesta . "</tr>"; for ($i = 0; $i < count($resultadoDatosIndicadorMediciones); $i++) { //compruebo si esta dentro del rango OK (naranja), si es menos de ValorMin (Rojo) y ValorObj (Verde) $resultado = (double) round($resultadoDatosIndicadorMediciones[$i]['resultado'], 4); $valorObj = (double) $resultadoDatosIndicadorMediciones[$i]['lngValorObj']; $valorRef = (double) $resultadoDatosIndicadorMediciones[$i]['lngValorMin']; $comp = $valorObj - $valorRef; //es creciente $color = '#efe4a7'; if ($comp > 0) { if ($resultado > $valorObj) { //si es mayor es verde $color = '#9df39f'; } else { if ($resultado < $valorRef) { //si es menor es rojo $color = '#e58282'; } } } else { if ($comp < 0) { if ($resultado < $valorObj) { //si es menor es verde $color = '#9df39f'; } else { if ($resultado > $valorRef) { //si es mayor es rojo $color = '#e58282'; } } } } // //veo si hay observaciones, si las hay las presento en un jquery.baloon // $observaciones = ''; // if(trim($resultadoDatosIndicadorMediciones[$i]['strObservaciones']) !== ""){//he puesto trim porque hay registro con un espacio en blanco // $observaciones = "<a class=\'observaciones\' title=\'".$resultadoDatosIndicadorMediciones[$i]['strObservaciones']."\'>Ver</a>"; // } $respuesta = $respuesta . "<tr>"; $respuesta = $respuesta . "<td class=\\'medicionTxt\\'>" . $resultadoDatosIndicadorMediciones[$i]['lngMedicion'] . "</td>"; $respuesta = $respuesta . "<td class=\\'medicionTxt\\'>" . $resultadoDatosIndicadorMediciones[$i]['Empleado'] . "</td>"; $respuesta = $respuesta . "<td class=\\'medicionTxt\\'>" . $resultadoDatosIndicadorMediciones[$i]['lngOperando1'] . "</td>"; $respuesta = $respuesta . "<td class=\\'medicionTxt\\'>" . $resultadoDatosIndicadorMediciones[$i]['lngOperando2'] . "</td>"; $respuesta = $respuesta . "<td class=\\'medicionTxt\\'>" . $resultadoDatosIndicadorMediciones[$i]['lngOperando3'] . "</td>"; $respuesta = $respuesta . "<td class=\\'medicionTxt\\'>" . $resultadoDatosIndicadorMediciones[$i]['datFecha'] . "</td>"; $respuesta = $respuesta . "<td class=\\'medicionTxt\\'>" . $resultadoDatosIndicadorMediciones[$i]['lngValorObj'] . "</td>"; $respuesta = $respuesta . "<td class=\\'medicionTxt\\'>" . $resultadoDatosIndicadorMediciones[$i]['lngValorMin'] . "</td>"; $respuesta = $respuesta . "<td class=\\'medicionTxt\\' style=\\'background:{$color};\\'>" . round($resultadoDatosIndicadorMediciones[$i]['resultado'], 4) . "</font></td>"; $respuesta = $respuesta . "</tr>"; } $respuesta = $respuesta . "</table><br/><br/>"; } } } break; //PUNTO 11 //Aquí mostraríamos lo mismo que en el punto 10 pero de aquellos indicadores que están relacionados con un aspecto ambiental //PENDIENTE //PUNTO 11 //Aquí mostraríamos lo mismo que en el punto 10 pero de aquellos indicadores que están relacionados con un aspecto ambiental //PENDIENTE case '11': break; //PUNTO 12 //Las consultas de las NCs //PUNTO 12 //Las consultas de las NCs case '12': //extraigo las fechas de la revision por el $Id $strSQL = "\r\n SELECT DATE_FORMAT(R.datFechaDesde,'%d/%m/%Y') AS Desde, DATE_FORMAT(R.datFechaHasta,'%d/%m/%Y') AS Hasta\r\n FROM tbrevisiones R\r\n WHERE R.lngId = {$Id}\r\n "; logger('traza', 'clsCADSist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADSist->generarDatosSQL()|| SQL : " . $strSQL); $stmt = $db->ejecutar($strSQL); if ($stmt) { $fecha = mysql_fetch_array($stmt); } else { return false; } //No Conformidades abiertas $strSQL = "\r\n SELECT N.lngId AS Numero, N.strNoConfServ,DATE_FORMAT(N.datFechaAlta,'%d/%m/%Y') AS datFechaAlta, N.strReqIncumplido AS ReqIncumplido, \r\n (D.strDescripcion) AS Departamento, N.lngAccion ,N.strContrato\r\n FROM tbnoconfserv N,tbdepartamentos D\r\n WHERE N.lngIdDepartamento = D.lngId AND N.lngStatus=1\r\n AND N.datFechaAlta BETWEEN '" . fecha_to_DATETIME($fecha['Desde']) . "' AND '" . fecha_to_DATETIME_F($fecha['Hasta']) . "'\r\n "; //echo $strSQL;die; $db->conectar($this->getStrBD()); $stmt = $db->ejecutar($strSQL); if (!$stmt) { return false; } $resultado = ''; while ($row = mysql_fetch_array($stmt)) { $reg = ''; foreach ($row as $propiedad => $valor) { if (!is_numeric($propiedad)) { $reg[$propiedad] = $valor; } } //ahora buscamos si tiene una accion correctiva asociada $strSQL = "\r\n SELECT A.lngId, A.strAccionCorrPrev\r\n FROM tbaccioncorrprev A, tborigenaccioncp O\r\n WHERE O.lngId = A.lngIdTipoOrigen\r\n AND A.strNumDocOrigen = '" . $reg['strNoConfServ'] . "' AND A.lngIdTipoOrigen = 2\r\n "; $stmt2 = $db->ejecutar($strSQL); if ($stmt2) { $row2 = mysql_fetch_array($stmt2); $reg['NumACP'] = $row2['strAccionCorrPrev']; } else { $reg['NumACP'] = 'NO'; } $resultado[] = $reg; } $db->desconectar(); //var_dump($resultado);die; //para posteriores calculos $Num_NC_Abiertas = count($resultado); $respuesta = '<p>Datos de las No Conformidades</p><br/>'; if (!empty($resultado)) { //es un array con el listado, preparo una tabla en html $respuesta = $respuesta . "No Conformidades Abiertas<br/>"; $respuesta = $respuesta . "<table>"; $respuesta = $respuesta . "<tr>"; $respuesta = $respuesta . "<th>Número</th>"; $respuesta = $respuesta . "<th>Fecha Alta</th>"; $respuesta = $respuesta . "<th>Req. Incumplido</th>"; $respuesta = $respuesta . "<th>Area Afectada</th>"; $respuesta = $respuesta . "<th>Tipificación</th>"; $respuesta = $respuesta . "<th>Acción C/P</th>"; $respuesta = $respuesta . "</tr>"; for ($i = 0; $i < count($resultado); $i++) { $respuesta = $respuesta . "<tr>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['strNoConfServ'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['datFechaAlta'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['ReqIncumplido'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['Departamento'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['strContrato'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['NumACP'] . "</td>"; $respuesta = $respuesta . "</tr>"; } $respuesta = $respuesta . "</table><br/><br/>"; } //No Conformidades pendientes de cierre $strSQL = "\r\n SELECT N.lngId AS Numero, N.strNoConfServ,DATE_FORMAT(N.datFechaAlta,'%d/%m/%Y') AS datFechaAlta, N.strReqIncumplido AS ReqIncumplido, \r\n (D.strDescripcion) AS Departamento, N.lngAccion ,N.strContrato\r\n FROM tbnoconfserv N,tbdepartamentos D\r\n WHERE N.lngIdDepartamento = D.lngId AND N.lngStatus=1\r\n AND NOT ISNULL(N.datFechaAceptadoResponsable) AND N.lngCerrado = 0\r\n ORDER BY N.datFechaAlta\r\n "; //echo $strSQL;die; $db->conectar($this->getStrBD()); $stmt = $db->ejecutar($strSQL); if (!$stmt) { return false; } $resultado = ''; while ($row = mysql_fetch_array($stmt)) { $reg = ''; foreach ($row as $propiedad => $valor) { if (!is_numeric($propiedad)) { $reg[$propiedad] = $valor; } } //ahora buscamos si tiene una accion correctiva asociada $strSQL = "\r\n SELECT A.lngId, A.strAccionCorrPrev\r\n FROM tbaccioncorrprev A, tborigenaccioncp O\r\n WHERE O.lngId = A.lngIdTipoOrigen\r\n AND A.strNumDocOrigen = '" . $reg['strNoConfServ'] . "' AND A.lngIdTipoOrigen = 2\r\n "; $stmt2 = $db->ejecutar($strSQL); if ($stmt2) { $row2 = mysql_fetch_array($stmt2); $reg['NumACP'] = $row2['strAccionCorrPrev']; } else { $reg['NumACP'] = 'NO'; } $resultado[] = $reg; } $db->desconectar(); //para posteriores calculos $Num_NC_Pend_Cerrar = count($resultado); //var_dump($resultado);die; if (!empty($resultado)) { //es un array con el listado, preparo una tabla en html $respuesta = $respuesta . "No Conformidades Pendientes de Cerrar<br/>"; $respuesta = $respuesta . "<table>"; $respuesta = $respuesta . "<tr>"; $respuesta = $respuesta . "<th>Número</th>"; $respuesta = $respuesta . "<th>Fecha Alta</th>"; $respuesta = $respuesta . "<th>Req. Incumplido</th>"; $respuesta = $respuesta . "<th>Area Afectada</th>"; $respuesta = $respuesta . "<th>Tipificación</th>"; $respuesta = $respuesta . "<th>Acción C/P</th>"; $respuesta = $respuesta . "</tr>"; for ($i = 0; $i < count($resultado); $i++) { $respuesta = $respuesta . "<tr>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['strNoConfServ'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['datFechaAlta'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['ReqIncumplido'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['Departamento'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['strContrato'] . "</td>"; $respuesta = $respuesta . "<td>" . $resultado[$i]['NumACP'] . "</td>"; $respuesta = $respuesta . "</tr>"; } $respuesta = $respuesta . "</table><br/><br/>"; } //Nº NCs abiertas , pendientes de cerrar y % sobre total //calculo numero NCs totales $strSQL = "\r\n SELECT COUNT(*) AS Numero\r\n FROM tbnoconfserv N\r\n WHERE N.lngStatus = 1\r\n "; $db->conectar($this->getStrBD()); $stmt = $db->ejecutar($strSQL); $db->desconectar(); if (!$stmt) { return false; } $row = mysql_fetch_array($stmt); $NumeroNCs = $row['Numero']; //tiempo medio de cierre (nº de días desde apertura a cierre de cada NC / nº de NCs cerradas) //restar los campos datFechaConformeCalidad - datFechaAlta (dias) // campo lngCerrado=0 (abierto), lngCerrado=1 (cerrado) $strSQL = "\r\n SELECT N.lngId,N.datFechaConformeCalidad, N.datFechaAlta\r\n FROM tbnoconfserv N\r\n WHERE N.lngCerrado = 1\r\n "; $db->conectar($this->getStrBD()); $stmt = $db->ejecutar($strSQL); $db->desconectar(); if (!$stmt) { return false; } $resultado = ''; while ($row = mysql_fetch_array($stmt)) { $reg = ''; foreach ($row as $propiedad => $valor) { if (!is_numeric($propiedad)) { $reg[$propiedad] = $valor; } } $resultado[] = $reg; } $mediaDias = 0; $sumaDias = 0; if (!empty($resultado)) { for ($i = 0; $i < count($resultado); $i++) { $cerrado = date_create($resultado[$i]['datFechaConformeCalidad']); $abierto = date_create($resultado[$i]['datFechaAlta']); $interval = date_diff($abierto, $cerrado); $dif = $interval->format('%a'); $sumaDias = $sumaDias + $dif; } $mediaDias = round($sumaDias / count($resultado), 2); } //porcentaje de NCs tienen una AC. $strSQL = "\r\n SELECT COUNT(A.lngId) AS Cantidad\r\n FROM tbaccioncorrprev A\r\n WHERE A.lngIdTipoOrigen = 2\r\n AND A.lngStatus = 1\r\n "; $db->conectar($this->getStrBD()); $stmt = $db->ejecutar($strSQL); $db->desconectar(); if (!$stmt) { return false; } $row = mysql_fetch_array($stmt); $NumeroNCs_con_AC = $row['Cantidad']; //presento estos datos $respuesta = $respuesta . "<table>"; $respuesta = $respuesta . "<tr><td>No Conformidades Abiertas</td><td>" . $Num_NC_Abiertas . "</td><td>" . round($Num_NC_Abiertas / $NumeroNCs * 100, 2) . " %</td></tr>"; $respuesta = $respuesta . "<tr><td>No Conformidades Pendientes de Cerrar</td><td>" . $Num_NC_Pend_Cerrar . "</td><td>" . round($Num_NC_Pend_Cerrar / $NumeroNCs * 100, 2) . " %</td></tr>"; $respuesta = $respuesta . "<tr><td>TOTAL No Conformidades</td><td>" . $NumeroNCs . "</td><td></td></tr>"; $respuesta = $respuesta . "</table><br/>"; $respuesta = $respuesta . "<table>"; $respuesta = $respuesta . "<tr><td>Tiempo medio de Cierre</td><td>" . $mediaDias . " dias</td></tr>"; $respuesta = $respuesta . "</table><br/>"; $respuesta = $respuesta . "<table>"; $respuesta = $respuesta . "<tr><td>No Conformidades tienen Acción C/P</td><td>" . $NumeroNCs_con_AC . "</td><td>" . $NumeroNCs . "</td><td>" . round($NumeroNCs_con_AC / $NumeroNCs * 100, 2) . " %</td></tr>"; $respuesta = $respuesta . "</table><br/><br/>"; break; //PUNTO 13 //Quejas, sugerencias y reclamaciones //Quejas : lngTipologia=3 o 13 en tborigenaccioncp //Sugerencia : lngTipologia=2 o 12 en tborigenaccioncp //Felicitacion : lngTipologia=1 o 11 en tborigenaccioncp //PUNTO 13 //Quejas, sugerencias y reclamaciones //Quejas : lngTipologia=3 o 13 en tborigenaccioncp //Sugerencia : lngTipologia=2 o 12 en tborigenaccioncp //Felicitacion : lngTipologia=1 o 11 en tborigenaccioncp case '13': //extraigo las fechas de la revision por el $Id $strSQL = "\r\n SELECT DATE_FORMAT(R.datFechaDesde,'%d/%m/%Y') AS Desde, DATE_FORMAT(R.datFechaHasta,'%d/%m/%Y') AS Hasta\r\n FROM tbrevisiones R\r\n WHERE R.lngId = {$Id}\r\n "; logger('traza', 'clsCADSist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADSist->generarDatosSQL()|| SQL : " . $strSQL); $stmt = $db->ejecutar($strSQL); if ($stmt) { $fecha = mysql_fetch_array($stmt); } else { return false; } //Quejas //====== //Quejas abiertas $strSQL = "\r\n SELECT R.lngId as Id, R.strReclamacion,DATE_FORMAT(R.datFechaAlta,'%d/%m/%Y') AS datFechaAlta,R.strEmpresa,R.strServAfect AS strNombreServicio, R.strDescripcion AS Causa,\r\n R.strTelefono2 AS Tipificacion, R.lngTipologia \r\n FROM tbreclamaciones R \r\n WHERE R.lngCerrado = 0 AND R.lngStatus = 1\r\n AND R.datFechaAlta BETWEEN '" . fecha_to_DATETIME($fecha['Desde']) . "' AND '" . fecha_to_DATETIME_F($fecha['Hasta']) . "'\r\n "; //echo $strSQL;die; $db->conectar($this->getStrBD()); $stmt = $db->ejecutar($strSQL); if (!$stmt) { return false; } $resultado = ''; while ($row = mysql_fetch_array($stmt)) { $reg = ''; foreach ($row as $propiedad => $valor) { if (!is_numeric($propiedad)) { $reg[$propiedad] = $valor; } } $resultado[] = $reg; } $db->desconectar(); var_dump($resultado); die; break; default: //no es ninguno de los puntos, dev false return false; } //var_dump($respuesta); //ahora compruebo si existe este punto de esta revision //si es asi, actualizo los datos, sino lo inserto $strSQL = "\r\n SELECT D.Id\r\n FROM tbrevpuntosdatos D\r\n WHERE D.IdRevision = {$Id}\r\n AND D.IdPunto = {$IdPunto}\r\n "; logger('traza', 'clsCADSist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADSist->generarDatosSQL()|| SQL : " . $strSQL); $db->conectar($this->getStrBD()); $stmt = $db->ejecutar($strSQL); $db->desconectar(); if ($stmt) { $num = mysql_num_rows($stmt); if ($num > 0) { //actualizo los datos $strSQL = "\r\n UPDATE tbrevpuntosdatos D\r\n SET D.datosconsulta = '" . $respuesta . "'\r\n WHERE D.IdRevision = {$Id}\r\n AND D.IdPunto = {$IdPunto}\r\n "; logger('traza', 'clsCADSist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADSist->generarDatosSQL()|| SQL : " . $strSQL); $db->conectar($this->getStrBD()); $stmt = $db->ejecutar($strSQL); $db->desconectar(); if ($stmt) { return true; } else { return false; } } else { //inserto un dato nuevo en la tabla "tbrevpuntosdatos" $strSQL = "\r\n INSERT INTO tbrevpuntosdatos (IdRevision, IdPunto, datosconsulta) VALUES\r\n ({$Id},{$IdPunto},'" . $respuesta . "')\r\n "; //echo $strSQL;die; logger('traza', 'clsCADSist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADSist->generarDatosSQL()|| SQL : " . $strSQL); $db->conectar($this->getStrBD()); $stmt = $db->ejecutar($strSQL); $db->desconectar(); if ($stmt) { return true; } else { return false; } } } else { return false; } }
<input type="Reset" class="button" value="Vaciar Datos" name="cmdReset"/> <input type="button" class="button" value="Consultar" name="cmdConsultar" onclick="javascript:validar();" /> <input name="cmdListar" type="hidden" value="OK"/> </td> </tr> </table> </td></tr> <tr></tr> </table> </form> <?php //aqui detectamos que hemos pulsado al boton 'Consultar' //por lo que cojemos los parametros de los filtros, hacemos la consulta y la presentamos if (isset($_GET['cmdListar']) && $_GET['cmdListar'] == 'OK') { require_once '../CN/clsCNEnc.php'; $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); //extraigo el cargo del usuario actual ($_SESSION['strUsuario']) $pet = $clsCNEnc->ObtenerCargoUsuario($_SESSION['strUsuario']); logger('info', 'enclist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . '-Variable $pet: ' . $pet); //compruebo $cargoUsuario = ''; if ($pet != -1) { $cargoUsuario = $pet; } else { $cargoUsuario = 'Administrador'; } //recojemos los parametros de los filtros // $strNumDesde=$_GET['strNumDesde']; /* if($strNumDesde<>''){ $long=strlen($strNumDesde);
<?php session_start(); require_once '../CN/clsCNEnc.php'; //require_once '../CN/clsCNUsu.php'; require_once '../general/funcionesGenerales.php'; $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); //ESTA MEDIO HECHO 16/10/2015 //actualizo los datos de la tabla 'tbencuestascontestadas' $OK = $clsCNEnc->actualizarEmailAbierto($_GET); //ESTA SIN TERMINAR, ESTE FICHERO FUNCIONA CUANDO SE ABRE UN CORREO QUE TIENE UNA IMAGEN //Y ESTA LO DIRIGE AQUI TRAYENDO DATOS DE ESE CORREO //ESTO VALE PARA DETECTAR CUANDO ABREN UN CORREO, LO MALO ES QUE AL LLEVAR IMAGEN LOS SERVIDORES //DE CORREOS LO DETECTAN COMO SPAN Y NO DEJAN ABRIR LAS IMAGENES $url_app = ''; if ($_SERVER['HTTPS'] === 'on') { $url_app = 'https://'; } else { $url_app = 'http://'; } $url_app = $url_app . $_SERVER['HTTP_HOST'] . '/'; //escribo en un fichero $ddf = fopen('../log/' . $_SESSION['base'] . '/encuesta_emailAbierto.txt', 'a'); date_default_timezone_set('Europe/Madrid'); fwrite($ddf, "[" . date("r") . "] Codigo Encuesta: " . $_GET['e'] . " - Email: " . $_GET['email'] . " - IdCliente: " . $_GET['idcliente'] . "\n"); fclose($ddf); //leo la imagen en si header("Location: " . $url_app . "qualidad1/images/fondo.gif");
<tr align="center"> <td colspan="5"> <input type="Reset" class="button" value="Vaciar Datos" name="cmdReset"/> <input type="button" class="button" value="Consultar" name="cmdConsultar" onclick="javascript:validar();" /> <input name="cmdListar" type="hidden" value="OK"/> </td> </tr> </table> </div> </form> <?php //aqui detectamos que hemos pulsado al boton 'Consultar' //por lo que cojemos los parametros de los filtros, hacemos la consulta y la presentamos // if(isset($_GET['cmdListar'])&&$_GET['cmdListar']=='OK'){ require_once '../CN/clsCNEnc.php'; $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); //extraigo el cargo del usuario actual ($_SESSION['strUsuario']) $pet = $clsCNEnc->ObtenerCargoUsuario($_SESSION['strUsuario']); logger('info', 'enclist.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . '-Variable $pet: ' . $pet); //compruebo $cargoUsuario = ''; if ($pet != -1) { $cargoUsuario = $pet; } else { $cargoUsuario = 'Administrador'; } //recojemos los parametros de los filtros $strNumDesde = $_GET['strNumDesde']; if ($strNumDesde != '') { $long = strlen($strNumDesde);
<?php session_start(); require_once '../CN/clsCNEnc.php'; require_once '../general/funcionesGenerales.php'; //Control de Permisos. Hay que incluirlo en todas las páginas /**************************************************************/ $lngPagina = '100'; //le paso la funcion de comprobacion de permisos AccesoUsuarioPagina($lngPagina, $_SESSION['usuario']); $clsCNEnc = new clsCNEnc(); $clsCNEnc->setStrBD($_SESSION['mapeo']); //codigo principal //comprobamos si se ha submitido el formulario if (isset($_POST['cmdAlta'])) { //revisar si hay fichero a adjuntar logger('traza', basename($_SERVER['PHP_SELF']) . '-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . " Tiene fichero adjunto: " . $_FILES['doc']['name']); //var_dump($_POST);die; $OK = $clsCNEnc->EditarCliente($_POST); echo '<META HTTP-EQUIV=Refresh CONTENT="0; URL=../vista/listadoClientes.php">'; // if($OK){ // echo '<META HTTP-EQUIV=Refresh CONTENT="0; URL=../vista/exito.php?Id=Se ha dado de alta correctamente el documento">'; // }else{ // echo '<META HTTP-EQUIV=Refresh CONTENT="0; URL=../vista/error.php?id=NO se ha dado de alta correctamente el documento">'; // } } else { //comienzo del else principal logger('info', basename($_SERVER['PHP_SELF']) . '-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . " ||||control de los Documentos->Alta de Documentos"); $datosUsuario = $clsCNEnc->DatosClienteDetallado($_GET['id']); //var_dump($datosUsuario);die; ?>