Retroceder   Foros del Web > Programación para sitios web > .NET > win forms

Respuesta
 
Herramientas Desplegado
Antiguo 04-may-2008, 16:20   #1 (permalink)
RDV1981 ha deshabilitado el karma
 
Fecha de Ingreso: junio-2007
Mensajes: 41
Imprimir Datagrid O Dataset

Buenas Tardes. Tengo el siguiente problema desde hace 2 semanas y aun no consigo solventarlo.

Estoy trabajando con VS.NET-C#2003 y necesito imprimir un DATASET. Yo llenó el DataSet a traves de la Clase SQLHELPER y queda de la siguiente forma:

************* COMIENZA CODIGO ***********************

dgVisitante.DataSource=null; // MI DATAGRID

SqlConnection con = CLASS_PRINCIPAL.dameconexion(); // ABRE CONEXION

DataSet dsVisitantes2 = new DataSet(); // MI DATASET

dsVisitantes2=SqlHelper.ExecureDataSet(con,ComandT ype.Text,string.Format(ClsSQL.PorCedula,Form_REPOR TE_CEDULA.cedula)) // MI CONSULTA

dgVisitante.DataSource=dsVisitantes2.Tables[0>; // MUESTRA EN MI DATAGRID LA INFORMACION DE MI DATASET

con.Close(); // CIERRA CONEXION

************* TERMINA CODIGO ***********************

Este codigo anterior funciona pefectamente, ya que el reporte que se muestra en el DataGrid es el correcto. Ahora lo que necesito es imprimir esta información. No es necesario que imprima algun encabezado, o que tenga cierta presencia. Con que solamente imprima la informacion tal cual aparece en el datagrid seria perfecto. Entonces yo logre imprimir el DataGrid de esta manera:

************* COMIENZA CODIGO ***********************

private void button1_Click(System.Object sender, System.EvenArgs e) // BOTON PARA IMPRIMIR
{
printDocument1.Print();
}

private void printDocument1_PrintPage_1(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
PaintEventArgs myPaintArgs = new PaintEventArgs (e.Graphics, new Rectangle (new Point (100, 100), this.Size));

this.InvokePaint(dgVisitante, myPaintArgs);
}

************* TERMINA CODIGO ***********************

Este codigo anterior tambien funciona, ya que si imprime la informacion del DataGrid, pero hay un problema, si el reporte es mas largo del tamaño del DataGrid y aparece la barra al lado para moverse hacia abajo o hacia arriba para ir viendo el reporte, cuando se manda a imprimir solamente imprime la parte del reporte que esta visible por pantalla en ese momento, pareciera que esta imprimiendo es un copyscreen del dataGrid, entonces cuando es un reporte pequeñito de unas 30 lineas no hay problema, pero cuando los reportes son mayores solo me imprime una parte. Entonces la solución seria mandar a imprimir el Dataset en vez de el DatGrid. Pero no se como hacerlo, ya que si cambio en ese codigo el DataSet por el DataGrid me da error.

Por favor si alguien me puede ayudar con este problema, ya que en internet lo que he conseguido son codigos sumanete extensos ( por lo menos de 100 lineas de codigo) para hacer esto que debe de ser sumanete sencillo ya que no lleva formato si no simplemente imprimir todo el DataSet o todo el DataGrid tal cual como viene. Seria de mucha utilidad que me envien el codigo de como hacerlo, tengo mas de 2 semansa y no consigo una solucion. Gracias.

Atte. Raul.

correo: elchapis81@hotmail.com
RDV1981 está desconectado   Responder Citando
Antiguo 07-may-2008, 06:34   #2 (permalink)
jhonwilliams tiene algunos puntos positivos de karma
 
Avatar de jhonwilliams
 
Fecha de Ingreso: marzo-2004
Ubicación: Medellin - Colombia
Mensajes: 1.103
Re: Imprimir Datagrid O Dataset

Y que paso con la idea de hacerlo con crystal reports?

Saludo
__________________
"Una mujer sería encantadora si uno pudiera caer en sus brazos sin caer en sus manos." (Ambrose Bierce)
jhonwilliams está desconectado   Responder Citando
Antiguo 09-may-2008, 08:42   #3 (permalink)
RDV1981 ha deshabilitado el karma
 
Fecha de Ingreso: junio-2007
Mensajes: 41
Re: Imprimir Datagrid O Dataset

No he intentado con Crystal. debe de existir una forma sencilla de enviar el dataset a print().

Alguien que pueda ayudar ? por favor. Es urgente!!!
RDV1981 está desconectado   Responder Citando
Antiguo 09-may-2008, 08:45   #4 (permalink)
jhonwilliams tiene algunos puntos positivos de karma
 
Avatar de jhonwilliams
 
Fecha de Ingreso: marzo-2004
Ubicación: Medellin - Colombia
Mensajes: 1.103
Re: Imprimir Datagrid O Dataset

Creame que si sabes hacerlo con crystal lo haras en 15 min y es sencillo hacerlo.

Saludos
__________________
"Una mujer sería encantadora si uno pudiera caer en sus brazos sin caer en sus manos." (Ambrose Bierce)
jhonwilliams está desconectado   Responder Citando
Antiguo 11-may-2008, 15:41   #5 (permalink)
RDV1981 ha deshabilitado el karma
 
Fecha de Ingreso: junio-2007
Mensajes: 41
Re: Imprimir Datagrid O Dataset

Ok, en base al codigo que tengo ya creado (arriba donde cargo el dataset), cual seria el codigo que tengo que colocar para hacerlo a traves de Crystal. donde tengo esto:

private void crystalReportViewer1_Load(object sender, System.EventArgs e)
{
}

y mi rpt es: CrystalReport1.rpt

No se si hay que hacer alguna configuracion o algo. Por favor necesito ayuda.
RDV1981 está desconectado   Responder Citando
Antiguo 12-may-2008, 12:29   #6 (permalink)
jhonwilliams tiene algunos puntos positivos de karma
 
Avatar de jhonwilliams
 
Fecha de Ingreso: marzo-2004
Ubicación: Medellin - Colombia
Mensajes: 1.103
Re: Imprimir Datagrid O Dataset

Estaba convencido que ayer te conteste, pero entro a ver como te estaba lledo y plof!! no veo mi respuesta asi que aca vuelve y juega

Lo primero que debes hacer es diseñar el reporte con los campos que deseas imprimir, para esto ayudate con un DataSet tipado que contenga los campos del reporte, creo que serian los mismos campos de DataSet dsVisitantes2

Una vez tengas eso haces una instancia del reporte que creaste y le asignas los datos, asi:

C#
Código:
CrystalReport1 miReporte = new CrystalReport1();
miReporte.SetDataSource(dsVisitantes2.Table[0]);
Y para enviarlo a la impresora
Código:
miReporte.ToPrinter(................);
Saludos
__________________
"Una mujer sería encantadora si uno pudiera caer en sus brazos sin caer en sus manos." (Ambrose Bierce)
jhonwilliams está desconectado   Responder Citando
Respuesta
No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 00:03.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93