PDA

View Full Version : تغییر tableدر کریستال



savalanboy
یک شنبه 31 اردیبهشت 1385, 09:16 صبح
دوستان خسته نباشید
من در sqlserver جداول ماهانه دارم که هرکدام اطلاعات خاص اون ماه رو ذخیره می کنه اما فیلدهای اون جدولها دقیقاً عین هم هستن
سئوال من اینه که آیا می تون یک گزارش با کریستال بسازم که در موقع طراحی از جدول ماه اول طراحی بشه و بعد در هنگام اجرا اتصال گزارش را به جدول های دیگه تبدیل کنم
یعنی بشه با اون گزارش ماههای دیگه رو هم دید

Seivan
یک شنبه 31 اردیبهشت 1385, 15:33 عصر
بله امکان دارد. فقط باید در حین اجرا خود DataTable مربوط به جدول ماه انتخابی را از database بخوانید و برای گزارش Set کنید. فرض کنید داده های ماه انتخابی را در DataTable1 ریخته ایم. و می خواهیم برای گزارش بفرستیم. کد زیر نحوه این کار در #C را نشان می دهد:


myCrystalReport1 report1 = new myCrystalReport1() ;
DataTable1.TableName = report1.DataBase.Tables[0].Name ;
report1 .SetDataSource (DataTable1);

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

savalanboy
چهارشنبه 03 خرداد 1385, 18:34 عصر
خیلی ممنون از راهنمایی تون
اما من در vb6 کار می کنم اگه می تونین سورس کد vb6 رو برام بنویسین

vahidhaghani
سه شنبه 16 خرداد 1385, 06:46 صبح
خیلی ممنون از راهنمایی تون
اما من در vb6 کار می کنم اگه می تونین سورس کد vb6 رو برام بنویسین

با سلام توسط این کد در VB6 میتوانید تمامی Property های یک Connection را ببینید
حال هر کدام از این Property ها را که بخواهید میتوانید Set کنید
On Error Resume Next
Dim props As CRAXDRT.ConnectionProperties
Dim prop As CRAXDRT.ConnectionProperty
Dim Report As New CrystalReport1
Set props = Report.Database.Tables(1).ConnectionProperties
List1.Clear
For Each prop In props
List1.AddItem prop.Name & " : " & prop.Value
Next

Set کردن یک Property :
Report.Database.Tables(1).ConnectionProperties("Da taBase Name")="c:\nwind.mdb"
یا
Report.Database.Tables(1).ConnectionProperties("Da taSource")="SQLSERVERDBNAME"
بسته به نوع روش اتصال به بانک اطلاعاتی مثل
ADO یا DataBaseFile
و غیره
مقادیر مختلفی در
ConnectionProperties
دیده خواهد شد