PDA

View Full Version : پاس دادن یک مقدار به Report



gh_fereydonpoor
جمعه 24 بهمن 1382, 08:56 صبح
سلام به همگی
من میخواهم یک Report بگیرم و مقادیری که در Report باید نمایش داده شوند رو خودم و بصورت دستی به آن پاس بدهم(هیچ دیتابسی در میان نیست)
من چطور باید این کارو انجام بدم؟
مرسی
یا علی

بابک زواری
پنج شنبه 30 بهمن 1382, 10:01 صبح
سلام
شما میتونید مقادیری را با کمک پارامترها به گزارش تون پاس بدید ولی اینکه تمام گزارشتون رو با پاس دادن مقادیر بکنید دقیق نمیدونم بشه یا نه و لی بعید میدونم .
اما اگر در مورد پارامترها سوالی داشتید بفرماپید

gh_fereydonpoor
جمعه 01 اسفند 1382, 07:30 صبح
سلام آقای کدنویس
دستت درد نکنه
آره راستش نمیدونم چطوری پارامتر به فرم Crystal Reportam پاس بدم.اگه یه توضیح کوتاهی بدی ممنونت می شم.
ممنون
یا علی

بابک زواری
شنبه 02 اسفند 1382, 09:24 صبح
سلام
شما در گزارشتون از منوی Insertیک parameter field رو انتخاب کنید پنجره ایی باز میشه که نام پارامتر رو از شما میپرسه و چند تا چیز دیگه و اینکه هنگام گرفتن پارامتر عنوان پنجره نمایش داده شده چی باشه که شما میتونید این امکان رو غیر فعال کنید.
بعد فایل گزارشتون رو در حالتی که Save Data With Report فعال نباشد ذخیره میکنید حال در برنامه CrystalReport1.DiscardSavedData=True
بعد مقدار پارامتر رو به اون پاس میدید مثلا
CrystalReport1.ParameterFields(0)="Test"
البته در نسخه 9 کریستال ریپورت به بالا وقتی شما یک Object رو روی گزارش می ذارید میتونید به اون دسترسی همانند اشیا VB دسترسی داشته باشید که این خیلی راحت تره اما من خودم هنوز از نسخه 7 استفاده میکنم .

gh_fereydonpoor
دوشنبه 04 اسفند 1382, 06:56 صبح
سلام
آقا یک دنیا تشکر
برم امتحانش کنم
یا علی

gh_fereydonpoor
پنج شنبه 21 اسفند 1382, 19:00 عصر
سلام
آقا این چیزی که گفتی رو من نتونستم پیدا کنم اگه میشه بیشتر توضیح بده
ممنون یا علی.

mehdi_RM
سه شنبه 21 اسفند 1386, 23:20 عصر
من در گزارشم از یک parameter در کریستال ریپورت استفاده کردم
برای این که دیالوگ پیش فرضش در زمان اجرای برنامه دیده نشه از دستور زیر استفاده کردم


[CODE]
Report.EnableParameterPrompting = False
[CODE/]

و با این دستور در فرم vb بهش مقدار می دم


[CODE]
Dim strparameter As String
strparameter = Trim(frm_report_daramadha_hazineha.cmb_sal.Text) & "% "
Report.ParameterFields.Item(1).AddCurrentValue (strparameter)
[CODE/]

ولی وقتی سال های مختلفی رو انتخاب می کنم گزارش تغییر نمی کنه
من با vb 6 و کریستال ریپورت 9 کار می کنم.
میشه بگید علت کار نکردنش چیه؟


[CODE]
Report.EnableParameterPrompting = False
CRViewer91.Refresh

Dim strparameter As String
strparameter = Trim(frm_report_daramadha_hazineha.cmb_sal.Text) & "% "
Report.ParameterFields.Item(1).AddCurrentValue (strparameter)
Report.DiscardSavedData

CRViewer91.Refresh
CRViewer91.ReportSource = Report
CRViewer91.ViewReport
Screen.MousePointer = vbDefault

mehdi_RM
چهارشنبه 22 اسفند 1386, 12:21 عصر
من با این کد کارم درست شد یعنی مقدار parameter رو داخل گزارش نشون می ده


Report.EnableParameterPrompting = False

CRViewer91.Refresh
Report.DiscardSavedData
Report.ReadRecords
Dim strparameter As String

strparameter = Trim(frm_report_daramadha_hazineha.cmb_sal.Text) & "% "

Report.ParameterFields.Item(1).DiscreteOrRangeKind = crDiscreteValue
Report.ParameterFields.Item(1).AddCurrentValue (strparameter)

Report.FormulaFields.GetItemByName("sal").Text = "'" & Trim(frm_report_daramadha_hazineha.cmb_sal.Text) & "'"

CRViewer91.Refresh
CRViewer91.ReportSource = Report
CRViewer91.ViewReport
Screen.MousePointer = vbDefault

ولی مشکلی که الان برام پیش اومده که هر سالی رو که انتخاب می کنم گزارش خالی هستش
حتی سالهائی که رکورد دارند رو هم خالی نشون می ده و وقتی refresh می زنم سال پیش فرض خودش رو می آره
و رکوردهای اون سال رو نشون می ده
مشکل از کجاست

mehdi_RM
چهارشنبه 22 اسفند 1386, 23:32 عصر
کسی نیست کمک کنه!!!
در دیاری که کسی نیست یار کسی یا رب ای کاش نیفتد به کسی، کار کسی
!!!