PDA

View Full Version : عدم تغییر اطلاعات stimul بعد از تغییر dataTable



SEPIDEYESHAB
سه شنبه 05 شهریور 1392, 03:55 صبح
با سلام خدمت اساتید محترم.
من یه برنامه نوشتم که با stimul ازش گزارش میگیرم !
وقتی برای بار اول اطلاعات dataTable لود میشه هیچ مشکلی نداره و کامل نشون میده !
اما وقتی صفحه گزارش رو میبندم و DataTable رو تغییر میدم ، استیمول همون مقدار قبلی رو نشون میده و مقدار جدید DataTable لود نمیشه !!!

از چه متدی باید برای پاک کردن اطلاعات قبلی استیمول استفاده کنم که دوباره این مقدار جدیدا رو لود کنه ؟!!!:متفکر:

با تشکر !

veniz2008
سه شنبه 05 شهریور 1392, 04:12 صبح
سلام.
کدی رو که باهاش دیتاتیبل رو پر می کنید و استیمول رو show میکنید رو قرار بدید.

SEPIDEYESHAB
سه شنبه 05 شهریور 1392, 05:16 صبح
private void button2_Click(object sender, EventArgs e)
{
if (comboBox1.Text == "" || textBox1.Text == "")
{
MessageBox.Show("گروه یا تاریخ ثبت نشده است");
return;
}

stiReport2.RegData("dsource", dt_show);
stiReport2.Show();

}



این کدی هستش که نوشتم ، منتهی هر دفعه DataTable تو یه event دیگه تغییر میکنه !!!

veniz2008
سه شنبه 05 شهریور 1392, 09:41 صبح
private void button2_Click(object sender, EventArgs e)
{
if (comboBox1.Text == "" || textBox1.Text == "")
{
MessageBox.Show("گروه یا تاریخ ثبت نشده است");
return;
}

stiReport2.RegData("dsource", dt_show);
stiReport2.Show();

}



این کدی هستش که نوشتم ، منتهی هر دفعه DataTable تو یه event دیگه تغییر میکنه !!!
چیزی که اینجا قابل رویت هست اینه که زمانیکه شما روی دکمه کلیک میکنی مقدار دیتاتیبل تغییری نمیکنه.
یا کد مربوط به پر کردن دیتاتیبل رو بیارید داخل دکمه یا اینکه داخل دکمه خودتون اون رویداد رو صدا بزنید. نکته مهمی که وجود داره اینه که از هر کدوم از حالات استفاده کنید قبل از پر کردن دیتاتیبل باید اونو خالی کنید تا مقدار قبلی اون از بین بره و بعد اقدام به پر کردن اون کنید.

dt_show.Clear();

setareh masompoor
سه شنبه 05 شهریور 1392, 09:46 صبح
همه صحبتهای دوست خوبمون veniz درسته یعنی خالی کردن دیتا تیبل و اضافه کردن کدهای که نوشتن
اینم به اون قطعه کد اضافه کن


stiReport2.Render(true);

SEPIDEYESHAB
سه شنبه 05 شهریور 1392, 09:53 صبح
خیلی مچکر درست شد :دی

با تشکر ویژه از
setareh masompoor (http://barnamenevis.org/member.php?274731-setareh-masompoor)
و
veniz2008 (http://barnamenevis.org/member.php?155296-veniz2008)

p.mohammad
شنبه 26 اردیبهشت 1394, 14:12 عصر
با سلام من از تکنولوژی انتیتی استفاده میکنم و همچین مشکلی دارم این قطعه کد من هست.
وقتی یک بار گزارش میگیرم از اطلاعاتم مشکلی نداره ولی وقتی یه رکرد رو حذف یا ویرایش یا ثبت کنم و دوباره گزارش بگیرم همون گزارش قبلی رو نشون میده و باید یک بار فرم رو ببندم و باز کنم تا اطلاعات جدید تو گزارش اعمال شه

لطفا راهنمایی کنید با تشکر

131305

p.mohammad
سه شنبه 29 اردیبهشت 1394, 11:54 صبح
هیچکس نیست جوابمو بدهه ؟

shahryari
سه شنبه 29 اردیبهشت 1394, 12:24 عصر
متد show را بصورت دیالوگ فراخوانی کنید و بعد از آن متد ResetRenderedState() را فراخوانی کنید :)

StiReport1.Show(True);
StiReport1.ResetRenderedState();

p.mohammad
سه شنبه 29 اردیبهشت 1394, 21:13 عصر
با سلام ضمن تشکر از پاسخ شما دوست عزیز این کاری که گفتین رو انجام دادم ولی بازم هیچ تغییری نکرد