2
CrystalReportAct crt = new CrystalReportAct();
sqlcon.Open();

sql = "SELECT EmpLog.Date, JobCategory.JobDesc, 
        Client.CompDesc, Product.ProdName, EmpLog.Actions, EmpLog.Remarks 
        FROM Client 
        INNER JOIN EmpLog ON Client.CompCode = EmpLog.CompCode 
        INNER JOIN JobCategory ON EmpLog.JobCode = JobCategory.JobCode 
        INNER JOIN Product ON EmpLog.ProdCode = Product.ProdCode 
        WHERE (EmpLog.EmpID = '"+empID+"')";

SqlDataAdapter adp = new SqlDataAdapter(sql, sqlcon);
DataSet ds = new DataSet();
adp.Fill(ds, "Client");
adp.Fill(ds, "Emplog");
adp.Fill(ds, "JobCategory");
adp.Fill(ds, "Product");

crt.SetDataSource(ds);
crystalReportViewer1.ReportSource = crt;

これは実行されますが、出力が間違っています。出力は、3行ではなく、ほぼ80行です。

4

1 に答える 1

0

crt.SetDataSource(ds) ステートメントで、テーブル名も指定します。それ以外の場合は、合計行が取得されます。

于 2013-02-06T09:20:25.977 に答える