Click here to Skip to main content
15,922,015 members
Home / Discussions / ASP.NET
   

ASP.NET

 
AnswerRe: Shared calendars ..? Pin
led mike20-Mar-08 4:46
led mike20-Mar-08 4:46 
QuestionReportViewer LocalReport does not render correctly Pin
Member 438223220-Mar-08 4:10
Member 438223220-Mar-08 4:10 
GeneralRe: ReportViewer LocalReport does not render correctly Pin
Paul Conrad21-Mar-08 9:22
professionalPaul Conrad21-Mar-08 9:22 
GeneralRe: ReportViewer LocalReport does not render correctly Pin
Member 438223224-Mar-08 20:06
Member 438223224-Mar-08 20:06 
GeneralRe: ReportViewer LocalReport does not render correctly Pin
Member 438223224-Mar-08 22:19
Member 438223224-Mar-08 22:19 
GeneralRe: ReportViewer LocalReport does not render correctly Pin
Member 438223224-Mar-08 22:21
Member 438223224-Mar-08 22:21 
GeneralRe: ReportViewer LocalReport does not render correctly Pin
Member 438223225-Mar-08 1:40
Member 438223225-Mar-08 1:40 
AnswerRe: ReportViewer LocalReport does not render correctly Pin
Member 438223225-Mar-08 23:30
Member 438223225-Mar-08 23:30 
Finally!

I have used different sources to get my solutions, some of which I got from codeproject.

Here goes:

default.aspx.cs:

protected void btPrint_Click(object sender, EventArgs e)
{
RenderReport();
Response.Redirect("PrinterFriendly.aspx");
}

private void RenderReport()
{
Warning[] warnings;

string deviceInfo =
"<DeviceInfo>" +
" <OutputFormat>EMF</OutputFormat>" +
" <PageWidth>10in</PageWidth>" +
" <PageHeight>13in</PageHeight>" +
" <MarginTop>0.0in</MarginTop>" +
" <MarginLeft>0.0in</MarginLeft>" +
" <MarginRight>0.0in</MarginRight>" +
" <MarginBottom>0.0in</MarginBottom>" +
"</DeviceInfo>";

m_streams = new List<Stream>();
ReportViewer.LocalReport.Render("Image", deviceInfo, CreateStream, out warnings);

Session["MemStreamList"] = (List<Stream>)m_streams;
}
private Stream CreateStream(string name, string fileNameExtension, Encoding encoding, string mimeType, bool willSeek)
{
Guid newid = Guid.NewGuid();
Stream stream = new FileStream(name + newid + "." + fileNameExtension, FileMode.Create);
m_streams.Add(stream);
return stream;
}


printerfriendly.aspx.cs:
protected void Page_Load(object sender, EventArgs e)
{
List<Stream> memList = (List<Stream>)Session["MemStreamList"];

for (int i = 0; i < memList.Count; i++)
{
string imgString = "<img src=\"MultipleImaging.aspx?Index=" + i + "\">";
this.Controls.Add(new LiteralControl(imgString));
}
}

multipleimaging.aspx.cs:

protected void Page_Load(object sender, EventArgs e)
{
if ((Session["MemStreamList"] != null) && Session["MemStreamList"].GetType().Equals(typeof(List<Stream>)))
{
List<Stream> images = (List<Stream>)Session["MemStreamList"];
int index = Int32.Parse(Request.Params.Get(0).ToString());
if (images[index].Length > 0)
{
try
{
System.Drawing.Image image = System.Drawing.Image.FromStream(images[index]);
image.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Gif);
}
catch (Exception ex)
{//Parameter not valid error, ANY HELP HERE WILL BE APPRECIATED, THANKS Smile | :)
//If the same code is executed again it works, please help
System.Drawing.Image image = System.Drawing.Image.FromStream(images[index]);
image.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Gif);
}
}
else
{
//send a default image
}

}
}

Okay, so the above code renders a local report into images, which is saved in a list<stream>. Each stream is a page of the report. Then is redirects it to a printer friendly page which creates an literal image for every item in list<stream> using multipleimaging.aspx. The printerfriendly page contains a print button with btPrint.Attributes.Add("onclick", "javascript:location.reload(true);window.print();"); in page_load.

Hope some one else can find this helpful, please let me know if there is a better/faster way to accomplish client-side printing of a localreport. By the way, does the .net 2008 reportviewer control which does include a printer icon, prints on the server-side or on the client-side?
Questionwhat is an exception Pin
Member 470807720-Mar-08 2:57
Member 470807720-Mar-08 2:57 
GeneralRe: what is an exception Pin
eyeseetee20-Mar-08 3:05
eyeseetee20-Mar-08 3:05 
GeneralRe: what is an exception Pin
N a v a n e e t h20-Mar-08 3:06
N a v a n e e t h20-Mar-08 3:06 
Questionweb and windows Pin
Member 470807720-Mar-08 2:56
Member 470807720-Mar-08 2:56 
GeneralRe: web and windows Pin
eyeseetee20-Mar-08 3:05
eyeseetee20-Mar-08 3:05 
GeneralRe: web and windows Pin
Vasudevan Deepak Kumar20-Mar-08 3:17
Vasudevan Deepak Kumar20-Mar-08 3:17 
GeneralSQL2005 INSERT / IDENTITY help required Pin
munklefish20-Mar-08 2:21
munklefish20-Mar-08 2:21 
GeneralRe: SQL2005 INSERT / IDENTITY help required Pin
Vasudevan Deepak Kumar20-Mar-08 3:19
Vasudevan Deepak Kumar20-Mar-08 3:19 
GeneralGeneral How to get Connection.GetSchema("columns",restrictions) in order by ordinal position Pin
ashish bhakhar20-Mar-08 1:49
ashish bhakhar20-Mar-08 1:49 
GeneralRe: General How to get Connection.GetSchema("columns",restrictions) in order by ordinal position Pin
eyeseetee20-Mar-08 1:56
eyeseetee20-Mar-08 1:56 
QuestionDate Validation ...its very urgent***************************************** Pin
udaymohan20-Mar-08 1:05
udaymohan20-Mar-08 1:05 
GeneralRe: Date Validation ...its very urgent***************************************** Pin
Not Active20-Mar-08 1:07
mentorNot Active20-Mar-08 1:07 
GeneralRe: Date Validation ...its very urgent***************************************** Pin
eyeseetee20-Mar-08 1:16
eyeseetee20-Mar-08 1:16 
GeneralRe: Date Validation ...its very urgent***************************************** Pin
udaymohan20-Mar-08 1:23
udaymohan20-Mar-08 1:23 
GeneralRe: Date Validation ...its very urgent***************************************** Pin
eyeseetee20-Mar-08 1:30
eyeseetee20-Mar-08 1:30 
AnswerRe: Date Validation ...its very urgent* Pin
rahul.net1120-Mar-08 1:38
rahul.net1120-Mar-08 1:38 
GeneralRe: Date Validation ...its very urgent***************************************** Pin
Vasudevan Deepak Kumar20-Mar-08 3:20
Vasudevan Deepak Kumar20-Mar-08 3:20 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.