1
次のコードを使用して、Crystal Reportsをページロードイベントでバインドしています。SAP Crystal Reports for VS2010データバインディング、フィルタ適用なし
using (MilitrymessEntities entity = new MilitrymessEntities())
{
BarporderReports barporpt = new BarporderReports();
barporpt.Refresh();
barporpt.SetDataSource(query);
//barporpt.SetParameterValue("norows", 10);
crviewer_barpurchaseorder.RefreshReport();
crviewer_barpurchaseorder.ReportSource = barporpt;
}
これは正しくバインディングされており、レポートを表示しています。ボタンのクリックイベントでレポートにフィルタを適用しました。検索ボタンをクリックすると、レポートには同じデータセットが表示されます。フィルタされた値は表示されません。ボタンのクリックイベントコードは次のとおりです。
using (MilitrymessEntities entity = new MilitrymessEntities())
{
DateTime dt1 = Convert.ToDateTime(txt_fromdate.Text);
DateTime dt2 = Convert.ToDateTime(txt_todate.Text);
string strdt1 = dt1.Date.ToString("MM/dd/yyyy");
string strdt2 = dt2.Date.ToString("MM/dd/yyyy");
dt1 = Convert.ToDateTime(strdt1);
dt2 = Convert.ToDateTime(strdt2);
var query = from data in entity.BarPurchaseOrders.AsEnumerable()
where (data.Date >= dt1) && (data.Date <= dt2) && data.ItemName == drp_itemname.SelectedItem.Text
select data;
BarporderReports barporpt = new BarporderReports();
barporpt.Refresh();
barporpt.SetDataSource(query);
crviewer_barpurchaseorder.RefreshReport();
crviewer_barpurchaseorder.ReportSource = barporpt;
}
この問題についてご意見はありますか?