Vous êtes sur la page 1sur 18

http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.

htm

Parámetro C # Crystal Reports String


La siguiente sección describe cómo pasar un parámetro String a Crystal Reports desde
la aplicación C #.

Todos los tutoriales de C # Crystal Reports en este sitio web se basan en la siguiente
base de datos: crystaldb. Antes de comenzar esta sección, eche un vistazo a la estructura
de la base de datos de crystaldb. Haga clic aquí :

Nombre de la Base de Datos "crystaldb"

Nombre de Tablas a Crear :

OrderMaster , OrderDetails , Product .

Estructura de las Tablas :

Utilizar los siguiente comandos en el SQL :

CREATE TABLE [dbo].[OrderMaster] (


[OrderMaster_id] [int] NOT NULL ,
[OrderMaster_date] [datetime] NULL ,
[OrderMaster_customername] [varchar] (50),
[OrderMaster_createduser] [varchar] (50)
) ON [PRIMARY]

CREATE TABLE [dbo].[OrderDetails] (


[OrderDetails_id] [int] NOT NULL ,
[OrderDetails_masterid] [int] NULL ,
[OrderDetails_productid] [int] NULL ,
[OrderDetails_qty] [int] NULL
) ON [PRIMARY]

CREATE TABLE [dbo].[Product] (


[Product_id] [int] NOT NULL ,
[Product_name] [varchar] (50) ,
[Product_price] [numeric](18, 0) NULL
) ON [PRIMARY]
http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

Ingresar algunos datos de la tabla :

En los sgts graficos se puede mostrar algunos archivos para las tablas
- Crystal Reports tutorial

Order Master Table

Order Details Table Data

Product Table Data

Si es nuevo en Crystal Reports y no sabe cómo crear Crystal Reports desde C #, eche
un vistazo a la sección de tutorial paso a paso para crear Crystal Reports desde C # .
http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

Aquí pasamos un parámetro String de C # a Crystal Reports. Por ejemplo, desde el


programa C #, pasamos un nombre de cliente como parámetro y mostramos todos los
pedidos de ese cliente a Crystal Reports.

C # Crystal Reports paso a paso


Abra Visual Studio .NET y seleccione un nuevo proyecto de CSharp para Windows.

Ahora obtendrá el Form1.cs predeterminado.

Desde el menú principal en el proyecto de Visual Studio C #, seleccione PROYECTO -


> Agregar nuevo elemento . Luego aparecerá el cuadro Agregar nuevo elemento y
seleccione Crystal Reports en el cuadro de diálogo.
http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

Seleccione el tipo de informe de la galería Crystal Reports.

Acepte la configuración predeterminada y haga clic en Aceptar.

El siguiente paso es seleccionar la conexión apropiada a su base de datos (aquí


crstaldb). Aquí vamos a seleccionar la conexión OLEDB para SQL Server para
conectar Crystal Reports en C #.

Seleccione OLE DB (ADO) desde Crear nueva conexión.


http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

Seleccione Microsoft OLE DB Provider para SQL Server.

La siguiente pantalla es la pantalla de autenticación de SQL Server para conectarse a la


base de datos - crystalDB. Seleccione su nombre de servidor Sql, ingrese ID de usuario,
contraseña y seleccione su nombre de base de datos.

Haga clic en siguiente, luego la pantalla muestra los valores de la propiedad OLE DB,
déjelo como está, y luego haga clic en el botón de finalizar.
http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

Después de hacer clic en el botón Finalizar, en la siguiente ventana obtendrá su nombre


de Servidor bajo Conexión OLEDB, desde allí el nombre de la base de datos
seleccionada (Crystaldb) y haga clic en las tablas, luego podrá ver todas sus tablas desde
su base de datos.

En la lista de tablas, haga doble clic en la tabla Producto y verá que la tabla Producto
aparecerá en la lista de la derecha.

Haga clic en el botón Siguiente

Seleccione todos los campos de la tabla Producto en la lista del lado derecho.
http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

Haga clic en el botón Finalizar. Luego puede ver la ventana del diseñador Crystal
Reports en su proyecto C #. En la ventana del diseñador de Crystal Reports, puede ver
los campos seleccionados de la tabla Producto. Puede organizar el campo Objetos y el
diseño de la pantalla según sus requisitos. Después de eso, su pantalla se verá como la
siguiente imagen.

Ahora la parte de diseño ha terminado y el próximo paso es llamar a Crystal Reports en


