<%-- Document : xml_get_oficio_pdf Created on : 04/01/2013, 11:32:56 PM Author : Martha --%> <%@page import = "java.sql.*" import = "dates.*" import = "conexion.*" import = "java.util.*" import = "java.util.Map" import = "java.util.HashMap" import = "java.util.Date" import = "java.text.SimpleDateFormat" import = "java.io.*" import = "java.lang.*" import = "general.Config" import = "general.Permisos" import = "net.sf.jasperreports.engine.*" import = "net.sf.jasperreports.engine.JasperExportManager" import = "net.sf.jasperreports.engine.JasperFillManager" import = "net.sf.jasperreports.engine.JasperPrint" import = "net.sf.jasperreports.engine.JasperReport" import = "net.sf.jasperreports.engine.util.JRLoader" import = "net.sf.jasperreports.engine.data.JRBeanCollectionDataSource" import = "net.sf.jasperreports.engine.design.JasperDesign" import = "net.sf.jasperreports.engine.design.JRDesignQuery" import = "net.sf.jasperreports.engine.xml.JRXmlLoader" import = "net.sf.jasperreports.engine.util.JRLoader" %> Reportes de Declaraciones <% out.println(""); String nompag[] = request.getRequestURI().split("/"); /********************** tomo el formato de la fecha *************************/ SimpleDateFormat formato = new SimpleDateFormat("yyyy"); Date hoy = new Date(); String fecha_hoy = formato.format(hoy); %> <% Conexion c = null; Connection lc_connection = null; ResultSet lrs_res = null; Statement lst_stm = null; ResultSet lrs_res1 = null; Statement lst_stm1 = null; /*Segunda Conexión*/ ConexionDeclaranet cd = null; Connection lcd_connection = null; Statement lstg_conecta=null; /*FIN. SEGUNDA CONEXIÓN*/ boolean lb_connection = true; Connection lcnt_con = null; String debug = new String("si"); String emergent_error = new String(""); //String nompag[] = request.getRequestURI().split("/"); String ruta = new String(""); String ruta_archivos = new String(""); String ruta_imagen = new String(""); String id_tipodeclaracion = request.getParameter("id_tipodeclaracion"); String id_dep = request.getParameter("id_dep"); String status = request.getParameter("status"); String tipo =request.getParameter("tipo"); String tipodeclaracion = ""; boolean correcto = false; String Wquery = new String(""); String ls_query = ""; String nombre_jrxml = new String(""); String tittle_reporte = new String(" DECLARACIONES"); String ruta_archivos_exportar = new String(""); String nombre_archivo = new String(""); String no_oficio= ""; //Integer x=0; String AWhere = new String(""); Dates_minus suma = new Dates_minus(); java.sql.Date fechaSesenta = null; Date fechafinal = new Date(); Date fechadeclaracion = new Date(); Date fechaalta = new Date(); Date fechahoy = new Date(); Date fechabaja = new Date(); String funcionarios = ""; String funcionariosOmisos = ""; SimpleDateFormat formato1 = new SimpleDateFormat("yyyy"); String FechaOmisos = formato1.format(fechaalta)+"-10-31"; String FechaComparar = formato1.format(fechaalta)+"-10-01"; //String tittle_reporte = new String(" DECLARACIONES"); /********* INICIO. Conexión a la base de datos 2 ********/ try { cd = new ConexionDeclaranet(); lcd_connection = cd.getConnection(); lstg_conecta = lcd_connection.createStatement(); lst_stm = lcd_connection.createStatement(); }catch (Exception e) { emergent_error = "Error al conectarse a la base de datos "; if (debug.equals("si")) { emergent_error += e; } lb_connection = false; } /********* FIN. Conexión a la base de datos ********/ if (lb_connection) { try { // Creando ruta de archivos fisica try { java.net.URL url_clase = Conexion.class.getResource(""); ruta = url_clase.getPath().substring(0, url_clase.getPath().indexOf("WEB-INF")); int hli_vacio = 0; String ls_path = ""; // Eliminar los espacios en la ruta (%20) hli_vacio = ruta.indexOf("%20"); if (hli_vacio > 0) { ls_path = ruta.substring(0, hli_vacio); while (hli_vacio < ruta.length() && hli_vacio > 0) { ls_path = ls_path + " " + ruta.substring(hli_vacio + 3, ruta.length()); hli_vacio = ruta.indexOf("%20", hli_vacio + 1); if (hli_vacio == -1) { ruta = ls_path; break; } ls_path = ls_path.substring(0, hli_vacio - 2); } } } catch (Exception e) { emergent_error += " Error al obtener la ruta física para almacenar el achivo: "; if (debug.equals("si")) { emergent_error += e; } throw new Exception(e.toString()); } if(!id_dep.equals("")){ if(id_dep.equals("0")){ id_dep =" "; } else{ id_dep = " and pf.id_dependencia="+id_dep; } } if(request.getParameter("nooficio") !=null){ no_oficio="DRSP-"+request.getParameter("nooficio")+"-"; fecha_hoy="/"+fecha_hoy; } /**/ if(id_tipodeclaracion.equals("1") && status.equals("2")){ AWhere=" "+id_dep; ls_query="select a.fecha_alta, a.id_altabaja, " + "UPPER(IFNULL(de.nombre_dep, '')) as nombre_dep, " + " UPPER(IFNULL(pf.area, '')) as area, UPPER(IFNULL(tc.cargo, '')) as cargo " + "from altabaja a " + "LEFT JOIN declaration d ON d.id_altabaja=a.id_altabaja " + "LEFT JOIN puesto_funcionario pf ON pf.id_puesto_funcionario=a.id_puesto_funcionario " + "left join tipo_cargos tc ON tc.id_tipo_cargo=pf.id_tipo_cargo " + "LEFT JOIN dependencias de ON de.id_cat_dep_estatales=pf.id_dependencia " + "where a.clave='C' " + AWhere +" " + " order by a.fecha_alta"+";"; lrs_res = lst_stm.executeQuery(ls_query); //out.println(ls_query); while (lrs_res.next()) { fechaSesenta = suma.suma_dias(formato.parse(lrs_res.getString("fecha_alta")), 61); fechafinal = new java.util.Date(fechaSesenta.getTime()); fechaalta = formato.parse(lrs_res.getString("fecha_alta")); //fechadeclaracion = formato.parse(lrs_res.getString("fecha_declaracion")); if((fechahoy.compareTo(fechaalta)==0 || fechahoy.after(fechaalta)) && fechahoy.before(fechafinal)){ if(funcionariosOmisos.equals("")){ funcionariosOmisos+=" a.id_altabaja="+lrs_res.getString("id_altabaja"); } else{ funcionariosOmisos+=" or a.id_altabaja="+lrs_res.getString("id_altabaja"); } } else{ if(funcionarios.equals("")){ funcionarios+=" a.id_altabaja="+lrs_res.getString("id_altabaja"); } else{ funcionarios+= " or a.id_altabaja="+lrs_res.getString("id_altabaja"); } } } /*if (status.equals("1")){ AWhere=" "+id_dep+" or ("+funcionarios+")"; AWhere=" "+id_dep+" and ("+funcionariosOmisos+" )"; } else*/ if(!funcionarios.equals("")){ if(status.equals("2")){ AWhere=" "+id_dep+" and ("+funcionarios+")"; } } ls_query="select a.id_funcionario, " + " CONCAT(f.ap_paterno, ' ', f.ap_materno, ' ', f.nombre ) as nombre, " + "UPPER(IFNULL(de.nombre_dep, '')) as nombre_dep, " + " UPPER(IFNULL(pf.area, '')) as area, UPPER(IFNULL(tc.cargo, '')) as puesto " + " from altabaja a " + " left join declaration d ON d.id_altabaja=a.id_altabaja " + "LEFT JOIN puesto_funcionario pf ON pf.id_puesto_funcionario=a.id_puesto_funcionario " + "left join tipo_cargos tc ON tc.id_tipo_cargo=pf.id_tipo_cargo " + " left join funcionarios f ON f.id_funcionario=a.id_funcionario " + "LEFT JOIN dependencias de ON de.id_cat_dep_estatales=pf.id_dependencia " + " where a.clave='C' " + AWhere +" " + " ORDER BY a.id_funcionario;"; //nombre_jrxml = ruta_archivos + "jaspers/report_pdf_inicial.jrxml"; } else if(id_tipodeclaracion.equals("2") && status.equals("2")){ AWhere=" and YEAR(a.fecha_alta)< YEAR(NOW())"+id_dep; ls_query="select a.fecha_alta, d.fecha_declaracion, a.id_altabaja, " + "UPPER(IFNULL(de.nombre_dep, '')) as nombre_dep, " + " UPPER(IFNULL(pf.area, '')) as area, UPPER(IFNULL(tc.cargo, '')) as cargo " + "from altabaja a " + "LEFT JOIN declaration d ON d.id_altabaja=a.id_altabaja " + "LEFT JOIN puesto_funcionario pf ON pf.id_puesto_funcionario=a.id_puesto_funcionario " + "left join tipo_cargos tc ON tc.id_tipo_cargo=pf.id_tipo_cargo " + "LEFT JOIN dependencias de ON de.id_cat_dep_estatales=pf.id_dependencia " + "where a.status=1 and d.id_tipodeclaracion=1 " + " and YEAR(d.fecha_declaracion)= YEAR(NOW()) " + AWhere +" " + " order by a.fecha_alta"+";"; lrs_res = lst_stm.executeQuery(ls_query); //out.println(ls_query); while (lrs_res.next()) { fechaSesenta = suma.suma_dias(formato.parse(lrs_res.getString("fecha_alta")), 61); fechafinal = new java.util.Date(fechaSesenta.getTime()); fechaalta = formato.parse(lrs_res.getString("fecha_alta")); fechadeclaracion = formato.parse(lrs_res.getString("fecha_declaracion")); if(fechadeclaracion.after(fechaalta) && fechadeclaracion.before(fechafinal)){ funcionarios+= " and a.id_altabaja <>"+lrs_res.getString("id_altabaja"); funcionariosOmisos+="or a.id_altabaja="+lrs_res.getString("id_altabaja"); } } if (status.equals("1")){ AWhere=" a.status=1 and d.id_tipodeclaracion=1 and YEAR(a.fecha_alta)< YEAR(NOW()) "+id_dep+" "+funcionarios; }else if(status.equals("2")){ funcionariosOmisos=""; AWhere=" and YEAR(a.fecha_alta)='"+ FechaComparar+ "' ) " + " and id_altabaja="+lrs_res.getString("id_altabaja")+"" + ";"; lrs_res1 = lst_stm1.executeQuery(ls_query); if(lrs_res1.next()){ }else{ if(funcionariosOmisos.equals("")){ funcionariosOmisos= " a.id_funcionario="+lrs_res.getString("id_funcionario")+" "; }else{ funcionariosOmisos+= " or a.id_funcionario="+lrs_res.getString("id_funcionario")+" "; } } } if(!funcionariosOmisos.equals("")){ AWhere="a.status=1 and d.id_tipodeclaracion=1 and ("+funcionariosOmisos+")"; }else{ AWhere="a.id_funcionario<0"; } } ls_query="select " + " CONCAT(f.ap_paterno, ' ', f.ap_materno, ' ', f.nombre ) as nombre, " + "UPPER(IFNULL(de.nombre_dep, '')) as nombre_dep, " + " UPPER(IFNULL(pf.area, '')) as area, UPPER(IFNULL(tc.cargo, '')) as puesto " + " from altabaja a " + " left join declaration d ON d.id_altabaja=a.id_altabaja " + "LEFT JOIN puesto_funcionario pf ON pf.id_puesto_funcionario=a.id_puesto_funcionario " + "left join tipo_cargos tc ON tc.id_tipo_cargo=pf.id_tipo_cargo " + " left join funcionarios f ON f.id_funcionario=a.id_funcionario " + "LEFT JOIN dependencias de ON de.id_cat_dep_estatales=pf.id_dependencia " + " where " + AWhere +" " + " ORDER BY a.id_funcionario;"; /*if(tipo.equals("4")){ nombre_jrxml = ruta_archivos + "jaspers/report_pdf_anual_sin_firma.jrxml"; }else{ nombre_jrxml = ruta_archivos + "jaspers/report_pdf_anual.jrxml"; }*/ } else if(id_tipodeclaracion.equals("3") && status.equals("2")){ AWhere=" "+id_dep; ls_query="select a.fecha_baja, a.id_altabaja " + "from altabaja a " + "LEFT JOIN declaration d ON d.id_altabaja=a.id_altabaja " + "LEFT JOIN puesto_funcionario pf ON pf.id_puesto_funcionario=a.id_puesto_funcionario " + "where a.status=1 and (a.fecha_baja<>'NULL' and a.fecha_baja<>'0000-00-00') " + AWhere +" " + " order by a.fecha_alta"+";"; lrs_res = lst_stm.executeQuery(ls_query); //out.println(ls_query); while (lrs_res.next()) { fechaSesenta = suma.suma_dias(formato.parse(lrs_res.getString("fecha_baja")), 31); fechafinal = new java.util.Date(fechaSesenta.getTime()); fechabaja = formato.parse(lrs_res.getString("fecha_baja")); //fechadeclaracion = formato.parse(lrs_res.getString("fecha_declaracion")); if((fechahoy.compareTo(fechabaja)==0 || fechahoy.after(fechabaja)) && fechahoy.before(fechafinal)){ if(funcionariosOmisos.equals("")){ funcionariosOmisos+=" a.id_altabaja="+lrs_res.getString("id_altabaja"); } else{ funcionariosOmisos+=" or a.id_altabaja="+lrs_res.getString("id_altabaja"); } } else{ if(funcionarios.equals("")){ funcionarios+=" a.id_altabaja="+lrs_res.getString("id_altabaja"); } else{ funcionarios+= " or a.id_altabaja="+lrs_res.getString("id_altabaja"); } } } /* if (status.equals("1")){ AWhere=" "+id_dep; if(!funcionarios.equals("")){ AWhere+=" and ("+funcionarios+")"; } } else*/ if(status.equals("2")){ AWhere=" "+id_dep; if(!funcionariosOmisos.equals("")){ AWhere+=" and ("+funcionariosOmisos+" )"; } } ls_query="select " + " CONCAT(f.ap_paterno, ' ', f.ap_materno, ' ', f.nombre ) as nombre, " + "UPPER(IFNULL(de.nombre_dep, '')) as nombre_dep, " + " UPPER(IFNULL(pf.area, '')) as area, UPPER(IFNULL(tc.cargo, '')) as puesto " + " from altabaja a " + " left join declaration d ON d.id_altabaja=a.id_altabaja " + "LEFT JOIN puesto_funcionario pf ON pf.id_puesto_funcionario=a.id_puesto_funcionario " + "left join tipo_cargos tc ON tc.id_tipo_cargo=pf.id_tipo_cargo " + " left join funcionarios f ON f.id_funcionario=a.id_funcionario " + "LEFT JOIN dependencias de ON de.id_cat_dep_estatales=pf.id_dependencia " + " where a.status=1 and (a.fecha_baja<>'NULL' and a.fecha_baja<>'0000-00-00') " + AWhere +" " + " ORDER BY a.id_funcionario;"; //nombre_jrxml = ruta_archivos + "jaspers/report_pdf_final.jrxml"; } /**/ /*ls_query="select " + "CONCAT(f.ap_paterno, ' ', f.ap_materno, ' ', f.nombre ) as nombre, " + "UPPER(de.nombre_dep) as nombre_dep, " + "UPPER(concat(tc.cargo, ' ', pf.area)) as puesto " + "from altabaja a " + "left join funcionarios f on f.id_funcionario=a.id_funcionario " + "LEFT JOIN puesto_funcionario pf ON pf.id_puesto_funcionario=a.id_puesto_funcionario " + "left join tipo_cargos tc ON tc.id_tipo_cargo=pf.id_tipo_cargo " + "left join dependencias de ON de.id_cat_dep_estatales=pf.id_dependencia " + "where f.id_funcionario="+request.getParameter("id_funcionario")+" " + "and a.id_altabaja="+request.getParameter("id_altabaja")+"" + ";";*/ ////////termina la creacion de la ruta fisica ruta_imagen = ruta + "medios/imagenes/"; ruta_archivos = ruta + "declarantes/reportes/reportes_pdf/"; ruta_archivos_exportar = ruta + "declarantes/reportes/reportes_pdf/pdfs/"; nombre_archivo = "oficio"; //String ruta_jasper = ruta_archivos + "jaspers/"; //String archivo = ruta_archivos + "pdfs/"; if(id_tipodeclaracion.equals("1")){ nombre_jrxml = ruta_archivos + "jaspers/oficio.jrxml"; }if(id_tipodeclaracion.equals("2")){ nombre_jrxml = ruta_archivos + "jaspers/oficio_anual.jrxml"; }if(id_tipodeclaracion.equals("3")){ nombre_jrxml = ruta_archivos + "jaspers/oficio_final.jrxml"; } //fecha_hoy=request.getParameter("fecha_entrega"); //out.println(ls_query); Map params = new HashMap(); params.put("escudo", ruta_imagen + "/escudoMX.jpg"); params.put("escudo10", ruta_imagen + "/escudo10.jpg"); params.put("no_oficio", no_oficio); params.put("years", fecha_hoy); try { lrs_res = lstg_conecta.executeQuery(ls_query); //out.println(lst_stm); if (lrs_res.next()) { //out.println("Entro"); nombre_archivo += ".pdf"; %>
Generando reporte, espere por favor...


Cargando
<% //params.put("id_code", ids_code); JasperDesign jasperDesign = JRXmlLoader.load(nombre_jrxml); JRDesignQuery query = new JRDesignQuery(); query.setText(ls_query); jasperDesign.setQuery(query); JasperReport reporte = JasperCompileManager.compileReport(jasperDesign); JasperPrint jasperPrint = JasperFillManager.fillReport(reporte, params, lcd_connection); JasperExportManager.exportReportToPdfFile(jasperPrint, ruta_archivos_exportar + nombre_archivo); //out.println(ruta+"declarantes/reportes/reportes_pdf/pdfs/"+nombre_archivo); out.println(" "); %> <% } else { %>

Lo sentimos pero su selección, no regresó ningún resultado. Verifique la información.
<% } } catch (Exception e) { %>
<%="Error al crear reporte de Acuse de la Declaración. Error: " + e %>
<% } finally { lst_stm.close(); //lcnt_con.close(); lstg_conecta.close(); lcd_connection.close(); } }catch (Exception e) { } } %>