ورود

View Full Version : چند query در crystal report



mortezawolf
یک شنبه 21 تیر 1388, 18:21 عصر
سلام
بنده یک صفحه crystal report ساختم
می خوام اطلاعاتو از چند table بریزم توش پس باید چند تا query بزنم
حالا نمی دونم با یه دونه crystalReportViewer چجوری می شه چند تا query زد
بعضیا می گن باید دیتاستاشو merge کنی که این کارم بلد نیستم .لطفا کمکم کنید

raziee
یک شنبه 21 تیر 1388, 19:12 عصر
این جداول با هم در ارتباط اند یا کاملا جدا هستند؟
اگه جدا هستند میتونی از Subreports استفاده کنی.
اگر هم با هم مرتبط بودند که دیگه مشکلی باقی نمیمونه.

ببین من در این کد از 4 جدول خروجی میگیرم.


LessonTableAdapter myLTA = new LessonTableAdapter();
CourseTableAdapter myCTA = new CourseTableAdapter();
GroupTableAdapter myGTA = new GroupTableAdapter();
MemberTableAdapter myMTA = new MemberTableAdapter();

DataTable[] myDT = new DataTable[4];
myDT[0] = myLTA.GetData();
myDT[1] = myCTA.GetData();
myDT[2] = myGTA.GetData();
myDT[3] = myMTA.GetDataBy(Personnel_Code);

این ها با هم مرتبط هستند.
و بعد از پر کردن دیتا تیبل


DataSet myDS = new DataSet();
myDS.Tables.AddRange(myDT);

وبعد هم میرم به ریپورت:


FilnalReport myFR = new FilnalReport();
myFR.SetDataSource(myDS);
CR_Final_View.ReportSource = myFR;


---------------
اگر هم با هم مرتبط نبودند:
دوتا DataTable میگیری و به همون صورت بالا پر میکنی و بعد DataSet رو به Subreports وصل میکنی.


myFR.Subreports[0].SetDataSource(myDS2);

alireza_tavakol
دوشنبه 22 تیر 1388, 00:26 صبح
اگر هم با هم مرتبط نبودند:
دوتا DataTable میگیری و به همون صورت بالا پر میکنی و بعد DataSet رو به Subreports وصل میکنی.

myFR.Subreports[0].SetDataSource(myDS2);

سلام ببخشید من از Subreports استفاده کردم ولی با خطای زیر مواجه شدم لطفا راهنمایی بفرماید چه کنم

Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index

mortezawolf
دوشنبه 22 تیر 1388, 19:33 عصر
ممنون میشم اگر مشکل این کد رو بفرمایین

string Query1 = "select ...
ds3 = dataacces2.getResult(Query1);

string Query2 = "...
ds4 = dataacces2.getResult(Query2);
// ds3.GetChanges();
ds3.Merge(ds4);
//ds3.AcceptChanges();





CrystalReport1 obj = new CrystalReport1();
obj.SetDataSource(ds3.Tables[0]);
crystalReportViewer1.ReportSource = obj;
crystalReportViewer1.Zoom(75);

mortezawolf
سه شنبه 23 تیر 1388, 14:15 عصر
کسی نبود که جواب مارو بده؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟:مت کر:

mortezawolf
چهارشنبه 24 تیر 1388, 13:02 عصر
لطفا جواب؟

milad_khosravi
چهارشنبه 24 تیر 1388, 14:46 عصر
manam ye soal daram age 4 ta table dashte bashim va ye table ba table 2 rabete mostaghim dashte bashe va table 2 ba 3vomi rabeteye mostaghim yani fk dashte bashe va ba table badiam fk dashte bashe
on vaght to khoroji yeseri dadeye ezafi to reportam miad
nemidonam tonesam manzoramo befahmonam ya na ?:خجالت:

mortezawolf
دوشنبه 29 تیر 1388, 20:24 عصر
لطفا یکی جواب مارو بده