PDA

View Full Version : عدم نمایش اطلاعات DataTable در گزارش بعد از کلیک دوم



behnam-soft
چهارشنبه 06 آذر 1392, 20:02 عصر
سلام خدمت
من از استیمول ریپورت برای گزارش گیری استفاده می کنم و برای ارسال اطلاعات هم از یه دیتا تیبل استفاده می می کنم. بار اولی که دکمه چاپ رو کلیک می کنم گزارش بی هیچ مشکلی چاپ میشه و اطلاعات هم در اون به نمایش در میان، اما وقتی گزارش رو می بندم و برای بار دوم کلیک می کنم، گزارش به نمایش در میاد اما هیچ اطلاعاتی رو نشون نمی ده، من برای اطمینان از خالی نبودن دیتا تیبل هم با مسیج باکس سطر های اون رو چک می کنم که البته پر هستن اما نمی دونم چرا برای بار دوم نشون نمیده اطلاعات ارسالی رو. این هم کدهایی که نوشتم :(من دیتا تیبل رو بصورت کلی تعریف کردم نه فقط تو بلاک دکمه چاپ)

private void btnAvarezPrint_Click(object sender, EventArgs e)
{
if (dtAvarezShow.Rows.Count != 0)
{
MessageBoxEx.Show("چاپ،تعداد سطر" + dtAvarezShow.Rows.Count.ToString());
stiReportAvarez.Load(Environment.CurrentDirectory + "\\ReportRoosta.mrt");
stiReportAvarez.ReportName = reflectionLabelKarbar.Text;
PersianCalendar ps = new PersianCalendar();
string date = ps.GetYear(DateTime.Now) + "/" + ps.GetMonth(DateTime.Now).ToString("D2") + "/" + ps.GetDayOfMonth(DateTime.Now).ToString("D2");
StiVariable stivDate = new StiVariable("Date", "b", typeof(string), date, false);
stiReportAvarez.Dictionary.Variables.Add(stivDate) ;
if (rdbAvarezOstan.Checked == true)
{
StiVariable stivdetails = new StiVariable("ReportDetails", "Details", typeof(string),
" گزارش اعتبارات تخصیصی استان " + " در " + comboBoxAvarezMah2.SelectedItem.ToString() + " " + comboBoxAvarezSal2.SelectedItem.ToString(), false);
stiReportAvarez.Dictionary.Variables.Add(stivdetai ls);
}
else if (rdbAvarezShahrestan.Checked == true)
{
StiVariable stivdetails = new StiVariable("ReportDetails", "Details", typeof(string),
" گزارش اعتبارات تخصیصی کلیه بخش های شهرستان " + comboBoxAvarezShahrestan.Text + " در " + comboBoxAvarezMah2.SelectedItem.ToString() + " " + comboBoxAvarezSal2.SelectedItem.ToString(), false);
stiReportAvarez.Dictionary.Variables.Add(stivdetai ls);
}
else if (rdbAvarezBakhsh.Checked == true)
{
StiVariable stivdetails = new StiVariable("ReportDetails", "Details", typeof(string),
" گزارش اعتبارات تخصیصی شهرستان " + comboBoxAvarezShahrestan.Text + " بخش " + comboBoxAvarezBakhsh.Text + " در " + comboBoxAvarezMah2.SelectedItem.ToString() + " " + comboBoxAvarezSal2.SelectedItem.ToString(), false);
stiReportAvarez.Dictionary.Variables.Add(stivdetai ls);
}
MessageBoxEx.Show("چاپ،تعداد سطر قبل از ارسال به استیمول" + dtAvarezShow.Rows.Count.ToString());
stiReportAvarez.RegData(dtAvarezShow);
stiReportAvarez.Show();
MessageBoxEx.Show("چاپ،تعداد سطر بعد از ارسال به استیمول" + dtAvarezShow.Rows.Count.ToString());
}
else
MessageBoxEx.Show("اطلاعاتی برای چاپ وجود ندارد","پیغام",MessageBoxButtons.OK,MessageBoxIcon.Stop);
}

ممنون می شم راهنمایی بفرمایین

behnam-soft
چهارشنبه 06 آذر 1392, 21:20 عصر
وقتی دیتا تیبل رو داخل خود بلاک دکمه چاپ تعریف می کنم درست میشه اما وقتی اون رو کلی تعریف می کنم(که در هر جایبرنامه قابل دسترسی باشه) برای بار دوم اطلاعاتش ارسال نمیشن به گزارش!