PDA

View Full Version : refresh گزارش



siamak.tabrizi
دوشنبه 10 دی 1386, 19:58 عصر
با سلام
من یک گزارش با کریستال ساخته ام. ولی برای اینکه اطلاعات به روز نشان داده شود یا باید از خود برنامه کریستال Refresh Data رو بزنم و بعد آن فایل رو ذخیره کنم!!! یا اینکه لز داخل برنامه دستور rpt.Referesh() رو صدا بزنم که در این حال هم چون از StoreProcedure استفاده میکنم صفحه وارد کرن مقدار جدید خود برنامه کریستال باز میشود. لطفا منو راهنمای کنید که چگونه Refresh() رو انجام بدم.البته در ایجاد سند جدید کار میکند ولی وقتی محتوای سندی رو اضافه یا کم میکنم کار نمی کند
این هم کدی که من نوشته ام


rpt = new Report.ReportSanad();

rpt.SetDatabaseLogon("user", "pass");
rpt.SetParameterValue("@sanadNum", txtSanad.Text);

rpt.Refresh()
crReportSanad.ReportSource = rpt;


این هم کدی که بعدا اصلاح کردم ولی بازم به درد نخورد!!


ParameterFields Pfs = new ParameterFields();
ParameterField Ps = new ParameterField();
Ps.Name = "@sanadNum";
ParameterValues Pvs = new ParameterValues();
Pvs.AddValue(1);
Ps.CurrentValues.Add(Pvs[0]);
Pfs.Add(Ps);
crReportSanad.ParameterFieldInfo = Pfs;

sm
دوشنبه 17 دی 1386, 10:18 صبح
خوب شما برای بار دوم به بعد که میخواین Refresh بشه پارامترهایی که کاربر برای اولین بار وارد کرده و رو ذخیره کنین و خودتون با کدنویسی بهش رد کنین!

موفق باشید

محمد رضاپور
سه شنبه 16 بهمن 1386, 18:05 عصر
با سلام
دوست عزیز شما بجای استفاده از متد Refresh باید از 2 متد DiscardSavedData و ReadRecords استفاده کنید تا هر دفعه که گزارش شما نشون داده می شه اطلاعات Refresh بشن.

امیدوارم که به نتیجه مطلوب برسید.
موفق باشید.