1. Utilice reuniones de visualización para integrar varias asociaciones de tablas juntas
2. Filtre datos a través de declaraciones Sql
3. Establezca una asociación con la tabla maestro-esclavo
4. Tenga en cuenta que al insertar un subinforme en la tabla CrystalReport1, asegúrese de agregar los campos asociados de la tabla maestro-esclavo Configúrelo; de lo contrario, se producirán problemas.
El código principal es el siguiente:
/// <resumen>.
/// Vincular CrystalReport
/// </summary>
/// <param nombre="strS">sql</param>
bdReport privado vacío (cadena strS)
{
oCR = nuevo CrystalReport1();
SqlConnection cnn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionSqlServer"]);
SqlDataAdapter cmd1 = new SqlDataAdapter(strS,cnn);
//Crea y completa el DataSet2
ds = new DataSet2();
cmd1.Fill(ds,"meeting");
// SqlDataAdapter cmd2 = new SqlDataAdapter("seleccione * de realplan donde está rplanid (seleccione los 10000 planid principales de ("+sqlStr+") como orden por planid)", cnn);
SqlDataAdapter cmd2 = nuevo SqlDataAdapter(SqlIsOper, cnn);
cmd2.Fill(ds,"realplan");
//Crea la relación entre las tablas Autores y Títulos.
ds.Relations.Add("mo",
ds.Tables["reunión"].Columnas["planid"],
ds.Tables["realplan"].Columns["rplanid"]);
//enlazando reportViewer
oCR.SetDataSource(ds);
this.CrystalReportViewer1.ReportSource = oCR
;
cnn.Cerrar();
}