¿Que es Jaspersoft Studio?
Jaspersoft Studio es el nuevo diseñador de informes basado en Eclipse para JasperReports y JasperReports Server. Es una reescritura completa de iReport Designer, disponible como plugin para Eclipse y Netbeans, así como una aplicación independiente.
Jaspersoft Studio le permite crear informes con diseños sofisticados que contienen gráficos, imágenes, informes integrados, tablas de contingencia y mucho más. Puede acceder a sus datos a través de JDBC, TableModel, Java Beans, XML, Hibernate, CSV, y fuentes de datos personalizadas, JS permite publicar los informes en formato PDF, RTF, XML, XLS, CSV, HTML, XHTML, texto, DOCX, u OpenOffice.
En este videotutorial vemos una pequeña introducción a lo que es Jaspersoft Studio, crearemos un espacio de trabajo donde guardar nuestros reportes, crearemos un Data Source (Origen de Datos) usando una base de datos MySQL, para terminar crearemos un reporte sencillo.
Requisitos
La base de datos que usaremos en este ejemplo se llama «dbTest» y consta de dos tablas company y employee.
Base de datos «dbTest»
-- phpMyAdmin SQL Dump SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8mb4 */; -- -- Base de datos: `dbtest` -- -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `company` -- CREATE TABLE `company` ( `idCompany` int(12) NOT NULL, `nameCompany` varchar(60) NOT NULL, `addressCompany` varchar(120) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -- Volcado de datos para la tabla `company` -- INSERT INTO `company` (`idCompany`, `nameCompany`, `addressCompany`) VALUES (1, 'Comida China TAN DAO VIEN', 'Avenida las Chelitas #233'), (2, 'Aguas del Illimani', 'Calle Reg.Chanchos #100'), (3, 'Empresa de Transporte SI DIOS QUIERE', 'Av. Las Americas #1'), (4, 'Parque Infantil ZORRILANDIA', 'Av. Dondesea #234'), (5, 'Clinica LA MUETTE', 'Edif. Glorieta #42 piso 3'); -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `employee` -- CREATE TABLE `employee` ( `idEmployee` int(12) NOT NULL, `nameEmployee` varchar(42) NOT NULL, `mailEmployee` varchar(42) NOT NULL, `idCompany` int(11) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -- Volcado de datos para la tabla `employee` -- INSERT INTO `employee` (`idEmployee`, `nameEmployee`, `mailEmployee`, `idCompany`) VALUES (1, 'Aquiles Brinco', 'brincoz_22@gmail.com', 1), (2, 'Elmer Curio', 'orchicha_76.v@yahoo.es', 1), (3, 'Elma Montt', 'emma_mae.69@gmail.com', 2), (4, 'Armando Mocha', 'mocha88chu@mail.com', 3), (5, 'Sevelinda Parada', 'elpichi.7.9@yahoo.com', 4), (6, 'Elsa Capunta ', 'sacaca_s_s_9@gmail.com', 5), (7, 'Esteban Dido', 'finoli.0@husmail.com', 4), (8, 'Miren Amiano ', 'colo_nos.copia@yahoo.co', 4), (9, 'Rosa Malcacho', 'malcho@mail.com', 2), (10, 'Jorge Nitales', 'ball_0000@gmail.com', 5), (11, 'Mary Conazo', 'lin_erra_bol.1@gmail.com', 2), (12, 'Juanca Gador', 'tes_te_zzzz@gmail.com', 1), (13, 'Alan Brito Delgado ', 'gordillo_999s@mail.com', 1), (14, 'Guillermo Nigote', 'mostacho@mail.com', 2), (15, 'Lucho Pay', 'lucho1@mixmail.com', 2), (16, 'Mario Neta ', 'lachili@mixmail.com', 1); -- -- Ãndices para tablas volcadas -- -- -- Indices de la tabla `company` -- ALTER TABLE `company` ADD PRIMARY KEY (`idCompany`); -- -- Indices de la tabla `employee` -- ALTER TABLE `employee` ADD PRIMARY KEY (`idEmployee`), ADD KEY `idCompany` (`idCompany`); -- -- AUTO_INCREMENT de las tablas volcadas -- -- -- AUTO_INCREMENT de la tabla `company` -- ALTER TABLE `company` MODIFY `idCompany` int(12) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6; -- -- AUTO_INCREMENT de la tabla `employee` -- ALTER TABLE `employee` MODIFY `idEmployee` int(12) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=17; -- -- Restricciones para tablas volcadas -- -- -- Filtros para la tabla `employee` -- ALTER TABLE `employee` ADD CONSTRAINT `employee_ibfk_1` FOREIGN KEY (`idCompany`) REFERENCES `company` (`idCompany`) ON DELETE CASCADE ON UPDATE CASCADE; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
Para crear el reporte se realiza una consulta SQL, la cual es:
SELECT nameCompany, nameEmployee, mailEmployee FROM company inner join employee ON company.idcompany = employee.idcompany
el videoo tutorial completo a continuación
enjoy!
En este y un segundo post desarrollaremos un microservicio java utilizando el framework Spark que implementara las funci[...]
En este post dejo una forma de como utilizar imágenes en un JTable ademas de implementar MouseListener para realizar dif[...]
¿Que es y para que sirve una imagen forense? Una imagen forense es un «clon» (copia bit a bit) de algún dispositivo como[...]
Cuando se realizan aplicaciones en java con base de datos y se llega a un punto donde es necesario realizar una consulta[...]
En este post aprenderemos a usar los gráficos 2d que viene con JavaFX en nuestras aplicaciones java swing. Esto puede se[...]
Dando respuesta a una interrogante sobre el como crear objetos en tiempo de ejecución y como manipular estos, desarrolle[...]