public function ModificaEtapaDelegados($t_id, $etapa, $flujo, $dueno, $ruta, $iduser, $delegado) { $tramite = new Tramite(); $existeDelegado = $this->existenciaDelegado($iduser, $delegado); $tramite->Load_Tramite($t_id); $iniciador = $tramite->Get_dato("t_iniciador"); if ($existeDelegado) { $etapatramite = $this->obtenerEtapaDelegados($flujo); $tramite->Modifica_Etapa($t_id, $etapatramite, $flujo, $iniciador, ""); } else { $tramite->Modifica_Etapa($t_id, $etapa, $flujo, $dueno, $ruta); $ruta_autorizacion = new RutaAutorizacion(); $ruta_autorizacion->generaRutaAutorizacionSolicitudInvitacion($tramite_editar, $iduser); $aprobador = $ruta_autorizacion->getSiguienteAprobador($t_id, $iduser); return $aprobador; } }
$sDestino = $_POST['destino' . $i]; $sSelect_hora_salida = $_POST['hora' . $i]; if ($sOrigen != "" && $sOrigen != NULL) { if ($CViaje->Add_Itinerario_sa($sOrigen, $sDestino, $sFechaSalida, $sFechaLlegada, $sSelect_hora_salida, $sTipoViaje) <= 0) { $CViaje->insertar("ROLL BACK"); echo "Error al Registrar el Itinerario"; exit; } } } //for // Envia el tramite a aprobacion $usuarioAprobador = new Usuario(); $usuarioAprobador->Load_Usuario_By_ID($aprobador); $mensaje = sprintf("La solicitud Amex <strong>%05s</strong> ha sido <strong>CREADA</strong> y asignada a <strong>%s</strong> para su revisión", $idTramite, $usuarioAprobador->Get_dato('nombre')); $tramite->Modifica_Etapa($idTramite, ANTICIPO_AMEX_ETAPA_AGENCIA, FLUJO_AMEX, $aprobador); $tramite->EnviaMensaje($idTramite, $mensaje); // Termina transacción $tramite->insertar("COMMIT"); // Regresa a la pagina del index header("Location: ./index.php?oksave"); } else { header("Location: ./index.php?errsave"); die; } //if row } //if guarda comp if (isset($_GET['new2'])) { //*****************************//COMPROBACION GENERAL//*****************************// $UsuOb = new Usuario();
$ruta_autorizacion = new RutaAutorizacion(); $ruta_autorizacion->generRutaAutorizacionComprobacionInvitacion($idTramite, $iduser); $aprobador = $ruta_autorizacion->getAprobador($idTramite, $iduser); // Envia el tramite a aprobacion $duenoActual = new Usuario(); $duenoActual->Load_Usuario_By_ID($iduser); $nombreUsuario = $duenoActual->Get_dato('nombre'); $duenoActual->Load_Usuario_By_ID($t_delegado); $nombreDelegado = $duenoActual->Get_dato('nombre'); $mensaje = sprintf("La Comprobación de Invitación <strong>%05s</strong> ha sido <strong>CREADA</strong> por: <strong>%s</strong> en nombre de: <strong>%s</strong> y requiere de su autorización.", $idTramite, $nombreDelegado, $nombreUsuario); $remitente = $iduser; $destinatario = $aprobador; $tramite->Modifica_Etapa($idTramite, COMPROBACION_INVITACION_ETAPA_APROBACION, FLUJO_COMPROBACION_INVITACION, $aprobador, ""); $tramite->EnviaNotificacion($idTramite, $mensaje, $remitente, $destinatario, "1", ""); //"0" para no enviar email y "1" para enviarlo // Regresa a la pagina de solicitudes de invitaci�n if($mobile){ echo "<meta http-equiv='Refresh' content='0; URL=http://".$SERVER.$RUTA_R."flujos/comprobaciones/index.php?docs=docs&type=4&action=autorizar'>"; }else{ echo ("<script language='Javascript'> location.href='http://".$SERVER.$RUTA_R."flujos/comprobaciones/index.php?docs=docs&type=4&action=autorizar';</script>"); } } // Rechazo de la comprobaci�n por el Director else if(isset($_POST['rechazar_ci']) && isset($_POST['idT']) && $_POST['idT']!=""){ $idTramite = $_POST['idT']; $iduser = $_POST['iu']; $observaciones = $_POST['observ_up'];
$rutaAutorizacion = new RutaAutorizacion(); /** * Validacion y guardado de excepcion de presupuesto **/ $rutaAutorizadores = $rutaAutorizacion->generarRutaAutorizacion($idTramite, $_SESSION['idrepresentante']); // Obtener Autorizador $aprobador = $rutaAutorizacion->getSiguienteAprobador($idTramite, $iniciador); // Creamos el texto de las observaciones que serán enviadas if ($observaciones != '') { $observaciones = $notificacion->anotaObservacion($iniciador, $historialObservaciones, $observaciones, FLUJO_SOLICITUD_GASTOS, SOLICITUD_GASTOS_ETAPA_SIN_ENVIAR, $_SESSION['idrepresentante']); } else { $observaciones = ''; } // Actualizar las observaciones de la solicitud de gastos $solicitud->actualizaObservaciones($observaciones, '', $idTramite); $tramite->Modifica_Etapa($idTramite, SOLICITUD_GASTOS_ETAPA_APROBACION, FLUJO_SOLICITUD_GASTOS, $aprobador, $rutaAutorizadores, $_SESSION['idrepresentante']); // Definición del mensaje $mensaje = $tramite->crearMensaje($idTramite, SOLICITUD_GASTOS_ETAPA_APROBACION, true, false, $_SESSION['idrepresentante']); $tramite->EnviaNotificacion($idTramite, $mensaje, $iniciador, $aprobador, 1, ""); // "0" para no enviar email y "1" para enviarlo } else { $guardadoPrevio = true; // Actualizar las observaciones de la solicitud de gastos $solicitud->actualizaObservaciones($historialObservaciones, $observaciones, $idTramite); $tramite->Modifica_Etapa($idTramite, SOLICITUD_GASTOS_ETAPA_SIN_ENVIAR, FLUJO_SOLICITUD_GASTOS, $iniciador, ""); } // Guardamos todos los cambios en la Base de Datos $tramite->ejecutar("COMMIT"); if ($guardadoPrevio) { header("Location: ./index.php?docs=docs&type=2&oksaveP"); } else {
$num_rows=mysql_num_rows($rst); $fila=mysql_fetch_assoc($rst); $idProv=$fila['pro_id']; if ($num_rows>0) $idProv=$fila['pro_id']; else $idProv=0; //************Detalle Comprobación $resp = 0; Add_detalle($co_id,$cCargo,$cConc,$cRef,$cP_RFC,$cAmt,$cImp,$cImpVal,$cTotal,$forma_gasto,$montoexc,$ivaexc,$idProv,$kilometraje,$cDate,$ivaR,$isrR,$cDate,$cExch,$cComensales,$cRate,$tipo,$cFlagFactura,$cFolio,$resp,$ceco); }//for $sObser = ""; $Tramite = new Tramite(); $Tramite -> Load_Tramite($comprobacion); $Tramite -> Modifica_Etapa(3); $Tramite->Nex_Set($comprobacion,$sObser,$jefeEmpleado,"Comprobacion"); $observaciones=$_POST['observaciones']; if($observaciones==""){ header("Location: ./index.php?errsave"); }else{ $Tramite->save_observaciones($observaciones,$comprobacion,$autor); } header("Location: ./index.php?oksave"); }else{ header("Location: ./index.php?errjefe"); die(); }//if jefe }else{ header("Location: ./index.php");
} // Obtiene la parte preaprobada en la solicitud $totalComprobado = 0; $svc_detalle_monto_concepto = 0; // Detalle Comprobación Add_detalle($idComprobacion, $cCargo, $cConc, $cRef, $cP_RFC, $cAmt, $cImp, $cImpVal, $cTotal, $svc_detalle_monto_concepto, $forma_gasto, $montoexc, $ivaexc, $idProv, $kilometraje, $cDate, $ivaR, $isrR, $cDate, $cExch, $cComensales, $cRate, $tipo, $cFlagFactura, $cFolio, $cRespPart = "9771", $cRespPart = ""); } //for // Avanza el tramite al siguiente pago $Tramite = new Tramite(); if ($tTotal > $total_anticipo) { // Envia el tramite a aprobacion $usuarioAprobador = new Usuario(); $usuarioAprobador->Load_Usuario_By_ID($aprobador); $mensaje = sprintf("La comprobación <strong>%05s</strong> ha sido <strong>CREADA</strong> y asignada a <strong>%s</strong> para su aprobación", $idTramite, $usuarioAprobador->Get_dato('nombre')); $tramite->Modifica_Etapa($idTramite, COMPROBACION_ETAPA_APROBACION, FLUJO_COMPROBACION, $aprobador, $ruta_autorizadores); $tramite->EnviaMensaje($idTramite, $mensaje); } else { // Cuando se envia un tramite directo a CxP se asume que todos los conceptos // estan ya aprobados. $sql = "UPDATE detalle_comprobacion SET dc_total_aprobado = dc_total WHERE dc_comprobacion = " . $idComprobacion; //error_log($sql); $cnn->insertar($sql); // Envia el tramite directo a CxP $usuarioAprobador = new Usuario(); $usuarioAprobador->Load_Usuario_By_ID($aprobador); $mensaje = sprintf("La comprobación <strong>%05s</strong> ha sido <strong>CREADA</strong> y asignada a <strong>%s</strong> para su revisión", $idTramite, $usuarioAprobador->Get_dato('nombre')); $tramite->Modifica_Etapa($idTramite, COMPROBACION_ETAPA_CXP, FLUJO_COMPROBACION, $aprobador); $tramite->EnviaMensaje($idTramite, $mensaje); } // Marca la solicitud como comprobada
$ruta_autorizacion->generaExcepcion($idTramite, $objetoPresupuesto); if ($existeDelegado) { $duenoActual = new Usuario(); $duenoActual->Load_Usuario_By_ID($delegado); $nombreUsuario = $duenoActual->Get_dato('nombre'); $iniciador = $tramite->Get_dato("t_iniciador"); if ($sObser != "") { $notificacion = new Notificacion(); $observaciones = $notificacion->anotaObservacion($delegado, $HObser, $sObser, FLUJO_SOLICITUD, ""); $queryObserv = sprintf("UPDATE solicitud_viaje SET sv_observaciones = '%s' WHERE sv_tramite = '%s'", $observaciones, $idTramite); $cnn->ejecutar($queryObserv); } else { $queryObserv = sprintf("UPDATE solicitud_viaje SET sv_observaciones = '%s' WHERE sv_tramite = '%s'", $HObser, $idTramite); $cnn->ejecutar($queryObserv); } $tramite->Modifica_Etapa($idTramite, SOLICITUD_ETAPA_EN_APROBACION_POR_DIRECTOR, FLUJO_SOLICITUD, $iduser, ""); $mensaje = sprintf("La Solicitud de Viaje <strong>%05s</strong> ha sido <strong>CREADA</strong> por: <strong>%s</strong> en su nombre y requiere de su aprobación.", $idTramite, $nombreUsuario); $remitente = $delegado; $destinatario = $iniciador; $tramite->EnviaNotificacion($idTramite, $mensaje, $remitente, $destinatario, "1", ""); //"0" para no enviar email y "1" para enviarlo if ($mobile) { echo "<meta http-equiv='Refresh' content='0; URL=http://" . $SERVER . $RUTA_R . "flujos/solicitudes/index.php?okdirector'>"; } else { echo "<script language='Javascript'> location.href='http://" . $SERVER . $RUTA_R . "flujos/solicitudes/index.php?okdirector';</script>"; } } else { //$iduser=$_POST['iu']; if ($sObser != "") { $notificacion = new Notificacion(); $observaciones = $notificacion->anotaObservacion($iduser, $HObser, $sObser, FLUJO_SOLICITUD, "");
$tramite->Modifica_Etapa($t_id, SOLICITUD_ETAPA_APROBACION, FLUJO_SOLICITUD, $aprobador, $ruta_autorizadores); } header("Location: ./index.php?id=" . $t_id); } else { if (isset($_POST['comprar'])) { $texto = $_POST['observ_to_emple']; $t_id = $_POST["tramite"]; $u_id = $_POST["iu"]; $cnn = new conexion(); $query = sprintf("insert into observaciones(\n\t\t\t\tob_id,\n\t\t\t\tob_texto,\n\t\t\t\tob_fecha,\n\t\t\t\tob_tramite,\n\t\t\t\tob_usuario\n\t\t\t)values(\n\t\t\t\tdefault,\n\t\t\t\t'%s',\n\t\t\t\tnow(),\n\t\t\t\t%s,\n\t\t\t\t%s\n\t\t\t)", $texto, $t_id, $u_id); $ob_id = $cnn->insertar($query); $tramite = new Tramite(); //Se modifica la etapa $aprobador = $u_id; $ruta_autorizadores = ""; $tramite->Modifica_Etapa($t_id, SOLICITUD_ETAPA_APROBACION, FLUJO_SOLICITUD, $aprobador, $ruta_autorizadores); //Se envia la notificacion al empleado $mensaje = sprintf("La agencia de viajes ha realizado <strong>OBSERVACIONES</strong> sobre la solicitud <strong>%s</strong>.", $t_id); $destinatario = $_POST['id_empleado']; if ($ob_id != "") { $tramite->EnviaNotificacion($t_id, $mensaje, $u_id, $destinatario); } if ((isset($_POST['rowCount']) && $_POST['rowCount'] != 0 || isset($_POST['rowCountHotel']) && $_POST['rowCountHotel'] != 0 || isset($_POST['rowCountAuto']) && $_POST['rowCountAuto'] != 0) && isset($_POST['iniciador']) && $_POST['iniciador'] != "") { $mensaje2 = sprintf("La agencia de viajes ha realizado <strong>COTIZACIONES</strong> sobre la solicitud <strong>%s</strong>.", $t_id); if ($ob_id != "") { $tramite->EnviaNotificacion($t_id, $mensaje2, $u_id, $destinatario); } require_once "{$RUTA_A}/flujos/solicitudes/services/C_SV.php"; $CViaje = new C_SV(); $cnn = new conexion(); // Carga los datos del tramite
$presupuesto = new Presupuesto(); $objetoPresupuesto = $presupuesto->validarPresupuesto($idTramite); $rutaautorizacion->generaExcepcion($idTramite, $objetoPresupuesto); $rutaautorizacion->generarRutaAutorizacion($idTramite, $t_delegado); $excepciones = $rutaautorizacion->get_Excepciones($idTramite); $rutaautorizacion->agregaAutorizadoresExcedentes($idTramite, $excepciones); $destinatario = $rutaautorizacion->getAprobador($idTramite, $iduser); $etapa = COMPROBACION_ETAPA_EN_APROBACION; $redirect = "okAut"; } elseif ($modo == 'rechazar') { $etapa = COMPROBACION_ETAPA_RECHAZADA_POR_DIRECTOR; $destinatario = $iniciador; $redirect = "action=rechazar"; } //$tramite->Modifica_Dueno($idTramite, $etapa, FLUJO_COMPROBACION, $t_dueno, $iniciador); $tramite->Modifica_Etapa($idTramite, $etapa, FLUJO_COMPROBACION, $destinatario, "", $t_delegado); $mensaje = $tramite->crearMensaje($idTramite, $etapa); $tramite->EnviaNotificacion($idTramite, $mensaje, $iduser, $destinatario, 1); exit(header("Location: ./index.php?{$redirect}")); } else { ?> <script type="text/javascript" src="../../lib/js/jquery/jquery.blockUI.js"></script> <script type="text/javascript" src="../../lib/js/formatNumber.js"></script> <script type="text/javascript" src="../../lib/js/jqueryui/jquery-ui.min.js"></script> <script type="text/javascript" src="js/backspaceGeneral.js"></script> <script type="text/javascript" src="js/cargaDatos.js"></script> <link rel="stylesheet" type="text/css" href="../../css/table_style.css"/> <style> span{ font-weight: bold; }
if ($modo == "rechazar") { $finRuta = true; $tramite->limpiarAutorizaciones($idTramite); $aprobador = $t_iniciador; $siguienteEtapa = COMPROBACION_GASTOS_ETAPA_RECHAZADA; $t_ruta_autorizacion = ""; $mail = 0; $redirect = "action=rechazar"; } if ($modo != "reasignar") { // Crear mensaje para el usuario $mensajeUsuario = $tramite->crearMensaje($idTramite, $siguienteEtapa, false, true, $delegado); //error_log("--->>".$mensajeUsuario."<br />"); } //Modificar la Etapa de la Solicitud $tramite->Modifica_Etapa($idTramite, $siguienteEtapa, FLUJO_COMPROBACION_GASTOS, $aprobador, $t_ruta_autorizacion, $delegado); // Enviar Notificacion para Aprobador $tramite->EnviaNotificacion($idTramite, $mensajeAutorizadores, $t_dueno, $aprobador, $mail, ""); // Enviar notificacion a Usuario if (!$finRuta) { $tramite->EnviaNotificacion($idTramite, $mensajeUsuario, $t_dueno, $t_iniciador, $mail, ""); } // Guardamos todos los cambios en la Base de Datos $tramite->ejecutar("COMMIT"); // Regresar a la pantalla de Cmprobaciones de Viaje if ($mobile) { echo "<meta http-equiv='Refresh' content='0; URL=http://" . $SERVER . $RUTA_R . "flujos/comprobaciones/index.php?docs=docs&type=4{$redirect}'>"; } else { // Regresa a la pagina de Comprobaciones de Gastos if ($modo == "autorizar") { echo "<script language='javascript' type='text/javascript'>\r\n\t \t\t\t\tif(confirm('¿Desea imprimir la comprobación actual?')){\r\n\t \t\t\t\twindow.open('generador_pdf_comp_gts.php?id=" . $idTramite . "', 'imprimir');\r\n\t \t\t\t\tlocation.href='./index.php?docs=docs&type=4&action=autorizar';\r\n\t \t\t}else{\r\n\t \t\t\t\tlocation.href='./index.php?docs=docs&type=4&action=autorizar';\r\n\t \t\t} </script>";
$tramiteCompra = $_POST['tramiteCompra']; $usuarioCompra = $_POST['usuarioCompra']; $excede = $_POST['excede']; $observacionesCompra = utf8_decode($observacionesCompra); //Se inserta la observacion que la agencia ha realizado para confirmar la compra $queryCompra = sprintf("INSERT INTO observaciones(\n\t\t\tob_id,\n\t\t\tob_texto,\n\t\t\tob_fecha,\n\t\t\tob_tramite,\n\t\t\tob_usuario\n\t)VALUES(\n\t\t\tdefault,\n\t\t\t'%s',\n\t\t\tnow(),\n\t\t\t%s,\n\t\t\t%s\n\t)", $observacionesCompra, $tramiteCompra, $usuarioCompra); $ob_id = $cnn->insertar($queryCompra); if ($excede != 1) { // Se enviará la notificacion al empleado para avisar que la compra de la compra, asi como tambien la fecha en la cual esta solicitud ha sido comprada $tramite = new Tramite(); $tramite->Load_Tramite($tramiteCompra); $iniciador = $tramite->Get_dato("t_iniciador"); $mensaje = sprintf("La solicitud de viaje <strong>%05s</strong> ha sido <strong>COMPRADA</strong> de manera exitosa por </strong>Agencia.", $tramiteCompra); $tramite->EnviaNotificacion($tramiteCompra, $mensaje, $usuarioCompra, $iniciador, "1", "", 0); //"0" para no enviar email y "1" para enviarlo, el último argumento indicará si se coloca el link de ingreso a la aplicación (1) y (0) si no es requerido. $tramite->Modifica_Etapa($tramiteCompra, SOLICITUD_ETAPA_COMPRADA, FLUJO_SOLICITUD, $iniciador, ""); // Se inserta la fecha de termino $tramite->setCierreFecha($tramiteCompra); } } // Seleccionar las observaciones introducidas por el usuario if (isset($_POST['observTramite'])) { $id_Solicitud = $_POST['observTramite']; $observaciones = ""; //error_log("Id de la solicitud: ".$id_Solicitud); $cnn = new conexion(); $tramite = new Tramite(); $tramite->Load_Tramite($id_Solicitud); $t_dueno = $tramite->Get_dato("t_dueno"); $_arreglo = array(); if ($t_dueno == 3000) {
if ($texto != "") { $query = sprintf("INSERT INTO observaciones(ob_id,ob_texto,ob_fecha,ob_tramite,ob_usuario)\n\t\t\t\t\t\t\tVALUES(default,'%s',now(),%s,%s)", $texto, $t_id, $u_id); $ob_id = $cnn->insertar($query); } @mysql_query("BEGIN"); $tramite = new Tramite(); $rutauatorizacion = $tramite->GetRutaAutorizacion($t_id); $ruta_autorizadores = $rutauatorizacion[0] . "|" . $rutauatorizacion[1] . "|" . $rutauatorizacion[2]; $aprobador = $rutauatorizacion[1]; if ($aprobador == '') { @mysql_query("ROLLBACK"); header("Location: ./index.php?errsave=n"); } //Se modifica la etapa $tramite = new Tramite(); $tramite->Modifica_Etapa($t_id, SOLICITUD_ETAPA_APROBACION, FLUJO_SOLICITUD, $aprobador); $tramite->Modifica_Autorizaciones($t_id, 0, 0); $duenoActual = new Usuario(); $duenoActual->Load_Usuario_By_ID($u_id); $mensaje = sprintf("<a href=" . $RUTA_R . "flujos/solicitudes/index.php?view=view&id=%s>La Solicitud de Viaje <strong>%05s</strong> ha sido <strong>Aceptada</strong> por: <strong>%s</strong> y requiere de su aprobación.</a>", $t_id, $t_id, $duenoActual->Get_dato('nombre')); $tramite = new Tramite(); $tramite->EnviaNotificacion($t_id, $mensaje, $u_id, $aprobador, "1"); @mysql_query("COMMIT"); header("Location: ./index.php?action=comprar"); } } } } // Muestra la pantalla de Autorizacion if (isset($_GET['id']) && $_GET['id'] != "" && isset($_GET['view']) || isset($_GET['edit_view']) && isset($_GET['id'])) { $cnn = new conexion();
// Envia el tramite a cancelacion $tramite = new Tramite(); $tramite->Load_Tramite($idTramite); $iniciador = $tramite->Get_dato("t_iniciador"); $aprobador = $tramite->Get_dato("t_dueno"); $t_etapa_actual = $tramite->Get_dato("t_etapa_actual"); $t_flujo = $tramite->Get_dato("t_flujo"); $usuarioAprobador = new Usuario(); $usuarioAprobador->Load_Usuario_By_ID($aprobador); $mensaje = sprintf("La comprobación <strong>%05s</strong> ha sido <strong>RECHAZADA</strong> por <strong>%s</strong>.", $idTramite, $usuarioAprobador->Get_dato('nombre')); $tramite->EnviaMensaje($idTramite, $mensaje); // Notese que el mensaje se envia antes que se cambia la etapa if($t_flujo==FLUJO_COMPROBACION){ $tramite->Modifica_Etapa($idTramite, COMPROBACION_ETAPA_RECHAZADA, FLUJO_COMPROBACION, $iniciador); } else if($t_flujo==FLUJO_COMPROBACION_TDC){ $tramite->Modifica_Etapa($idTramite, COMPROBACION_TDC_ETAPA_RECHAZADA, FLUJO_COMPROBACION_TDC, $iniciador); } else if($t_flujo==FLUJO_REEMBOLSO_CAJA_CHICA){ $tramite->Modifica_Etapa($idTramite, COMPROBACION_CAJA_CHICA_ETAPA_RECHAZADA, FLUJO_REEMBOLSO_CAJA_CHICA, $iniciador); } header("Location: ./index.php?action=rechazar"); } ?> <link rel="stylesheet" type="text/css" href="../../css/jquery.autocomplete.css"/> <link rel="stylesheet" type="text/css" href="../../css/date_input.css"/> <link rel="stylesheet" type="text/css" href="../../css/table_style.css"/>
$tramite = new Tramite(); $tramite->Load_Tramite($idTramite); $iniciador = $tramite->Get_dato("t_iniciador"); $aprobador = $tramite->Get_dato("t_dueno"); $usuarioAprobador = new Usuario(); $usuarioAprobador->Load_Usuario_By_ID($aprobador); // Busca el usuario agencia para que le podamos notificar $Us = new Usuario(); $agencia = $Us->buscaAgenciaViajesParaSolicitud($idceco); $mensaje = sprintf("La solicitud <strong>AMEX %05s</strong> ha sido <strong>CANCELADA</strong> por <strong>%s</strong>.", $idTramite, $usuarioAprobador->Get_dato('nombre')); // Manda el mensaje a las 3 partes de la transaccion $tramite->EnviaNotificacion($idTramite, $mensaje, $iniciador, $aprobador); $tramite->EnviaNotificacion($idTramite, $mensaje, $iniciador, $agencia); $tramite->EnviaNotificacion($idTramite, $mensaje, $iniciador, $iniciador); //$tramite->EnviaMensaje($idTramite, $mensaje); // Notese que el mensaje se envia antes que se cambia la etapa $tramite->Modifica_Etapa($idTramite, ANTICIPO_AMEX_ETAPA_RECHAZADA, FLUJO_AMEX, $iniciador); // Regresa a la pagina de solicitudes header("Location: ./index.php?action=rechazar"); // // Muestra la pantalla de Autorizacion // } else { if (isset($_GET['id']) && $_GET['id'] != "" && isset($_GET['view']) || isset($_GET['edit_view'])) { $empleado = $_SESSION["idusuario"]; $cnn = new conexion(); $aux = array(); $query = "SELECT t_flujo from tramites where t_id={$_GET['id']} "; $rst = $cnn->consultar($query); $datos = mysql_fetch_assoc($rst); if ($datos["t_flujo"] == FLUJO_AMEX) { require_once "solicitud_view_edit_amex.php";
$fila = mysql_fetch_assoc($rst); $idProv = $fila['pro_id']; if ($num_rows > 0) { $idProv = $fila['pro_id']; } else { $idProv = 0; } //************Detalle Comprobación Add_detalle($idComprobacion, $cCargo, $cConc, $cRef, $cP_RFC, $cAmt, $cImp, $cImpVal, $cTotal, 0, $forma_gasto, $montoexc, $ivaexc, $idProv, $kilometraje, $cDate, $ivaR, $isrR, $cDate, $cExch, $cComensales, $cRate, $tipo, $cFlagFactura, $cFolio, $cRespPart = "9771", $cRespPart = ""); } //for // Envia el tramite a aprobacion $usuarioAprobador = new Usuario(); $usuarioAprobador->Load_Usuario_By_ID($aprobador); $mensaje = sprintf("El reembolso de Caja Chica <strong>%05s</strong> ha sido <strong>CREADO</strong> y asignado a <strong>%s</strong> para su aprobación", $idTramite, $usuarioAprobador->Get_dato('nombre')); $tramite->Modifica_Etapa($idTramite, COMPROBACION_CAJA_CHICA_ETAPA_APROBACION, FLUJO_REEMBOLSO_CAJA_CHICA, $aprobador, $ruta_autorizadores); $tramite->EnviaMensaje($idTramite, $mensaje); // Termina transacción $tramite->insertar("COMMIT"); header("Location: ./index.php?oksave"); } else { header("Location: ./index.php?errsave"); die; } //if row } //if guarda comp //*****************************//COMPROBACION DE VIAJE//*****************************// if (isset($_GET['new3'])) { function forma_comprobacion() {
} $duenoActual01 = new Usuario(); if ($duenoActual01->Load_Usuario_By_ID($t_dueno)) { $dueno_act_nombre = $duenoActual01->Get_dato('nombre'); } else { $agrup_usu = new AgrupacionUsuarios(); $agrup_usu->Load_Grupo_de_Usuario_By_ID($t_dueno); $dueno_act_nombre = $agrup_usu->Get_dato("au_nombre"); } $remitente = $t_dueno; $destinatario = $tramite->Get_dato("t_iniciador"); //$mensaje = sprintf("La Comprobación de Viaje <strong>%05s</strong> ha sido <strong>MODIFICADA</strong> por <strong>%05s</strong>", $idTramite, $dueno_act_nombre); //$tramite->EnviaNotificacion($idTramite, $mensaje, $remitente, $destinatario, 1, ""); if (!$finRuta) { $mensaje = $tramite->crearMensaje($idTramite, COMPROBACION_ETAPA_EN_APROBACION, false, true, $t_delegado); $tramite->Modifica_Etapa($idTramite, COMPROBACION_ETAPA_EN_APROBACION, FLUJO_COMPROBACION, $siguienteAprobador, ""); $tramite->EnviaNotificacion($idTramite, $mensaje, $remitente, $destinatario, 1, ""); $mensaje2 = sprintf("La Comprobación de Viaje <strong>%05s</strong> ha sido <strong>AUTORIZADA</strong> por <strong>%05s</strong> y requiere de su autorización", $idTramite, $dueno_act_nombre); $tramite->EnviaNotificacion($idTramite, $mensaje2, $remitente, $siguienteAprobador, 1, ""); } else { $mensaje = sprintf("La Comprobación de Viaje <strong>%05s</strong> ha sido <strong>APROBADA</strong> por completo.", $idTramite); $tramite->Modifica_Etapa($idTramite, COMPROBACION_ETAPA_APROBADA, FLUJO_COMPROBACION, $siguienteAprobador, ""); $tramite->EnviaNotificacion($idTramite, $mensaje, $remitente, $destinatario, 1, ""); $tramite->setCierreFecha($idTramite); $queryTramite = sprintf("SELECT * FROM tramites WHERE t_id = {$idTramite}"); $res_Tramite = $cnn->consultar($queryTramite); while ($fila_Tramite = mysql_fetch_assoc($res_Tramite)) { $fCierre = $fila_Tramite['t_fecha_cierre']; } $f = $fCierre = explode("-", $fCierre); $mes = $f[1];
} if ($row['Falta_td'] == 1) { $parametro .= " OR( ut_tipo = 11 AND p_pais_viaje = " . $row['Destino'] . ")"; } if ($row['Falta_v'] == 1) { $parametro .= " OR( ut_tipo = 5 AND p_pais_viaje = " . $row['Origen_1'] . ") "; } } $sql = "SELECT DISTINCT ut_usuario\n\t\t\t\t\tFROM usuario_tipo\n\t\t\t\t\tJOIN empleado ON idfwk_usuario = ut_usuario\n\t\t\t\t\tJOIN cecos ON cc_id = idcentrocosto\n\t\t\t\t\tJOIN sociedad ON s_id = cc_sociedad_id\n\t\t\t\t\tJOIN pais ON p_id = s_pais\n\t\t\t\t\tWHERE 1!=1\n\t\t\t\t\t{$parametro}"; $res = @mysql_query($sql); $mensaje = "<a href=" . $RUTA_R . "flujos/notificaciones/index.php?id={$idTramite}>La Solicitud de Viaje <strong>{$idTramite}</strong> ha sido <strong>CREADA</strong> por: <strong>" . $_POST['usuario'] . "</strong> y requiere de su Cotización.</a>"; while ($row = @mysql_fetch_assoc($res)) { $tramite->EnviaNotificacion($idTramite, $mensaje, $iduser, $row['ut_usuario'], 1); //"0" para no enviar email y "1" para enviarlo } $tramite->Modifica_Etapa($idTramite, SOLICITUD_ETAPA_APROBACION, FLUJO_SOLICITUD, 0, $string_ruta_autorizacion); //Validacion de ruta de autorización solicitud $sql_ruta = "SELECT t_ruta_esperada \n\t\t\t\t\t\tFROM tramites \n\t\t\t\t\t\tWHERE t_id = '{$idTramite}' \n\t\t\t\t\t\tAND (t_ruta_esperada LIKE '%||%' \n\t\t\t\t\t\t\tOR t_ruta_esperada LIKE '%|0|%' \n\t\t\t\t\t\t\tOR t_ruta_esperada LIKE '%|' \n\t\t\t\t\t\t\tOR t_ruta_esperada LIKE '%|0')"; $res = $cnn->consultar($sql_ruta); $tot = @mysql_num_rows($res); if ($tot == 1) { $mensaje = "<a href=" . $RUTA_R . "flujos/solicitudes/index.php?view=view&id={$idTramite}>La Solicitud de Viaje <strong>{$idTramite}</strong> ha sido <strong>CREADA</strong> y no cuenta con los autorizadores necesarios, favor de comunicarse con el administrador del sistema.</a>"; $tramite->EnviaNotificacion($idTramite, $mensaje, $iduser, $iduser, 1); //"0" para no enviar email y "1" para enviarlo $sql_administradores = "SELECT u_id \n\t\t\t\t\t\tFROM usuario, usuario_tipo \n\t\t\t\t\t\tWHERE u_id = ut_usuario \n\t\t\t\t\t\tAND ut_tipo = 2 "; $res = $cnn->consultar($sql_administradores); $mensaje = "<a href=" . $RUTA_R . "admin/reasignacion/index.php?sol=RI&oculto=0>La Solicitud de Viaje <strong>{$idTramite}</strong> ha sido <strong>CREADA</strong> por: <strong>" . $_POST['usuario'] . "</strong> y no cuenta con los autorizadores necesarios, requiere reasignacion de autorizadores</a>"; while ($row = @mysql_fetch_assoc($res)) { $tramite->EnviaNotificacion($idTramite, $mensaje, $iduser, $row['u_id'], 1); //"0" para no enviar email y "1" para enviarlo }
if ($perfil == GERENTE_FINANZAS) { $validador = "Gerente"; } else { $validador = "Supervisor"; } // Tramites para aprobar //error_log("-------------->>>>>>>>>>>>>>>tramites a aprobar: ".$tramites_aceptados); if ($tramites_aceptados != 0) { $tramites_a_aprobar = explode('|', $tramites_aceptados); $no_tramites_a_aprobar = count($tramites_a_aprobar); for ($i = 0; $i < (int) $no_tramites_a_aprobar; $i++) { if ($tramites_a_aprobar[$i] != "") { //error_log($tramites_a_aprobar[$i]); $idT = $tramites_a_aprobar[$i]; $t_dueno = $rutaAuto->getDueno($idT); $tramite->Modifica_Etapa($idT, COMPROBACION_ETAPA_APROBADA_POR_SF, FLUJO_COMPROBACION, "2000", ""); //Envia notificacion al Supervisor/Gerente de Finanzas de la solicitud de invitaci�n ---------------------------------- $mensaje = sprintf("La Comprobación de Viaje <strong>%05s</strong> ha sido <strong>APROBADA</strong> por el %s de Finanzas.", $idT, $validador); //error_log($mensaje); $remitente = $t_dueno; $destinatario = "2000"; $tramite->EnviaNotificacion($idT, $mensaje, $remitente, $destinatario, "0", ""); //false para no enviar email } } } // Tramites a rechazar //error_log("-------------->>>>>>>>>>>>>>>tramites a rechazar: ".$tramites_rechazados); if ($tramites_rechazados != 0) { $tramites_a_rechazar = explode('|', $tramites_rechazados); $no_tramites_a_rechazar = count($tramites_a_rechazar);
$rst = $cnn->consultar($query); while ($fila = mysql_fetch_assoc($rst)) { $sv_ceco_paga = $fila['sv_ceco_paga']; } $queryResp = sprintf("SELECT cc_responsable FROM cat_cecos WHERE cc_id=%s", $sv_ceco_paga); $rstResp = $cnn->consultar($queryResp); while ($fila = mysql_fetch_assoc($rstResp)) { $cc_responsable = $fila['cc_responsable']; } $GerenteArea = new Empleado(); $GerenteArea->Load_id_empleado($cc_responsable); $destinatario = $GerenteArea->Get_dato('idempleado'); //construimos la segunda ruta de autorizacion $rutaAutorizacion = new RutaAutorizacion(); $aprobadornuevo = $rutaAutorizacion->generaRutaSegundaAutorizacion($destinatario, $tramiteId); $tramite->Modifica_Etapa($tramiteId, SOLICITUD_ETAPA_SEGUNDA_APROBACION, FLUJO_SOLICITUD, $aprobadornuevo, ""); $usuarioCreador = new Usuario(); $usuarioCreador->Load_Usuario_By_ID($tramite->Get_dato("t_iniciador")); $mensaje = sprintf("El monto que la agencia de viajes ha registrado para la compra del boleto de avión de la solicitud de viaje <strong>%05s</strong> creada por:<strong>%s</strong> excede el límite de tolerancia y requiere de tu autorización.", $tramiteId, $usuarioCreador->Get_dato('nombre')); $remitente = $tramite->Get_dato("t_dueno"); //se le enviara al Gerente de area $tramite->EnviaNotificacion($tramiteId, $mensaje, $remitente, $destinatario, "0", ""); //"0" para no enviar email y "1" para enviarlo //queda pendiente las notificaciones de la segunda ruta. } //funcion que nos regresara el numero de CECO al cual esta asignado el usuario ( creacion de una solicitud viaje) if (isset($_POST['idEmpleado'])) { $idEmpleado = (int) $_POST['idEmpleado']; $cecoEmpleado = 0; $cnn = new conexion(); $query = sprintf("SELECT cc_centrocostos from cat_cecos where cc_id = (select idcentrocosto from empleado where idempleado = %s)", $idEmpleado);
$HObser = ""; $observaciones_solicitud = $notificacion->anotaObservacion($delegado, $HObser, $observaciones_solicitud, FLUJO_SOLICITUD_INVITACION, SOLICITUD_INVITACION_ETAPA_APROBACION); } else { $observaciones_solicitud = $HObser; } $invitacionID = $Solicitud_invitacion->Add_invitacion($motivo, $no_invitados, $monto_solicitud, $monto_pesos_solicitud, $divisa_solicitud_final, $cecos_solicitud, $idTramite, $ciudad_solicitud, $observaciones_solicitud, "", $fechainvit, $inv_lugar, $inv_hubo_exedente); } //Inserción del solicitante for ($i = 1; $i <= $_POST['rowCount']; $i++) { $sNombre = $_POST['nombre' . $i]; $sPuesto = $_POST['puesto' . $i]; $sTipo = $_POST['tipo' . $i]; $sEmpresa = $_POST['empresa' . $i]; $id_detalle_solicitud_invitacion = add_detalle_solicitud_invitacion($invitacionID, $sNombre, $sPuesto, $sEmpresa, $sTipo, $idTramite); } $tramite->Modifica_Etapa($idTramite, SOLICITUD_INVITACION_ETAPA_EN_APROBACION_POR_DIRECTOR, FLUJO_SOLICITUD_INVITACION, $iduser, ""); $duenoActual = new Usuario(); $duenoActual->Load_Usuario_By_ID($delegado); $nombreUsuario = $duenoActual->Get_dato('nombre'); $mensaje = sprintf("La solicitud de Invitación <strong>%05s</strong> ha sido <strong>CREADA</strong> por: <strong>%s</strong> en su nombre y requiere de su aprobación.", $idTramite, $nombreUsuario); $tramite->EnviaNotificacion($idTramite, $mensaje, $delegado, $iduser, "1", ""); //"0" para no enviar email y "1" para enviarlo $tramite->actualizaDelegado($idTramite, $delegado); header("Location: ./index.php?docs=docs&type=2&oksave"); } else { //echo "<meta http-equiv='location' content='0; url=http://".$SERVER.$RUTA_R."flujos/solicitudes/index.php?docs=docs&type=2&errsave'>"; header("Location: ./index.php?docs=docs&type=2&errsave"); //die(); } //if row }
//Actualizamos el campo de observaciones if ($sObser != "") { $query = sprintf("UPDATE comprobaciones SET co_observaciones = '%s' WHERE co_tramite = '%s'", $sObser, $idTramite); $cnn->ejecutar($query); } // Devolvemos a 1 el campo t_comprobado del tramite de la solicitud $query = sprintf("UPDATE tramites SET t_comprobado = '0' WHERE t_id = '%s'", $IdTramSolc); $cnn->ejecutar($query); // Envia el tramite a cancelacion $tramite = new Tramite(); $tramite->Load_Tramite($idTramite); $iniciador = $tramite->Get_dato("t_iniciador"); $mensaje = sprintf("<a href=" . $RUTA_R . "flujos/comprobaciones/index.php?view=view&id=%s>La Comprobación de Viaje <strong>%05s</strong> ha sido <strong>DEVUELTA</strong> por <strong>%s</strong>.</a>", $idTramite, $IdTramSolc, $_POST["nu"]); $tramite->EnviaNotificacion($idTramite, $mensaje, $u_id, $iniciador, "0"); // Notese que el mensaje se envia antes que se cambia la etapa $tramite->Modifica_Etapa($idTramite, $etapa, FLUJO_COMPROBACION, $iniciador); // Regresa a la pagina de solicitudes header("Location: ./index.php?action=rechazar"); die; // Muestra la pantalla de Autorización } else { if (isset($_GET['view']) && isset($_GET['id']) || isset($_GET['edit_view']) && isset($_GET['id'])) { $idTramite = $_GET['id']; $idUser = $_SESSION["idusuario"]; $noEmpleado = $_SESSION["empleado"]; // Datos de la comprobacion $query = "SELECT co_id, co_total, DATE_FORMAT(co_fecha_registro,'%d/%m/%Y') AS fecha_registro, \n\t\t\t\tDATE_FORMAT(sv_fecha_viaje,'%d/%m/%Y') AS fecha_viaje,\n\t\t\t\t(SELECT cd_nombre FROM ciudad_destino WHERE cd_id = svi_ciudad_destino) AS ciudad_destino, \n\t\t\t\t(SELECT cd_pais FROM ciudad_destino WHERE cd_id = svi_ciudad_destino) AS paisd, \n\t\t\t\t(SELECT pd_nombre FROM pais_destino WHERE pd_id = paisd) AS pais_destino,\n\t\t\t\t(SELECT et_etapa_nombre FROM etapas WHERE et_etapa_id = t_etapa_actual AND et_flujo_id = t_flujo) AS etapa,\n\t\t\t\tCONCAT(CONVERT(cc_codigo, CHAR(20)), ' - ', cc_nombre) as CECO, IF(co_orden_estadistica=0, '',co_orden_estadistica) as co_orden_estadistica, \n\t\t\t\t(SELECT j_nombre FROM jerarquia, empleado WHERE j_id = jerarquia AND idfwk_usuario = t_iniciador) as jerarquia,\n\t\t\t\t(SELECT u_usuario FROM usuario WHERE u_id = t_iniciador) as solicitante,\n\t\t\t\tco_tramite, co_observaciones, co_tramite_solicitud, t_etiqueta, t_iniciador, t_dueno\n\t\t\t\tFROM comprobaciones\n\t\t\t\tLEFT JOIN tramites ON (co_tramite = t_id)\n\t\t\t\tLEFT JOIN solicitud_viaje ON sv_tramite = co_tramite_solicitud\n\t\t\t\tLEFT JOIN sv_itinerario ON sv_id = svi_solicitud \n\t\t\t\tLEFT JOIN detalle_comprobacion ON co_id = dc_comprobacion\n\t\t\t\tLEFT JOIN cecos ON cc_id = dc_ceco\n\t\t\t\tWHERE co_tramite = '" . $idTramite . "'"; $rst = $cnn->consultar($query); $filaComp = mysql_fetch_assoc($rst); $solicitante = $filaComp['solicitante']; $jerarquia = $filaComp['jerarquia'];
// Obtiene el nombre del usuario CxP que le corresponde a esta comprobacion $u = new Usuario(); $aprobador = $u->buscaAprobadorCxPParaComprobacion($cc_id_comprobacion); // Envia el tramite directo a CxP $usuarioAprobador = new Usuario(); $usuarioAprobador->Load_Usuario_By_ID($aprobador); $mensaje = sprintf("El gasto adicional de la comprobación <strong>%05s</strong> ha sido <strong>RECHAZADO</strong> y asignada a <strong>%s</strong> para su revisión", $idTramite, $usuarioAprobador->Get_dato('nombre')); // Envia el tramite a la etapa correcta basado en el flujo $tramite = new Tramite(); $tramite->EnviaMensaje($idTramite, $mensaje); if($t_flujo==FLUJO_COMPROBACION){ $tramite->Modifica_Etapa($idTramite, COMPROBACION_ETAPA_CXP, FLUJO_COMPROBACION, $aprobador); } else if($t_flujo==FLUJO_COMPROBACION_TDC){ $tramite->Modifica_Etapa($idTramite, COMPROBACION_TDC_ETAPA_CXP, FLUJO_COMPROBACION_TDC, $aprobador); } else if($t_flujo==FLUJO_REEMBOLSO_CAJA_CHICA){ $tramite->Modifica_Etapa($idTramite, COMPROBACION_CAJA_CHICA_ETAPA_CXP, FLUJO_REEMBOLSO_CAJA_CHICA, $aprobador); } header("Location: ./index.php?action=rechazar"); die(); } ?> <link rel="stylesheet" type="text/css" href="../../css/jquery.autocomplete.css"/> <link rel="stylesheet" type="text/css" href="../../css/date_input.css"/> <link rel="stylesheet" type="text/css" href="../../css/table_style.css"/>
$co_observaciones = $fila['co_observaciones']; $notificacion = new Notificacion(); $observacionesNuevasCodificadas = utf8_decode($ObservacionesNuevas); $observaciones = $notificacion->anotaObservacion($t_dueno, $co_observaciones, $observacionesNuevasCodificadas, FLUJO_COMPROBACION, COMPROBACION_ETAPA_EN_APROBACION); $queryInsertaObs = sprintf("UPDATE comprobaciones SET co_observaciones='%s' WHERE co_mi_tramite='%s'", $observaciones, $tramiteId); $cnn->ejecutar($queryInsertaObs); } //Notificaciones $remitente = $t_dueno; //enviar la notificacion al empleado ----> t_iniciador $destinatario = $tramite->Get_dato("t_iniciador"); $mensaje = sprintf("<strong>Finanzas</strong> ha realizado observaciones a la comprobacion <strong>%05s</strong>", $tramiteId); $tramite->EnviaNotificacion($tramiteId, $mensaje, $remitente, $destinatario, "0", ""); //"0" para no enviar email y "1" para enviarlo //cambio de etapa $tramite->Modifica_Etapa($tramiteId, COMPROBACION_ETAPA_DEVUELTO_CON_OBSERVACIONES, FLUJO_COMPROBACION, $destinatario, ""); } if (isset($_POST['limpiarRegistros'])) { $cnn = new conexion(); $queryLimpieza = sprintf("DELETE FROM total_temp WHERE TRUE;"); $cnn->ejecutar($queryLimpieza); } //Nos regresara el presupuesto que esta destinado a el CECO. if (isset($_POST['cecoPresupuesto'])) { $cnn = new conexion(); $presupuestoDisponible = 0; $cecoPresupuesto = $_POST['cecoPresupuesto']; $queryPresupuesto = sprintf("SELECT SUM(pp_presupuesto_disponible) AS 'pp_presupuesto_disponible' FROM periodo_presupuestal WHERE pp_ceco='%s'", $cecoPresupuesto); $rstPresupuesto = $cnn->consultar($queryPresupuesto); while ($fila = mysql_fetch_array($rstPresupuesto)) { $presupuestoDisponible = $fila["pp_presupuesto_disponible"];
$ruta_autorizacion = new Usuario(); $autorizadores = $ruta_autorizacion->buscaAprobadorParaSolicitud($iduser, FLUJO_COMPROBACION); $string_ruta_autorizacion = $autorizadores[1] . "|" . $autorizadores[0]; $aprobador = $autorizadores[1]; if ($etapa == COMPROBACION_ETAPA_APROBACION) { // Marca la solicitud como comprobada $query = sprintf("UPDATE tramites SET t_comprobado = true WHERE t_id=%s", $idSolicitud); $cnn->insertar($query); $sql = "SELECT co_tramite_solicitud FROM comprobaciones WHERE co_id = {$idComprobacion}"; $Res_sql = $cnn->consultar($sql); $IdTramSolc = mysql_result($Res_sql, 0, "co_tramite_solicitud"); $mensaje = sprintf("<a href=" . $RUTA_R . "flujos/comprobaciones/index.php?view=view&id=%s>La Comprobación de Viaje <strong>%05s</strong> ha sido <strong>CREADA</strong> por: <strong>%s</strong> y requiere de tu autorización.", $idTramite, $IdTramSolc, $_POST["nu"]); $tramite->EnviaNotificacion($idTramite, $mensaje, $iduser, $aprobador, "1"); //"0" para no enviar email y "1" para enviarlo } $tramite->Modifica_Etapa($idTramite, $etapa, FLUJO_COMPROBACION, $aprobador, $string_ruta_autorizacion); // Termina transacción mysql_query("COMMIT"); header("Location: ./index.php?oksave"); die; } else { mysql_query("ROLLBACK"); header("Location: ./index.php?errorsave"); die; } //if row } else { //if guarda comp /*=================== Nueva comprobación ===================*/ if (isset($_GET['new'])) { function forma_comprobacion()
//query que eliminara el itinerario al cual este ligado a una solicitud de viaje $query_elimina_itinerario = "DELETE FROM sv_itinerario WHERE svi_id =" . $id_svi . ""; $cnn->ejecutar($query_elimina_itinerario); } //query que eliminara la solicitud de viaje con la que este ligado a el tramite seleccionado $query_elimina_sv = "DELETE FROM solicitud_viaje WHERE sv_id=" . $id_sv . ""; $cnn->ejecutar($query_elimina_sv); $sql = "DELETE FROM excepciones \n\t\t\t\t\tWHERE ex_solicitud = " . $id_sv; $cnn->ejecutar($sql); //query que eliminara los conceptos de el tramite seleccionado $query_elimina_obsv = "DELETE FROM sv_conceptos_detalle WHERE svc_detalle_tramite=" . $tramiteID . ""; $cnn->ejecutar($query_elimina_obsv); //***************************************************************************** //Actualizar tramite $idTramite = $tramiteID; $tramite->Modifica_Etapa($idTramite, SOLICITUD_ETAPA_SIN_ENVIAR, FLUJO_SOLICITUD, "106", ""); $query = sprintf("update tramites set t_fecha_ultima_modificacion = now() where t_id ='%s'", $tramiteID); $cnn->ejecutar($query); } else { $idTramite = $tramite->Crea_Tramite($iduser, $idempresa, SOLICITUD_ETAPA_SIN_ENVIAR, FLUJO_SOLICITUD, $sMotivo, $delegado); if ($idTramite <= 0) { $CViaje->insertar("ROLL BACK"); header("Location: ./index.php?errsave"); } } if (isset($_POST['observ']) && $_POST['observ'] != "") { $sObservaciones = $_POST['observ']; } else { $sObservaciones = ""; } if (isset($_POST['Accion']) == 'true') {