su aplicación C # y verlo a través del control Crystal Reports Viewer en C #.

Seleccione el formulario predeterminado (Form1.cs) que creó en C # y arrastre un botón


y un control CrystalReportViewer a su formulario.
http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

Después de arrastrar CrystalReportViewer a su formulario, se verá como la siguiente


imagen.

Debe incluir CrystalDecisions.CrystalReports.Engine en su código fuente de C #.

utilizando CrystalDecisions.CrystalReports.Engine;

Copie y pegue el siguiente código fuente y ejecute su proyecto C #

Siguiente: C # Crystal Reports de varias tablas

Descargue el código fuente


Imprimir código fuente

usando el sistema; usando System.Windows.Forms; utilizando


CrystalDecisions.CrystalReports.Engine; espacio de nombres
http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

WindowsApplication1 {public partial class Form1: Form {public Form1 ()


{InitializeComponent (); } private void button1_Click (object
remitente, EventArgs e) {ReportDocument cryRpt = new ReportDocument
(); cryRpt.Load (PUT CRISTAL REPORT PATH AQUÍ \\ CrystalReport1.rpt
"); crystalReportViewer1.ReportSource = cryRpt;
crystalReportViewer1.Refresh ();}}}

NOTAS:
cryRpt.Load (PONGA LA RUTA DEL INFORME CRISTAL AQUÍ \\
CrystalReport1.rpt ");

La ruta del archivo de Crystal Reports en su ubicación del archivo de proyecto C #, allí
puede ver CrystalReport1.rpt. Así que proporcione el nombre de ruta completo del
archivo de Crystal Reports como c: \ projects \ crystalreports \ CrystalReport1.rpt

Cuando ejecutas el código fuente obtendrás el informe como en la siguiente imagen.

Cuando haces clic en el botón, la aplicación te preguntará el nombre de usuario y la


contraseña.

En la sección anterior, recibimos el informe de todos los pedidos de todos los clientes,
es decir, todos los pedidos realizados por todos los clientes. En esta sección, sacamos el
informe del cliente seleccionado solo pasando el nombre del Cliente como argumento.

Espero que entiendas bien la sección anterior, si no, haz clic aquí C # Crystal Reports de
varias tablas .

El siguiente paso es crear un parámetro de cadena en la ventana del diseñador de


informes de Crystal.
http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

Seleccione el Explorador de campo del menú de CrystalReport. (Hasta aquí explicado


en detalle en la sección anterior C # Crystal Reports de varias tablas )

Luego puede ver el Explorador de campo en el lado izquierdo.

Seleccione el campo de parámetros desde el Explorador de campos y haga clic con el


botón derecho en el campo de parámetros.

Complete el nombre apropiado para los campos de texto Indicar e indicar como la
siguiente imagen.
http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

Después de crear el campo de parámetro, debemos crear la fórmula de selección para el


parámetro Crystal Reports.

Para crear una fórmula de selección, haga clic con el botón derecho en la ventana del
diseñador de Crystal Reports, seleccione INFORMAR -> FORMULARIO DE
SELECCIÓN -> GRABAR .

Ahora puede ver la pantalla del Editor de fórmulas de selección de registros. Para crear
una fórmula de selección, debe seleccionar los campos de la lista de campos de arriba y
hacer la fórmula.

Primero debe seleccionar OrderMaster.OrderMaster_customername desde el campo de


informe y seleccionar el operador de comparación y seleccionar el campo de parámetro.
Haga doble clic en cada campo y luego será seleccionado.

Forma la siguiente imagen, puedes entender cómo seleccionar campos.

Puede cerrar la pantalla del Editor de fórmulas de selección después de crear la fórmula
de selección.
http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

Ahora la parte de diseño ha terminado y el próximo paso es llamar a Crystal Reports en


C # y verlo en el control Crystal Reports Viewer.

Seleccione el formulario predeterminado (Form1.cs) que creó en C # y arrastre un botón


y un control CrystalReportViewer a su formulario.

Debe incluir CrystalDecisions.CrystalReports.Engine en su código fuente de C #.

utilizando CrystalDecisions.CrystalReports.Engine;

usando CrystalDecisions.Shared;

Copie y pegue el siguiente código fuente y ejecute su proyecto C #

C# Crystal Reports String parameter


The following section describes how to pass a String parameter to
Crystal Reports from C# application.

All C# Crystal Reports Tutorial in this website is based on the


following database - crystaldb. So before you begin this section ,
please take a look at the database structure of crystaldb - Click Here
C# crystaldb

If you are new to Crystal Reports and do not know how to create
Crystal Reports from C# , please take a look at the section step by
step tutorial for creating a Crystal Reports from C#.

Here we pass a String parameter from C# to Crystal Reports . For


example , from C# program we pass a customer name as a
http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

parameter and show all the orders of that customer to the Crystal
Reports.

In the previous tutorial we saw how to generate a C# - Crystal Reports


from multiple tables. This program is the continuation of previous
tutorial , the only difference is that we pass a Customer Name as String
parameter and get the report of that particular Customer only . Before
starting to this section just take a look at the previous section C#
Crystal Reports from multiple tables.

In the previous section we are getting the report of all orders from all
customers , that is , all orders placed by all customers . In this
section we pull out the selected customer report only by passing
Customer name as argument.

Hope you understand the previous section well, if not, please click
here C# Crystal Reports from multiple tables.

Next step is to create a String parameter in Crystal report designer


window .

Select the Field Explorer from CrystalReport Menu. (Up to here


explained in detail in the previous section C# Crystal Reports from
multiple tables)

Then you can see Field Explorer in the Left hand side.

Select Parameter Field from Field Explorer and right Click on


Parameter Field.
http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

Fill the appropriate name for Name and Prompting text fields like the
following picture.

After creating the parameter field , we have to create the selection


formula for the Crystal Reports parameter.

For creating selection formula , Right click on Crystal Reports


designer window , select REPORT -> SELECTION FORMULA ->
RECORD .
http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

Now you can see the record Selection Formula Editor Screen. For
creating selection formula , you have to select the fields from above
field list and make the formula .

First you have to select OrderMaster.OrderMaster_customername


from Report Field and select the comparison operator and select the
parameter field. Double click each field then it will be selected.

Form the following picture you can understand how to select fields.

You can close Selection Formula Editor screen after creating selection
formula.

Now the designing part is over and the next step is to call the Crystal
Reports in C# and view it in Crystal Reports Viewer control .

Select the default form (Form1.cs) you created in C# and drag a


button and a CrystalReportViewer control to your form .
http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

You have to include CrystalDecisions.CrystalReports.Engine in


your C# Source Code.

using CrystalDecisions.CrystalReports.Engine;

using CrystalDecisions.Shared;

Copy and paste the following source code and run your C# project

Next : C# Crystal Reports Integer parameter

Download Source Code


Print Source Code

using System;
using System.Windows.Forms;
using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;

namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)


{
ReportDocument cryRpt = new ReportDocument();
cryRpt.Load("PUT CRYSTAL REPORT PATH
HERE\CrystalReport1.rpt");
http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

ParameterFieldDefinitions crParameterFieldDefinitions ;
ParameterFieldDefinition crParameterFieldDefinition ;
ParameterValues crParameterValues = new ParameterValues();
ParameterDiscreteValue crParameterDiscreteValue = new
ParameterDiscreteValue();

crParameterDiscreteValue.Value = textBox1.Text;
crParameterFieldDefinitions =
cryRpt.DataDefinition.ParameterFields;
crParameterFieldDefinition =
crParameterFieldDefinitions["Customername"];
crParameterValues =
crParameterFieldDefinition.CurrentValues;

crParameterValues.Clear();
crParameterValues.Add(crParameterDiscreteValue);

crParameterFieldDefinition.ApplyCurrentValues(crParameterValues);

crystalReportViewer1.ReportSource = cryRpt;
crystalReportViewer1.Refresh();

}
}
}

NOTE :
cryRpt.Load(PUT CRYSTAL REPORT PATH HERE\\CrystalReport1.rpt");

La ruta del archivo de Crystal Reports en su ubicación de archivos del proyecto C #, allí
puede ver CrystalReport1.rpt. Así que proporcione el nombre de ruta completo del
archivo de Crystal Reports como c: \ projects \ crystalreports \ CrystalReport1.rpt

Ahora puedes ejecutar el programa. Ingrese un Nombre de cliente (ingrese cualquier


cliente existente de la tabla Ordermaster) y haga clic en el botón, luego su informe se
verá como la siguiente imagen.
http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-db.htm

Aquí obtenemos el resultado de los detalles del pedido del Cliente4.

Vous aimerez peut-être aussi