เขียน config การเชื่อมต่อฐานข้อมูลสำหรับ crystal report [ASP.NET]


การเขียน config แบบนี้จะเพิ่มความสะดวกในการเปลี่ยน config สำหรับติดต่อฐานข้อมูล เช่น ในกรณีที่ต้องมีการเปลี่ยน username password หรือ default database จะสามารถเปลี่ยนได้จากทีเดียวไม่ต้องไล่แก้ code behind ของ report ทุกตัว

ขั้นตอนก็คือ

  • เพิ่ม <appSettings> เข้าไปในไฟล์ web.config โดยอยู่ภายใน <configuration>
<configuration>
...
<appSettings>
<add key="CrystalImageCleaner-AutoStart" value="true"/>
<add key="CrystalImageCleaner-Sleep" value="60000"/>
<add key="CrystalImageCleaner-Age" value="120000"/>
<add key="ChartImageHandler" value="storage=file;timeout=20;dir=c:\TempImageFiles\;"/>
<add key="CrystalServer" value="ODBC_CONNECTION_NAME" />
<add key="CrystalDatabase" value="DATABASE_NAME" />
<add key="CrystalUser" value="USERNAME" />
<add key="CrystalPassword" value="PASSWORD" />
</appSettings>
..
</configuration>

โดยแก้ไข ODBC_CONNECTION_NAME, DATABASE_NAME, USERNAME, PASSWORD ให้ตรงกับที่เราต้องการใช้งาน

  •  การเรียกใช้งาน

ใน code behind ของ page ที่เรียก crystal report นั้นจะเรียกใช้งานดังนี้

CrystalDecisions.CrystalReports.Engine.ReportDocument rpt = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
rpt.Load(Server.MapPath("../../Report/PrintFinalReport.rpt"));
ConnectionInfo crConnectionInfo = new ConnectionInfo();
crConnectionInfo.ServerName = ConfigurationManager.AppSettings["CrystalServer"].ToString();
crConnectionInfo.DatabaseName = ConfigurationManager.AppSettings["CrystalDatabase"].ToString();
crConnectionInfo.UserID = ConfigurationManager.AppSettings["CrystalUser"].ToString();
crConnectionInfo.Password = ConfigurationManager.AppSettings["CrystalPassword"].ToString();

ติดป้ายกำกับ:,

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s

%d bloggers like this: