Capturar webcam con VB.NET

¿Que haremos? Crearemos una aplicación en Visual Studio, la cual hará uso de una webcam para capturar el video en frames independientes y depositarlos en memoria para despues mostralos al usuario a través de un picturebox y un Timer para crear la ilusión de movimiento. ¿Porque lo haremos? Porque es justo y necesario ¿Que necesitamos? [...]

Envío de correo con JavaMail/Netbeans

JavaMail es una expansión de Java que facilita el envío y recepción de e-mail desde código java. JavaMail implementa el protocolo SMTP (Simple Mail Transfer Protocol) así como los distintos tipos de conexión con servidores de correo -TLS, SSL, autentificación con usuario y password, etc [Según SantaWikipedia] ¿Qué necesitamos? JavaMail 1.4.5 Java y Netbeans 6.9 [...]

Proyecto de base de datos Firebird VB

En este proyecto realizaremos una aplicación de base de datos Firebird con el lenguaje de programación de Visual Basic de Microsoft, este proyecto tendrá las funciones básicas de gestión INSERT, DELETE, UPDATE y una interfaz de usuario para utilizarlas. ¿Que necesitamos? Visual Studio 2008 o superior Firebird última versión Firebird ADO.NET Data Provider. Conocimientos básicos [...]

Imprimir imagen con Print

La siguiente clase hace uso de PRINT para imprimir una imagen que se encuentra en un variable de tipo FileInputStream, esta clase a su vez es implementada desde una interfaz que hace fácil su uso, la clase así como todo el proyecto esta comentado. import java.io.File; import javax.print.Doc; import java.io.IOException; import javax.print.DocFlavor; import javax.print.SimpleDoc; import java.io.FileInputStream; [...]

Code Army Bolivia
Mostrando entradas con la etiqueta iReport. Mostrar todas las entradas
Mostrando entradas con la etiqueta iReport. Mostrar todas las entradas

8/5/11

Reportes con Imagenes [Videotutorial]

JAN29

Video Tutorial que muestra una de las maneras de utilizar y mostrar imagenes en iReport, pasando estas como parametros desde Java, se utiliza el IDE Netbeans 6.9 y JasperReport v3.7.2

El video lo explica todo, y para un usuario intermedio de java/netbeans/iReport es bastante obvio, sin embargo, dejo tambien el codigo fuente

[Enlace Actualizado]
Click para descargar

continue reading

8/2/11

Reportes con iReport y Netbeans [Parametros]

JAN29

Como se vio en tutoriales anteriores:

Donde se utilizo la herramienta Jaspert Report para la creaciones de los informes y su posterior uso en un IDE como Netbeans, tambien es necesario que en algunos informes se utilicen parametros de entrada para ejecutar las consultas SQL, esto se vio en el videotutorial Reportes con iReport, donde en uno de los ejemplos, se creo un informe que utilizaba un parametro de entrada de tipo String el cual nos permitia ejecutar una consulta para buscar registros con apellidos paternos que empiecen con una letra de A-Z.

Pues, ahora se dara continuacion a ese tutorial, se explica como enviar esos parametros a iReport desde el IDE de Java Netbeans.

Nos creamos una clase  informe_con_parametros.java y pegamos el siguiente codigo:


/* librerias de ireport*/
import java.net.URL;
import java.util.HashMap;
import java.util.Map;
import net.sf.jasperreports.engine.JRException;
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.view.JasperViewer;
/**
*  @web http://jc-mouse.blogspot.com/
 * @author Mouse
 */
public class informe_con_parametros {
//se estable una conexion con la base de datos
    private conexion con = new conexion();    
    
    public informe_con_parametros(){}
    
     /* reporte sencillo con conexion a base de datos MySQL, 
      * el reporte cuenta con un parametro de entrada */    
     public void ver_informe_con_parametros(String parametro){         
     JasperReport reporte;
     JasperPrint reporte_view;     
     try{
         //direccion del archivo JASPER
          URL  in = this.getClass().getResource("jcReport_Sample1.jasper");
          reporte = (JasperReport) JRLoader.loadObject( in );     
          //Se crea un objeto HashMap
          Map <String,String> parametros = new HashMap<String,String>();             
          parametros.clear();     
          //el nombre que se dio al parametro en JasperReport fue "p1", y se debe llamar desde Java con
          //ese mismo nombre, a su lado se pasa el valor del parametro
          parametros.put( "p1", parametro );               
          //-----------------------------------
          reporte_view= JasperFillManager.fillReport( reporte, parametros, con.getConnection() );
          JasperViewer.viewReport( reporte_view ); 
          //terminamos la conexion a la base de datos
          con.desconectar();
   }catch (JRException E){
     E.printStackTrace();
          }
    }
}

