ورود

View Full Version : درخواست کلمه عبور برای نمایش گزارش در زمان اجرا



omid_Ahmadi
دوشنبه 21 اسفند 1385, 09:46 صبح
سلام،
من برای تهیه یک گزارش از یه جدول در SQL Server 2000، به بانک کانکت می شم و اطلاعات مربوط به لاگین رو هم طبق کد زیر در شیئ مربوط به گزارش قرار می دهم، اما باز هم در زمان اجرا تقاضای کلمه عبور میکنه. چرا؟



CrystalDecisions.Shared.TableLogOnInfo logOnInfo = new CrystalDecisions.Shared.TableLogOnInfo();
logOnInfo.ConnectionInfo.DatabaseName = "CWM";
logOnInfo.ConnectionInfo.ServerName = "CWM";
logOnInfo.ConnectionInfo.Password = "mypass";
logOnInfo.ConnectionInfo.UserID = "CwmDatabase";

this.wfiReport = new Presentation.Reports.WorkersFullInfo();
this.wfiReport.SetDataSource(this.dsWorkersPersona lInfo);

for (Int32 intCounter = 0; intCounter < this.wfiReport.Database.Tables.Count; intCounter++)
{
this.wfiReport.Database.Tables[intCounter].ApplyLogOnInfo(logOnInfo);
}

reza_rad
دوشنبه 21 اسفند 1385, 10:10 صبح
سلام امیدجان.
بعد از اینکه مشخصات بالا رو ست کردی دوباره reportSource و ResourceName رو به گزارشت بایند می کنی یا نه؟

omid_Ahmadi
دوشنبه 21 اسفند 1385, 10:57 صبح
ممنون رضا جان،
من تمام کدی که این گزارش طی میکنه تا نمایش داده بشه رو اینجا نوشتم، حالا چه قسمتهای دیگه ای باید بهش اضافه کنم؟



CrystalDecisions.Shared.TableLogOnInfo logOnInfo = new CrystalDecisions.Shared.TableLogOnInfo();
logOnInfo.ConnectionInfo.DatabaseName = "CWM";
logOnInfo.ConnectionInfo.ServerName = "CWM";
logOnInfo.ConnectionInfo.Password = "mypass";
logOnInfo.ConnectionInfo.UserID = "CwmDatabase";

this.wfiReport = new Presentation.Reports.WorkersFullInfo();
this.wfiReport.SetDataSource(this.dsWorkersPersona lInfo);

for (Int32 intCounter = 0; intCounter < this.wfiReport.Database.Tables.Count; intCounter++)
{
this.wfiReport.Database.Tables[intCounter].ApplyLogOnInfo(logOnInfo);
}

// Insert prepared report object into report viewer object
this.crvReportViewer.ReportSource = this.wfiReport;

reza_rad
دوشنبه 21 اسفند 1385, 11:21 صبح
من هم هین کد رو همیشه استفاده می کنم و البته این خط رو هم باهاش استفاده می کنم:


this.ResourceName=System.Windows.Forms.Application .ExecutablePath;


این باید قبل از خط آخرت اضافه بشه
البته می تونی اول آدرس رو مستقیم بدی ببینی کار می کنه؟

omid_Ahmadi
دوشنبه 21 اسفند 1385, 11:35 صبح
ممنون، تست می کنم و جوابشو می گم، اما فکر کنم طول بکشه، چون باید یه بار دیگه برنامه رو کامپایل کنم و روی یه سیستم دیگه تست کنم. توی محیط طراحی درست جواب می ده، اما توی سیستم نهایی نه..
در هر صورت ممنونم.

reza_rad
سه شنبه 22 اسفند 1385, 07:00 صبح
خواهش می کنم امید جان
امیدوارم حل بشه:)