UNIVERSIDAD VERACRUZANA
FACULTAD DE ADMINISTRACIÓN DE EMPRESAS
ALUMNAS:
ANA KAREN PRIETO SANTOS
MAYRA YAZMIN HERRERA NIETO
MILDRETH D. MATÍAS GARCÍA
PROFESOR:
CARLOS ARTURO TORRES GASTELU
MATERIA:
BASE DE DATOS
CARRERA:
LICENCIATURA EN SISTEMAS
COMPUTACIONALES ADMINISTRATIVOS
INVESTIGACIÓN DE GENERADORES
DE REPORTES EN MySQL
FECHA DE ENTREGA:
SEPTIEMBRE DE 2009
CONTENIDO:
INTRODUCIÓN
MySQL Report
GENERADORES DE REPORTES
TIPOS DE GENERADORES DE REPORTES
OTROS TIPOS DE GENERADORES DE REPORTES
EJEMPLOS DE CREAR REPORTES
CONCLUSIÓN
BIBLIOGRAFÍA:
INTRODUCIÓN
En esta investigación comentamos sobre el MySQL Report, aunque nuestra
investigación fue profunda encontramos poca información sobre el tema, pero
hablaremos sobre lo más importante de los reportes en MySQL. MySQL Report
fue creado cuando se estaba pensando en cómo hacer un carrito de compras
es ahí donde se dan cuenta de la importancia de crear un generador de MY
SQL. Veremos que hoy en día existe una gran variedad de generadores de
reportes para MySQL y/o utilizando varias extensiones como lo son (.txt,
.doc, .xls, .pdf, etc) y cabe mencionar que cada una de ellas se debe de
manejar con su compatible función las cuales pueden ser fputs, fread, etc.
Los generadores de reportes mas especiales en nuestros tiempos se han
creado a partir de noviembre de 2008, por lo cual podemos deducir que han
sido actualizados como la sociedad los requieren.
Mostraremos algunos ejemplos muy bien definidos para entender y comprender
a la perfección como generar un reporte en alguno de nuestros tipos de
generadores de reportes con los que contamos hoy en día.
MySQL Report
Fue creado cuando se estaba diseñando un informe herramienta para el diseño
de nuestro carrito de la compra CommerceSQL GRATIS. El diseñador de
informes fue parte de un add-on para el carrito de compra que se imagino y
después de pensarlo de que ya se había visto un diseñador de informes de
MySQL disponible en cualquier lugar antes.
REQUISITOS
• Capacidad para descomprimir el suministrado. Archivo tar.
• Capacidad de archivos de FTP a su servidor.
• Comprensión de cómo establecer permisos de archivos.
• Este guión está diseñado para ejecutarse en un servidor UNIX.
• htaccess la protección de contraseña para la carpeta de admin.
• Base de datos MySQL.
• Capacidad para crear una tabla de base de datos utilizando un archivo.
SQL o una consulta.
Perl DBI / DBD de Perl para que pueda comunicarse con MySQL.
GENERADORES DE REPORTES
Un generador de reportes permite crear y administrar un número ilimitado de
Reportes MySQL basados en tablas o consultas.
Para escribir un buen reporte de error se necesita paciencia, pero hacerlo
correctamente por primera vez nos ahorra tiempo tanto a nosotros como a
usted mismo.
Podemos generar los reportes con varias extensiones (.txt, .doc, .xls, .pdf, etc)
obviamente con sus respectivas funciones complementarias como por ejemplo:
fputs, fread, etc.
TIPOS DE GENERADORES DE REPORTES
Nombre: Nocsos Ltd
Definición:
El software myDBR es una solución
innovadora para la creación de reportes que está basada en
web y que está hecha para los manejadores de bases de datos
MySQL y Microsoft SQL Server, que le proporciona soporte a
los teléfonos inteligentes más recientes (Android, iPhone y
Symbian). La solución de reportes myDBR le brinda al usuario
una velocidad de creación sin paralelo, inclusive cuando se
trata de reportes de lo más complejos. Automatizando la
mayoría del trabajo necesario en los sistemas de elaboración
de informes tradicionales, myDBR incrementa la productividad
y ofrece una solución de elaboración de informes costo-
efectiva.
Versión: myDBR (myDBR) 1.0
Fecha de 25 de Mayo de 2009
lanzamiento:
Plataforma:
Tipo: Freeware
Costo: $0.00 us
Tamaño: 1484 k
Descarga: mydbr.nocsos.com
Nombre: PremiumSoft CyberTech Ltd
Definición: Navicat Lite es una herramienta de administración de bases de
datos profesional e intuitiva que le permite crear y navegar por
bases de datos y ejecutar consultas SQL de una forma más
sencilla. Esta herramienta de cliente de MySQL se caracteriza
por una interfaz intuitiva y proporciona un conjunto de
herramienta útiles para gestionar, hacer copia de seguridad /
restaurar, importar / exportar datos, Sincronizar la base de
datos y conectar a un servidor MySQL remoto, etc.
Versión: La herramienta de administración Navicat para bases de
datos MySQL para Mac OS X (Freeware) - Compatible con
Mac OS X Leopard! (Navicat for MySQL database admin
tool for Mac OS X (Freeware) - Compatible with Mac OS X
Leopard!) 8.0.6
Fecha de 27 de Abril de 2009
lanzamiento:
Plataforma:
Tipo: Shareware
Costo: $0.00 us
Tamaño: 14746 k
Descarga: download.navicat.com
Nombre: PremiumSoft CyberTech Ltd
Definición: Navicat Lite es una herramienta de administración de bases de
datos profesional e intuitiva que le permite crear y navegar por
bases de datos y ejecutar consultas SQL de una forma más
sencilla. Esta herramienta de cliente de MySQL se caracteriza
por una interfaz intuitiva y proporciona un conjunto de
herramienta útiles para gestionar, hacer copia de seguridad /
restaurar, importar / exportar datos, Sincronizar la base de
datos y conectar a un servidor MySQL remoto, etc.
Versión: Navicat Herramientas de Administración MySQL para Mac
OS- Compatible con Mac OS X (Navicat MySQL
Administration Tools for Mac OS X - Compatible with Mac
OS X Leopard!) 8.0.1
Fecha de 16 de Febrero de 2009
lanzamiento:
Plataforma:
Tipo: Shareware
Costo: $79.00 us
Tamaño: 17920 k
Descarga: download2.navicat.com
Nombre: PremiumSoft CyberTech Ltd
Definición: Navicat para Linux es una Interfaz Gráfica para Usuarios que le
permite crear, buscar en bases de datos, ejecutar consultas en
SQL y conectarse de forma remota a MySQL del modo más
sencillo. Incluye un diseñador de consultas, diseñador de
reportes, respaldos y restauración, planificación de trabajo por
lotes y la capacidad de convertir datos a y desde MySQL. Otras
características incluyen Diseño de Vistas y Sincronización de
Datos. La última versión admite Completado de Código,
Visualización de Formularios y Notificación vía Email.
Versión: Administrador MySQL para Linux Navicat (Navicat MySQL
administrator Manager for Linux) (Navicat MySQL
administrator Manager for Linux (Freeware available))
8.0.28
Fecha de 19 de Septiembre de 2008
lanzamiento:
Plataforma:
Tipo: Freeware
Costo: $0.00 us
Tamaño: 20480 k
Descarga: www.navicat.com
Nombre: PremiumSoft CyberTech Ltd
Definición: Navicat Lite es una herramienta con una intuitiva GUI que le
permite crear, navegar por bases de datos, ejecutar peticiones
SQL y conectar con MySQL remotos de una forma más
sencilla. La versión de demostración de 30 días incluye un
constructor de consultas, generador de informes, creación de
copias de seguridad/restauración, programación de trabajos
por lotes, y la capacidad de convertir Access a MySQL y Excel
a MySQL. Otras características incluyen una consola de SQL,
Constructor de Vistas y Sincronización de datos. La última
versión admite Completado de Código, Visualización de
Formularios y Notificación vía Email.
Versión: Navicat el Major administrador MySQL versión Lite
(Navicat the Best MySQL administrator Manager Lite)
(Navicat the Best MySQL administrator Manager Lite)
8.0.28
Fecha de 19 de Septiembre de 2008
lanzamiento:
Plataforma:
Tipo: Freeware
Costo: $0.00 us
Tamaño: 7884 k
Descarga: www.navicat.com
Nombre: Jef Van Den Ouweland
Definición:
DBEdit es una herramienta de edición de
bases de datos escrita en Java que es adecuada como una
interfaz de usuario amigable para sus bases de datos Oracle,
DB2 o MySQL. Su meta es usar las características de JDBC a
su máxima plenitud. Las funcionalidades principales del
DBEDIT proporcionan ayuda en las tareas comunes de edición
de datos y reportes, así como en la sincronización de la base
de datos.
Versión: DBEdit 2 (DBedit 2) 2.1.5
Fecha de 13 de Junio de 2008
lanzamiento:
Plataforma:
Tipo: Freeware
Costo: $0.00 us
Tamaño: 6914 k
Descarga: dbedit2.sourceforge.net
Nombre: PremiumSoft CyberTech Ltd.
Definición: Navicat para Linux es una Interfaz Gráfica para Usuarios que le
permite crear, buscar en bases de datos, ejecutar consultas en
SQL y conectarse de forma remota a MySQL del modo más
sencillo. Incluye un diseñador de consultas, diseñador de
reportes, respaldos y restauración, planificación de trabajo por
lotes y la capacidad de convertir datos a y desde MySQL. Otras
características incluyen Diseño de Vistas y Sincronización de
Datos. La última versión admite Completado de Código,
Visualización de Formularios y Notificación vía Email.
Versión: Navicat MySQL administrador Gerenciador para Linux
(también disponible como Freeware) (Navicat MySQL
administrator Manager for Linux (Freeware also available))
8.0.27
Fecha de 30 de Abril de 2008
lanzamiento:
Plataforma:
Tipo: Shareware
Costo: $95.00 us
Tamaño: 22425 k
Descarga: www.navicat.com
Nombre: Vitaliy Levchenko
Definición:
Nombre: Starsoft
Herramienta para bases de datos cruzadas
Definición: y generador de reportes. Permite ver, editar e imprimir datos,
generar consultas SQL, generar reportes, controlar
transacciones, configurar de alias de BDE, clasificar y filtrar
datos, ver la estructura, buscar y reemplazar texto, importar y
exportar datos (con conversión de formato); funciones
especiales para trabajar con campos de tipoun Generador de
Smart Report Maker es MEMO, gráficos,
Reportes PHP/MySQL de muy fácil uso, línea permite crear
numéricos, y de texto. Incluye soporte de que lede comando y
administrar un número ilimitado de Reportes MySQL basados
Versión: en tablas o consultas, cuenta con una interface de asistente
Database Tour Pro (Database Tour Pro) 5.8.1.1201
amigable que le permite seleccionar2008
03 de Marzo de únicamente los campos
Fecha de
que usted desea se presenten en su reporte, configura
lanzamiento: múltiples niveles de agrupamiento, ordena los datos de forma
Plataforma: ascendente o descendente y tiene la capacidad de exportar los
reportes a archivos de formatos PDF, XML o CSV.
Tipo: Shareware
Costo:
Versión: $97.00 us
Constructor de Reportes Inteligentes (Generador de
Tamaño: Reportes para MySQL) (smart report maker (MySQL Report
2079 k
Descarga: Generator)) 1.2
www.databasetour.net
Fecha de 1 de Noviembre de 2008
lanzamiento:
Plataforma:
Tipo: Shareware
Costo: $38.00 us
Tamaño: 500 k
Descarga: mysqlreports.com
MySQLbug
Para generar un reporte de bug (o un reporte acerca de cualquier problema).
mysqlbug puede encontrarse en el directorio scripts (distribución fuente) y en el
directorio bin en el directorio de instalación (distribución binaria). Si no es
posible usar mysqlbug (por ejemplo, si utiliza Windows), es vital que incluya
toda la información necesaria que aparece en esta sección (y lo más
importante, una descripción del sistema operativo y la versión de MySQL).
El script mysqlbug le ayuda a generar un reporte determinando la mayoría de la
información automáticamente, pero si falta algo importante, por favor inclúyalo
en su mensaje. Por favor, lea esta sección con cuidado y asegúrese que toda
la información descrita aquí se incluye en su reporte.
Preferiblemente, debe testear el problema usando la última versión de
producción o desarrollo de MySQL server antes de postear. Cualquiera debería
ser capaz de repetir el bug usando mysql test< script_file en el caso de test
incluído o ejecutando el script de consola o Perl incluído en el reporte de bug.
Todos los bugs posteados en la base de datos de bugs en
http://bugs.mysql.com/ se corrigen o documentan en la siguiente actualización
de MySQL. Si sólo se necesitan cambios menores en el código para arreglarlo,
podemos postear un parche para arreglarlo. Si encuentra un fallo importante de
seguridad en MySQL, puede enviar un correo a <security@mysql.com>.
Si tiene un reporte de bug repetible, por favor envíelo a la base de datos de
bugs en http://bugs.mysql.com/. Tenga en cuenta que incluso en este caso es
bueno ejecutar el script mysqlbug antes para reunir información de su sistema.
Cualquier bug que seamos capaces de reproducir tiene una alta probabilidad
de arreglarse en la siguiente versión de MySQL.
Para reportar otros problemas, puede usar cualquiera de las listas de correo de
MySQL.
Por favor, recuerde que mucha gente que lea su reporte lo hará con un monitor
de 80 columnas. Cuando genere reportes o ejemplos usando la columna de
línea de comandos mysql debe usar la opción --vertical (o el terminador de
comando G ) para salida que excedería el ancho disponible para tales
monitores ( por ejemplo, con el comando EXPLAIN SELECT; ( vea el ejemplo
al final de esta sección).
Por favor, incluya la siguiente información en su reporte:
• El número de la versión de la distribución de MySQL que usa (por
ejemplo, MySQL 4.0.12). Puede consultar la versión que está usando
ejecuntado mysqladmin version. El programa mysqladmin puede
encontrarse en el directorio bin bajo el directorio de instalación.
• El fabricante y modelo de la máquina en la que experimenta el problema.
• Nombre del sistema operativo y versión. Si trabaja con Windows, puede
obtener el nombre y número de versión haciendo doble click en el icono
Mi PC y consultando el menú "Ayuda/Acerca de Windows". Para la
mayoría de sistemas Unix puede obtener esta información con el
comando uname -a.
• En ocasiones la cantidad de memoria (real y virtual) es relevante. Si lo
duda, incluya estos valores.
• Si usa una distribución fuente del software MySQL, el nombre y número
de versión del compilador usado es necesario.Si usa una distribución
binaria, necesita el nombre de la distribución.
• Si el problema ocurre durante la compilación, incluya el mensaje de error
exacto y unas cuantas líneas de contexto alrededor del código en el
fichero donde ocurre el error.
• Si mysqld cae, incluya la consulta que hizo caer mysqld. Normalmente
puede consultarlo ejecutando mysqld con el log de consultas activado, y
luego consultando el log tras la caída de mysqld.
• Si una base de datos está relacionada con el problema, incluya la salida
del comando mysqldump --no-data db_name tbl_name. Este es un
método sencillo y poderoso para obtener información acerca de
cualquier tabla en una base de datos. La información nos ayuda a crear
una situación similar a la que ha provocado el fallo.
• Para bugs relacionados con rendimiento o problemas con consultas
SELECT, siempre debe incluir la salida de EXPLAIN SELECT ..., y
como mínimo el número de filas que el comando SELECT produce.
También puede incluir la salida de SHOW CREATE TABLE tbl_name
para cada tabla implicada. Mientras más información tengamos acerca
de la situación, es más posible que podamos ayudar..
EJEMPLOS DE CREAR REPORTES
EJEMPLO1:
El siguiente es un ejemplo de un reporte muy bueno. Debe ser posteado con el
script mysqlbug. El ejemplo usa la herramienta por líneas de comando mysql.
Tenga en cuenta el terminador de comandos G para comandos cuya salida
exceda las de un monitor de 80 columnas.
mysql> SHOW VARIABLES;
mysql> SHOW COLUMNS FROM ...G
<salida de SHOW COLUMNS>
mysql> EXPLAIN SELECT ...G
<salida de EXPLAIN>
mysql> FLUSH STATUS;
mysql> SELECT ...;
<Una pequeña descripción de la salida del SELECT,
incluyendo el tiempo empleado en ejecutar la consulta>
mysql> SHOW STATUS;
<salida de SHOW STATUS>
EJEMPLO2:
El presente ejemplo explica como generar un reporte en PDF extrayendo datos
de MySQL utilizando PHP. Este ejemplo lo hacemos aprovechando el post
anterior en el cual explicábamos como obtener datos de base de datos MySQL.
Para la generación de PDF utilizaremos la clase R&OS: pdf class de la cual ya
hemos comentado en Generar PDF con PHP.
Crear el documento PDF
Lo primero es crear una instancia para la creación del documento PDF, para
ello incluimos la librería class.ezpdf.php, luego creamos una variable del tipo
Cezpdf en donde definimos el tipo de papel A4, luego definimos la fuente y los
márgenes.
1. require_once('class.ezpdf.php');
2. $pdf =& new Cezpdf('a4');
3. $pdf->selectFont('../fonts/courier.afm');
4. $pdf->ezSetCmMargins(1,1,1.5,1.5);
Obtenemos los registros desde MySQL
Ahora procedemos a extraer los registros de nuestra base de datos, en este
caso solo obtenemos el nombre, dirección y teléfono de la tabla empresa de
nuestra base de datos.
1. $conexion = mysql_connect("localhost", "usuario", "clave");
2. mysql_select_db("demo", $conexion);
3. $queEmp = "SELECT nombre, direccion, telefono FROM empresa";
4. $resEmp = mysql_query($queEmp, $conexion) or die(mysql_error());
5. $totEmp = mysql_num_rows($resEmp);
Creando el array de datos, títulos y opciones
A continuación procedemos a crear matrices que luego utilizaremos en la
creación de nuestro PDF, en el caso que deseemos incluir una tabla con datos
debemos crear una matriz con estos datos, en nuestro caso asignamos los
resultados de la consulta y le agregamos un campo adicional con un número
correlativo. Lo siguiente es crear la matriz con los nombres de la tabla, en este
caso llamamos a esta matriz $titles en donde a cada campo agregado a la
matriz de datos le hacemos corresponder un nombre que aparecerá como titulo
de la fila. La tercera matriz indica los colores de las celdas, la orientación y el
ancho de la tabla.
1. $ixx = 0;
2. while($datatmp = mysql_fetch_assoc($resEmp)) {
3. $ixx = $ixx+1;
4. $data[] = array_merge($datatmp, array('num'=>$ixx));
5. }
6. $titles = array(
7. 'num'=>'<b>Num</b>',
8. 'nombre'=>'<b>Empresa</b>',
9. 'direccion'=>'<b>Direccion</b>',
10. 'telefono'=>'<b>Telefono</b>'
11. );
12. $options = array(
13. 'shadeCol'=>array(0.9,0.9,0.9),
14. 'xOrientation'=>'center',
15. 'width'=>500
16. );
Imprimiendo los Resultados
Una vez que tenemos todos los datos preparados procedemos a generar el
PDF con toda la información que deseamos. Iniciamos esto creando un titulo y
subtitulo de texto, luego escribimos los resultados de la consulta con la función
ezTable a la cual se pasamos los datos, títulos y opciones. Finalmente al final
del documento agregamos la fecha y hora de la generación del documento.
1. $txttit = "<b>BLOG.UNIJIMPE.NET</b>n";
2. $txttit.= "Ejemplo de PDF con PHP y MYSQL n";
3.
4. $pdf->ezText($txttit, 12);
5. $pdf->ezTable($data, $titles, '', $options);
6. $pdf->ezText("nnn", 10);
7. $pdf->ezText("<b>Fecha:</b> ".date("d/m/Y"), 10);
8. $pdf->ezText("<b>Hora:</b> ".date("H:i:s")."nn", 10);
9. $pdf->ezStream();
Unimos todos estos bloques y tenemos listo nuestro script para generar
reportes en PDF, pueden ver el ejemplo funcionando en php-mysql.php. Para
finalizar les dejo los archivos del ejemplo para que lo prueben y modifiquen a
sus necesidades
CONCLUSIÓN
Cabe mencionar que NAVICAT es una de las empresas que ha desarrollado
mas generadores de reportes en estos tiempos para diferentes plataformas en
cada una de sus versiones, aunque MySQL Report cuenta con Starsoft uno de
los primeros generadores de reportes.
Los ejemplos para crear reportes nos ayuda a tener un amplio conocimiento
para así poder hacer nuestros reportes a futuro, y también tener en cuenta que
existen requisitos que debemos cumplir para poder generar un reporte ya que
como mencionamos al principio nuestro primer reporte no va a hacer fácil
porque necesitaremos de paciencia para poderlo llevar acabo y así ahorrar
nuestro tiempo y de la persona que lo necesite.
0 comments
Post a comment