PDA

View Full Version : نحوه اتصال صحیح به Crystal Report در VB.Net



Hamed_R
پنج شنبه 12 بهمن 1396, 09:53 صبح
با سلام

من تمامی گزارشاتم رو قبلا در کریستال ریپورت طراحی کردم. حالا نرم افزار رو تبدیل به VB.Net کردم ولی توی لود کردن گزارش مشکل دارم.
اول اینکه هر دفعه که کلید چاپ زده میشه تمامی پارامترها رو می خواد در حالی که تمامی پارامترهای داخل برنامه مقدار دهی شدن و باید کلید Close پنجره پارامترها رو بزنم تا درست بشه و بره مقادیر داخل برنامه رو برداره.
دوم اینکه وقتی ابزار Crystal Report Viewer رو در یه فرم دیگه قرار میدم و از فرم جاری اطلاعات رو می فرستم نمی تونه فایل گزارش رو باز کنه و خطا می ده.
سوم اینکه نام سرور، دیتابیس ، یوزر و پسورد رو درست ست نمی کنه. کد برنامه بصورت زیر هستش. ممنون میشم از دوستان اگه راهنمایی کنن.


[LTR_INLINE][LTR_INLINE]Dim crConnectionInfo As New ConnectionInfo
Dim cryRpt As New ReportDocument
Dim crtableLogoninfos As New TableLogOnInfos
Dim crtableLogoninfo As New TableLogOnInfo
Dim CrTables As Tables
Dim CrTable As Table


cryRpt.Load(Application.StartupPath.ToString & "\Reports\Rep_1.rpt")
CrystalReportViewer1.ReportSource = cryRpt
CrTables = cryRpt.Database.Tables

Dim Tedad_Parametr As Integer

cryRpt.SetDatabaseLogon(DatabaseUser, DatabasePass)


cryRpt.RecordSelectionFormula = Text_SelectFormula
Tedad_Parametr = Val(cryRpt.ParameterFields.Count.ToString())

For N = 0 To Tedad_Parametr

If cryRpt.ParameterFields(N).ParameterValueType = ParameterValueKind.NumberParameter Then
cryRpt.SetParameterValue(N, Val(Parameter_PRN(N)))
Else
cryRpt.SetParameterValue(N, Trim(Parameter_PRN(N)))
End If

Next N


crConnectionInfo.ServerName = ServerName
crConnectionInfo.DatabaseName = DatabaseName
crConnectionInfo.UserID = DatabaseUser
crConnectionInfo.Password = DatabasePass


For Each CrTable In CrTables
crtableLogoninfo = CrTable.LogOnInfo
crtableLogoninfo.ConnectionInfo = crConnectionInfo
CrTable.ApplyLogOnInfo(crtableLogoninfo)
crConnectionInfo.IntegratedSecurity = True
crtableLogoninfo.ConnectionInfo = crConnectionInfo
CrTable.ApplyLogOnInfo(crtableLogoninfo)
CrTable.Location.Substring(CrTable.Location.LastIn dexOf(".") + 1)
Next

CrystalReportViewer1.Refresh
CrystalReportViewer1.ReportSource = cryRpt

sehm67
پنج شنبه 12 بهمن 1396, 13:19 عصر
Hamed_R


از نظر بنده کریستال ریپورت از سرعت پایین برخورداره پیشنهاد میکنم از استیمول استفاده کنید از سرعت بالایی برخورداره و امکانات زیادی نسبت ب کریستال داره . تو تالار جستجو کنید و یا تو پستام آموزشش هست

Hamed_R
جمعه 13 بهمن 1396, 20:16 عصر
از نظر بنده کریستال ریپورت از سرعت پایین برخورداره پیشنهاد میکنم از استیمول استفاده کنید از سرعت بالایی برخورداره و امکانات زیادی نسبت ب کریستال داره . تو تالار جستجو کنید و یا تو پستام آموزشش هست

سلام
تمامی گزارشات در کریستال طراحی شدن و چون تعدادشون زیاده شاید زیاد برای تبدیل به Stimul وقت نداشته باشم. با این حال ممنون از راهنماییتون