PDA

View Full Version : انتخاب فیلد های دلخواه در Stimulsoft



SEPIDEYESHAB
جمعه 21 تیر 1392, 17:41 عصر
با سلام خدمت دوستان عزیز !

من میخوام در گزارشم ، از تیبل انتخاب شده که مثلا 30 تا فیلد داره ،حداکثر 6 تا فیلد به دلخواه کاربر در گزارش نشون داده بشه !!!

من قبلا با VB6 و activeReport راحت این کارو انجام میدادم ، اما الان تو #C به مشکل خوردم :افسرده:

واضح تر بگم ، میخوام 6 تا تکست باکس توی stimul بذارم و با کد بهشون بگم به کدوم فیلد بایند بشن !
دوستان اگه کمکم کنید خیلی ممنون میشم !

danialafshari
جمعه 21 تیر 1392, 17:48 عصر
سلام
کاری نداره Query رو انجام بدید که نتیجش داخل dataset یا datatable هستش
بعدش datatable رو بفرستید به stimul

SEPIDEYESHAB
جمعه 21 تیر 1392, 18:01 عصر
به نظرم با کوئری فقط میشه رکورد ها رو کم و زیاد کرد نه فیلد ها رو !!!
اگه واقعیت خلاف اینه میشه یه نمونه بذارید ؟!

چون من تا حالا هرچی دیدم این بوده که حداقل اسم فیلد ها رو در دیزاین stimul باید ست میکردیم !
بعد یه dataset یا dataTable رو به Stimul میدادیم و Stimul اون فیلدهایی که قبلا تو دیزاینش بهش معرفی کرده بودیم رو از دیتا تیبل نمایش میداد !

حالا من میخوام این فیلد ها رو هم خودم با کد مشخص کنم !!!!

danialafshari
جمعه 21 تیر 1392, 18:45 عصر
چطور نمیشه؟
SELECT mName, mFamily
FROM dbo.tbl_Moshtari
این جدول شامل 5 فیلده که 2 فیلدش رو Select کردم و نشون میده

چون من تا حالا هرچی دیدم این بوده که حداقل اسم فیلد ها رو در دیزاین stimul باید ست میکردیم !
بعد یه dataset یا dataTable رو به Stimul میدادیم و Stimul اون فیلدهایی که قبلا تو دیزاینش بهش معرفی کرده بودیم رو از دیتا تیبل نمایش میداد !
خب درسته! اون فیلد هایی رو که می خواید بفرستید رو ست کنید نه همه رو

حالا من میخوام این فیلد ها رو هم خودم با کد مشخص کنم !!!!
من قبلا این کار و انجام دادم و میشه ! جوابتون تو پست اول منه

SEPIDEYESHAB
جمعه 21 تیر 1392, 19:22 عصر
مرسی از راهنماییت
میشه یه نمونه سورس کوچیک بذاری ؟!!

دمه افطاره دعات میکنم :دی

SEPIDEYESHAB
جمعه 21 تیر 1392, 21:21 عصر
دوستان ... دوستان ...
خواستن توانستن است !!!

اینقدر باهاش ور رفتم که بالاخره تونستم ! :چشمک:

با این کد میشه به stimul بگیم کدوم ستون کدوم فیلد رو بخونه !!!





OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Users\\SOROOSH\\Desktop\\db.mdb");
OleDbDataAdapter da = new OleDbDataAdapter();
da.SelectCommand = new OleDbCommand("select * from bime where id > 3", conn);
da.SelectCommand.CommandType = CommandType.Text;
DataSet ds = new DataSet();
DataTable dt = new DataTable();
da.Fill(ds, "bime");
da.Fill(dt);
dataGridView1.DataSource = dt;
//dataGridView1.DataSource = ds;
//dataGridView1.DataMember = "bime";
conn.Open();
//===============================

Stimulsoft.Report.Components.StiText t = new Stimulsoft.Report.Components.StiText();
t = (Stimulsoft.Report.Components.StiText)stiReport1.G etComponentByName("Datads1_mablagh_bime");
t.Text = "{ds1.ID}";
stiReport1.RegData("ds1",ds);
stiReport1.Show();



امیدوارم یه روزی به درد یکی که مث من اینجا گیر کرده باشه بخوره !

اگر بخوام توضیح بدم هم اول یه متغیر t از نوع تکست استیمول میسازیم
وبعد تکست باکس توی ریپورت رو از طریق اسمش میگیریم(datads1_mablagh_bime) و اونو تبدیل میکنیم !
سپس تکست اون رو به هر فیلدی که خودمون میخوایم (که باید توی کوئریمون هم باشه) تغییر میدیم (t.text = "{ds1.id}") حالا این تکست توی ریپورت فیلد ID از جدول BIME رو نشون میده !!!

danialafshari
جمعه 21 تیر 1392, 22:24 عصر
احسنت
حالا اگه من بهت می گفتم لذت بخش تر بود یا اینکه الان که خودت فهمیدی؟

SEPIDEYESHAB
یک شنبه 23 تیر 1392, 00:08 صبح
بعله حق با شماست :لبخند:
شب راه حل پیدا کردن به از شب پادشاهی نیست !!!
به شرط آنکه خودت کد سورستو پیدا کنی ! :لبخند:

به هر حال ممنون !