how can i display crystal report in button_click? am
working with VS2005..........plz help me



how can i display crystal report in button_click? am working with VS2005..........plz help me..

Answer / v

protected void Page_Load(object sender, EventArgs e)
{

_ControlId = Request["ControlId"];

CrystalDecisions.CrystalReports.Engine.Database
crDatabase;
CrystalDecisions.CrystalReports.Engine.Table
crTable;

TableLogOnInfo dbConn = new TableLogOnInfo();

_oRpt = new ReportDocument();

// loading the ItemReport in report document
_oRpt.Load(Server.MapPath("~\\reports") + "\\"
+ "RepsAndWar.rpt");

// getting the database, the table and the
LogOnInfo object which holds login information
crDatabase = _oRpt.Database;

// getting the table in an object array of one item
object[] arrTables = new object[1];
crDatabase.Tables.CopyTo(arrTables, 0);

// assigning the first item of array to crTable by
downcasting the object to Table
crTable =
(CrystalDecisions.CrystalReports.Engine.Table)arrTables[0];

dbConn = crTable.LogOnInfo;

// setting values
parseConnString(Settings.CnxBackShop);
dbConn.ConnectionInfo.ServerName = _ServerName;
dbConn.ConnectionInfo.DatabaseName =
_DatabaseName;
dbConn.ConnectionInfo.UserID = _UserID;
dbConn.ConnectionInfo.Password = _Password;



// applying login info to the table object
crTable.ApplyLogOnInfo(dbConn);

crTable.Location =
dbConn.ConnectionInfo.DatabaseName + ".dbo." +
crTable.Location.Substring(crTable.Location.LastIndexOf
(".") + 1);
crTable.LogOnInfo.ConnectionInfo.ServerName =
dbConn.ConnectionInfo.ServerName;


// defining report source
CrystalReportViewer1.ReportSource = _oRpt;

setReportParameters();


}

private void setReportParameters()
{
// all the parameter fields will be added to this
collection
ParameterFields paramFields = new ParameterFields();

// the parameter fields to be sent to the report
ParameterField pfControlId = new ParameterField();

// setting the name of parameter fields with wich
they will be recieved in report
pfControlId.ParameterFieldName = "@ControlId";

// the above declared parameter fields accept
values as discrete objects
// so declaring discrete objects
ParameterDiscreteValue dc_ControlId = new
ParameterDiscreteValue();

// setting the values of discrete objects
dc_ControlId.Value = _ControlId;

// now adding these discrete values to parameters
pfControlId.CurrentValues.Add(dc_ControlId);

// now adding all these parameter fields to the
parameter collection
paramFields.Add(pfControlId);

// finally add the parameter collection to the
crystal report viewer
CrystalReportViewer1.ParameterFieldInfo =
paramFields;
}

protected void btnExport_Click(object sender, EventArgs e)
{
MemoryStream oStream;
oStream = (MemoryStream)_oRpt.ExportToStream
(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat)
;
Response.Clear();
Response.Buffer = true;
Response.ContentType = "application/pdf";
Response.BinaryWrite(oStream.ToArray());
Response.End();

}

Is This Answer Correct ?    0 Yes 0 No

Post New Answer

More C Sharp Interview Questions

Why do we use overloading in c#?

0 Answers  


If you want to convert a base type to a derived type, what type of conversion do you use?

0 Answers  


Explain the role of Garbage collector and its generations?

0 Answers   MCN Solutions,


What is difference between list and dictionary in c#?

0 Answers  


How do I format a string in c#?

0 Answers  






An abstract class is inherited, an Interface also inherited(multiple inheritance), How it differences.

6 Answers   Synechron,


What is string concatenation?

0 Answers  


How to use session under class file of APP_Code folder?

0 Answers   ADITI,


What's c# ?

0 Answers  


Is Multiple-inheritance supported by c#?

0 Answers   Siebel,


Explain more on CLR

0 Answers  


what is the difference between finally and dispose methods?

3 Answers   HCL, Patni,


Categories