Dataset Tipados
Enviado por sppmfp • 2 de Diciembre de 2013 • 570 Palabras (3 Páginas) • 305 Visitas
Crystal Reports] Usar DataSet Tipado con dos DataTable
Introducción
La finalidad de este articulo es muy puntual e intentara demostrar como hacer uso en un reporte de Crystal un DataSet Tipado que contiene dos DataTable en su interior.
En este caso se necesita listar los contactos de una empresa, pero para ello no solo se debe contar con los datos de los contactos, sino que además se desea enviar en el mismo origen de datos la información de la empresa.
Para esta operación es que se hace uso de un mismo DataSet Tipado, pero este contendrá dos tablas, las cuales serán cargadas de forma independiente, pero todo el conjunto será enviado como DataSource al reporte.
Para la operación se carga del dataset es que se ha creado un método que permite bajo la misma conexión cargar ambas tablas
public static dtoContactosEmpresa GetContactosEmpresa()
{
dtoContactosEmpresa dtContactosEmpresa = new dtoContactosEmpresa();
using (OleDbConnection conn = new OleDbConnection(ConfigurationManager.ConnectionStrings["default"].ToString()))
{
#region Cargo Datos Empresa
string sql = @"SELECT IdEmpresa
,RazonSocial
,Telefono
,Direccion
,CUIT
FROM Empresas";
OleDbCommand command = new OleDbCommand(sql, conn);
OleDbDataAdapter da = new OleDbDataAdapter(command);
da.Fill(dtContactosEmpresa, "DatosEmpresa");
#endregion
#region Cargo Contactos
sql = @"SELECT Nombre
,Apellido
,FechaNacimiento
,Localidad
,Calle
,Numero
FROM Contacto";
command = new OleDbCommand(sql, conn);
da = new OleDbDataAdapter(command);
da.Fill(dtContactosEmpresa, "Contactos");
#endregion
}
return dtContactosEmpresa;
}
Es importante remarcar como al hacer el Fill() de los datos se especifica el nombre del datatable donde se quiere volcar la información (líneas 22 y 42)
...