El codigo para llamar esta clase desde el Main es:


public class Main {
    
    public static void main(String[] args) {
        //se genera un informe con parametro de entrada con valor "b"
        new informe_con_parametros().ver_informe_con_parametros("b");
        //se genera un informe con parametro de entrada con valor "m"                
        new informe_con_parametros().ver_informe_con_parametros("m");        
    }
    
}

Esto nos da como resultados


Para descargarte el codigo fuente del proyecto + la base de datos y los archivos Jasper, clic en el siguiente enlace:
Click para descargar

continue reading

23/1/11

Video Tutorial: Reportes con iReport

JAN29

 JasperReporrt: JasperReports es una herramienta de creación de informes Java libre que tiene la habilidad de entregar contenido enriquecido al monitor, a la impresora o a ficheros PDF, HTML, XLS, CSV y XML.

Está escrito completamente en Java y puede ser usado en gran variedad de aplicaciones de Java, incluyendo J2EE o aplicaciones web, para generar contenido dinámico.

Su propósito principal es ayudar a crear documentos de tipo páginas, preparados para imprimir en una forma simple y flexible.

JasperReports se usa comúnmente con iReport, un front-end gráfico de código abierto para la edición de informes. [Wikipedia]


El siguiente video tutorial muestra la manera de utilizar la herramienta JaspertReport para crear un informe de manera visual utilizando para ello una conexion a una base de datos en MySQL. Los pasos y tecnicas utilizadas son validas para cualquier otra base de datos. El tutorial esta destinado a programadores novatos en el diseño y uso de reportes con iReport y su posterior utilizacion en algun IDE como netbeans.

Los temas que se tocan en este video tutorial son:
  1. Crear una conexion a una base de datos MySQL
  2. Crear una consulta SQL en JasperReport
  3. Crear un Infome simple (básico)
  4. Crear un Informe con un parametro de entrada (Intermedio)
Capturas de pantalla

Datos Tecnicos:
  • Formato: SWF
  • Compresion: RAR
  • Resolucion: buena
  • Tamaño: 15MB
  • Contenido: El archivo *.rar contiene el videotutorial asi como la base de datos que se utilizo para la realizacion del informe
Click para descargar

continue reading

14/1/11

Reportes con iReport y Netbeans [Basico - Parte 2]

JAN29

Dando continuacion al tutorial "Reportes con iReport [Basico - Parte 1]", en esta segunda parte utilizaremos los archivos generados con iReport, rSample.jasper y rSample.jrxml que vimos en la primera parte y los cuales implementaremos en Netbeans para visualizar estos desde este IDE.

¿Que nececitamos?
  • Los archivos "rSample.jasper" y "rSample.jrxml" vistos en la primera parte de este tutorial
  • Las librerias necesarias para ejecutar un reporte con iReport son:
  1. commons-beanutils-1.8.2.jar
  2. commons-collections-3.2.1.jar
  3. commons-digester-1.7.jar
  4. commons-javaflow-20060411.jar
  5. commons-logging-1.1.jar
  6. groovy-all-1.5.5.jar
  7. iText-2.1.7.jar
  8. jasperreports-3.7.2.jar
Descarga y añade estos JAR en una nueva libreria, si no sabes como, date una vuelta por aqui: Añadir/Instalar nuevas librerias en Netbeans.
  • Tambien necesitamos la libreria : MySQL JDBC Driver. para la conexion a la base de datos.
Para realizar este tutorial se supone que tienes un nivel intermedio en el lenguaje Java, se daran muchas cosas por entendidas ya que si eres un novato en Java y pretendes comenzar este lenguaje haciendo reportes, dejame decirte que aprende primero a gatear y despues ponte a caminar.


El Proyecto.

1. Crea un nuevo proyecto en netbeans, "iReport_Sample".

2. Añade las librerias mencionadas más arriba

3. Crea una clase iReportClass.java

4. Crea una clase conexion.java

5. Los archivos "rSample.jasper" y "rSample.jrxml"debes colocarlos en la misma carpeta del proyecto, osea:
6. Ahora ya debes tener algo como esto en Netbeans:

Si no es asi, revisa los pasos anteriores para poder continuar.

7. El codigo necesario para la clase conexion.java, es:


