PDA

View Full Version : گزارشگیری Stimulsoft Reports برای C#‎ و تنکنولوژی LINQ



vapa_71
شنبه 07 بهمن 1391, 19:13 عصر
سلام دوستان

من یک گزارش به شکل زیر میخوام خیلی گشتم اما آموزشی که نیاز منو برطرف کنه پیدا نکردم

پروژه C#‎‎‎
تکنولوژی LINQ
دیتابیس sql experess

اما شرح مساله :
من یک جدول دارم که مشخصات افراد رو میگیره و یک جدول دارم که یک سری داده مربوط به اون اشخاص رو داخلش ذخیره میکنم (شکل اول و دوم)
توی DataGrid امکان جستجو هست که داده های هر فرد رو میشه به صورت جدا برسی کرد مثل عکس اول حالا میخوام اون اطلاعات (3 رکورد) رو واسم گزارش گیری کنه + مشخصات فرد
یعنی مثلا اسم و فامیل و آی دی فرد رو بالا بنویسه بعدش اون 3 تا رکورد رو چاپ کنه
یعنی گزارشم مثل شکل 3 بشه

arman_Delta2002
شنبه 07 بهمن 1391, 19:20 عصر
99040خوب من لینکونی کار نکردم ولی با 2 تا دیتاست میکلت حل میشه به این صورت

Try
Dim Report_Temp1 As New Stimulsoft.Report.StiReport()
Call UpdateBaseFactor()
Call RefreshBaseFactor()
Report_Temp1.Dictionary.Databases.Clear()
Report_Temp1.Dictionary.DataSources.Clear()
Report_Temp1.DataSources.Clear()
'On Error Resume Next
Report_Temp1.Load(Application.StartupPath & "\Report\FactorFrosh\Add_Base_FactorFrosh_SadeNaghd i_A5.mrt")
Report_Temp1.RegData(CompanyDataset1.Tables("D_Company"))
Report_Temp1.RegData(DaftarMaliDataset1.Tables("D_Acc_DaftarMali"))
Report_Temp1.RegData(Base_FactorFroshDataset1.Tabl es("D_Acc_Base_FactorFrosh"))
Report_Temp1.RegData(Sub_FactorFroshDataset1.Table s("D_Acc_Sub_FactorFrosh"))
Report_Temp1.Dictionary.Synchronize()
Report_Temp1.Design()
Catch ex As Exception
MsgBox(ex.ToString)
'BaseError1.SendError(Me.Name, ex)
End Try

خوب حالا شما باید گزارشتون رو طراحی کنین شاید این فایل کمکتون کنه در طراحی گزارش قدری کد های بالا رو باید دست کاری کنین تا به برنامتون سازگار باشه این کد برنامه منه
99040

vapa_71
شنبه 07 بهمن 1391, 19:26 عصر
این vb نیست ؟ من کلا چیزی نفهمیدم

arman_Delta2002
شنبه 07 بهمن 1391, 19:43 عصر
چرا وی بیشه کارش اینه که Dim Report_Temp1 As New Stimulsoft.Report.StiReport() گزارش گیر تعریف میشه

Report_Temp1.Dictionary.Databases.Clear() Report_Temp1.Dictionary.DataSources.Clear()
Report_Temp1.DataSources.Clear()
داده های قدیم پاک سازی میشه

Report_Temp1.Load(Application.StartupPath & "\Report\FactorFrosh\Add_Base_FactorFrosh_SadeNagh di_A5.mrt")
فایل گزارشی که از قبل ایجاد شده لود میشه

Report_Temp1.RegData(CompanyDataset1.Tables("D_Com pany")) Report_Temp1.RegData(DaftarMaliDataset1.Tables("D_ Acc_DaftarMali"))
Report_Temp1.RegData(Base_FactorFroshDataset1.Tabl es("D_Acc_Base_FactorFrosh"))
Report_Temp1.RegData(Sub_FactorFroshDataset1.Table s("D_Acc_Sub_FactorFrosh"))
4 تا تیبل دیتا ست به گزارش اضافه میشه که اینجا مهم ترین بخش کاره
که هر کدوم پدر تیبل قبلی خودشونن یعنی 4 تا زیر هم میشه

Report_Temp1.Dictionary.Synchronize()
Report_Temp1.Design()
میره تو حالت طراحی گزارش
اوجا میتونی ببینی که فیلد های پدر و فرزند چطوری ساخته شده
جالب اینجاست که این جداول اصلا از طریق بانک به هم مرتبط نیستن فقط از طریق کد نویسی و دستور سلکت اسکو ال به هم ارتباط دارن .
واسه تبدیل کد ویبی به سی شارپ سایت آن لاین هم است

vapa_71
شنبه 07 بهمن 1391, 21:23 عصر
والا من خیلی قوی نیستم توی برنامه نویسی به هر حال مرسی

arman_Delta2002
شنبه 07 بهمن 1391, 22:19 عصر
نگا من نمیدونم روش برنامه نویسیت چطوری هست ولی من هر تیبل رو نو یه دیتا ست میریزم و بعد اینطوری اضافه میکنم اگه جای سوالی هست بپرس

aslan
یک شنبه 08 بهمن 1391, 11:17 صبح
سلام
یک نمونه گزارش ساده با استفاده از Stimul و Linq2Sql

99068