package ireport_sample;
import java.sql.*;
/**
 * @web http://jc-mouse.blogspot.com/
 * @author Mouse
 */
public class conexion {
   static String bd = "dbSample";
   static String login = "USUARIO";
   static String password = "PASSWORD";
   static String url = "jdbc:mysql://localhost/"+bd;

   Connection conn = null;

   /** Constructor de DbConnection */
   public conexion() {
      try{
         //obtenemos el driver de para mysql
         Class.forName("com.mysql.jdbc.Driver");
         //obtenemos la conexión
         conn = DriverManager.getConnection(url,login,password);
         if (conn!=null){
            System.out.println("Conexión a base de datos "+bd+". listo");
         }
      }catch(SQLException e){
         System.out.println(e);
      }catch(ClassNotFoundException e){
         System.out.println(e);
      }
   }
   /* Permite retornar la conexión */
   public Connection getConnection(){
      return conn;
   }
   /* termina la conexion a la base de datos */
   public void desconectar(){
      conn = null;
      System.out.println("La conexion a la  base de datos "+bd+" a terminado");
   }
}

Esta clase es la que nos ayuda a conectarnos con la base de datos, puedes saber mas de ella en: Clase conexion a base de datos.

8. El codigo para la clase iReportClass.java, es:


package ireport_sample;
/* librerias de ireport*/
import java.net.URL;
import java.util.HashMap;
import net.sf.jasperreports.engine.JRException;
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.view.JasperViewer;
/**
 * @web http://jc-mouse.blogspot.com/
 * @author Mouse
 */
public class iReportClass {
    //se estable una conexion con la base de datos
    private conexion con = new conexion();    
     /* reporte sencillo con conexion a base de datos MySQL, 
      * el reporte no cuenta con parametros */
     public void reporte(){         
     JasperReport reporte;
     JasperPrint reporte_view;     
     try{
         //direccion del archivo JASPER
          URL  in = this.getClass().getResource("rSample.jasper");
          reporte = (JasperReport) JRLoader.loadObject( in );           
          reporte_view= JasperFillManager.fillReport( reporte, new HashMap(), con.getConnection() );
          JasperViewer.viewReport( reporte_view ); 
          //terminamos la conexion a la base de datos
          con.desconectar();
   }catch (JRException E){
     E.printStackTrace();
          }
    }
}

Nuestro reporte es sencillo, no cuenta con parametros de entrada ni imagenes, lo unico que hacemos es instanciar nuestro archivo JASPER para luego lanzar el JASPERVIEWER y ver nuesotro reporte desde netbeans.

9.  Finalmente el codigo para llamar esta clase desde el Main, es:


package ireport_sample;
public class Main {

    public static void main(String[] args) {
        new iReportClass().reporte();
    }

}
10. Compilamos y ejecutamos el proyecto,
FIN

Los archivos utilizados para este proyecto estan en el siguiente enlace:


Enlace actualizado al 19 de noviembre de 2011

http://link.jc-mouse.net/?id=IRJAVSAMP7

continue reading

13/1/11

Reportes con iReport [Basico - Parte1]

JAN29

¿Que es iReport?

iReport es una herramienta que nos permite crear reportes visualmente y los formatos que soporta para la salida son XML, PDF, XLS, HTML, CSV, etc.

Es gratuito y viene como una aplicacion independiente o como plugin para Netbeans, lo puedes descargar desde la pagina del proyecto http://jasperforge.org/. En este tutorial utilizaremos iReport como una aplicacion independiente.

Podemos crear reportes de varias maneras, desde una base de datos lo más comun, de archivos XML o "sin datos" un reporte vacio. Aqui veremos un ejemplo utilizando una base de datos en MySQL.

La base de datos.

La Base de datos que utilizaremos para este ejemplo, la llamaremos "dbSample", y solo constara de una tabla PERSONA:


create table PERSONA (
    p_id bigint(20) NOT NULL auto_increment primary key,    
    p_nombre Varchar(20) not null,
    p_paterno Varchar(20) not null,
    p_materno Varchar(20) null,
    p_direccion Varchar(100) null,
    p_telefono varchar(12) null    
);
y unos cuantos datos


insert into PERSONA( p_nombre , p_paterno , p_materno , p_direccion , p_telefono )
values('Antonio','Bragueta','Suelta','Calle Imaginaria # 345','123-456-789');

insert into PERSONA( p_nombre , p_paterno , p_materno , p_direccion , p_telefono )
values('Jesús','Están','Camino','Calle Imaginaria # 598','');
   
insert into PERSONA( p_nombre , p_paterno , p_materno , p_direccion , p_telefono )
values('Margarita','Flores','del Campo','Calle Imaginaria # 989','878-998-565');
  
insert into PERSONA( p_nombre , p_paterno , p_materno , p_direccion , p_telefono )
values('Rosa','Pechoabierto','Alinstante','Calle Imaginaria # 339','');
  
insert into PERSONA( p_nombre , p_paterno , p_materno , p_direccion , p_telefono )
values('Emiliano','Salido','del Pozo','Av. Quete Importa s/n','888-298-565');
   
insert into PERSONA( p_nombre , p_paterno , p_materno , p_direccion , p_telefono )
values('Dolores','Fuertes','De barriga','Av. Quete Importa #779','008-908-165');

insert into PERSONA( p_nombre , p_paterno , p_materno , p_direccion , p_telefono )
values('Juan','Melo','Machuca','Calle Noseencuentra #721','098-334-212');
Una vez que ya tienes la base de datos creada junto a la tabla y los datos podemos comenzar.

Trabajando con iReport

1. Ejecuta iReport, la aplicacion tiene una interfaz sencilla, no hay pierde, cada una de las secciones de este las veremos a medida que la complejidad de los reportes avance.
2. Busca la opcion Archivo -> New , te aparecera un ventana donde podras escoger el tipo de reporte que quieres, escoge una vacia "Blank Letter" y presiona "Open this template"
3. Ahora dale un nombre al reporte, por ejemplo "rSample", tambien puedes escoger donde guardaras los archivos. Presiona Siguiente y despues Terminar.

4. La Plantilla de nuestro reporte esta listo, puedes observar como la hoja esta dividida en varios sectores al igual que "Report Inspector" ahora esta lleno , por el momento no entraremos en detalle sobre estos nuevos elementos que vemos,  paciencia. ;)

5.Ahora que tenemos nuestra plantilla, procederemos a conectar esta con la base de datos. Sobre la barra de herramientas, busca el icono que tiene la forma de cilindro con un enchufe y dale clic.

6. en la ventana que aparece, "Conenction/Datasources" podemos ver las conexion que tenemos de trabajos anteriores, crearemos una nueva conexion a nuestra base de datos dbSample, para ello clic en New.
7. Aqui escogemos el "DataSource", osea el "origen de datos". Podemos ver que tenemos varias opciones, para este ejemplo trabajeremos con el "Database JDBC connections", y clic en Next.

8. Para terminar la configuracion, primero, escribimos un nombre para nuestra conexion a la base de datos, "dbSample_connection", despues escogemos el driver, MySQL (com.mysql.jdbc.Driver), y escribimos el nombre de a base de datos "dbSample", y presionamos el boton Wizard. Finalmente escribimos introducimos el  usuario "Username", en mi caso lo tengo el default, osea "root" y escribimos el Password. Clic en Save.
9. Si nuestra conexion esta bien hecha, podremos ver que se agrego a nuestra lista de "Conenction/Datasources" , ya podemos cerrar la ventana. Close.

10. IMPORTANTE: fijate que ahora tenemos seleccionado nuestra conexion, si no es asi, busca la conexion.
Ahora debemos crear la consulta SQL para extraer los datos , presiona el icono con forma de cilindro y una flecha.

11. En la ventana que aparece, debemos escribir la consulta en el espacio correspondiente, como nuestra base de datos solo consta de una tabla y esta tabla es sencilla, hacemos un select para todos los elementos y presionamos OK.
12. Ya de vuelta en la pantalla principal de iReport, en la ventana de "Report Inspector", busca la opcion Fields y desplieguela, podra ver como los campos de nuestra tabla PERSONA, estan presentes, ahora estos campos uno por uno, arrestrelos con clic sostenido hasta la hoja, coloquelos sobre el sector de "details", si fuera necesario, puedes cambiar el tamaño de estos campos moviendos los pequeños recuadros que este tiene.
13. Ya que tengamos nuestro reporte hecho, debemos ver como quedo, para esto clic en la opcion PREVIEW, si no existen errores, podra ver algo como esto:

Eso es todo nuestro reporte esta terminado, los archvos que este creo son:
  • rSample.jasper
  • rSample.jrxml
Estos archivos los utilizaremos mas adelante para trabajar con netbeans u otro IDE. Hasta pronto.

[Actualizado]

La segunda parte: Reportes con iReport y Netbeans [Basico - Parte 2], esta listo.

continue reading

Post recomendado