<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx</link><description>Summary: Learn a technique for printing reports programmatically using the Reporting Services XML Web service and C#. Microsoft SQL Server 2000 Reporting Services is Microsoft's latest entry into the Business Intellegence marketplace and it joins a host</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Printing Reports in Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#71538</link><pubDate>Thu, 12 Feb 2004 01:15:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:71538</guid><dc:creator>Bryan's WebLog</dc:creator><description /></item><item><title>Items of interest</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#71957</link><pubDate>Thu, 12 Feb 2004 21:28:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:71957</guid><dc:creator>Random Thoughts of Jorriss</dc:creator><description /></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#72023</link><pubDate>Thu, 12 Feb 2004 19:51:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:72023</guid><dc:creator>chadb</dc:creator><description>good stuff! keep up the good work...</description></item><item><title>Printing Reports in Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#72764</link><pubDate>Sat, 14 Feb 2004 03:42:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:72764</guid><dc:creator>Bryan's WebLog</dc:creator><description /></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#95045</link><pubDate>Wed, 24 Mar 2004 04:29:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:95045</guid><dc:creator>Sameer</dc:creator><description>Hi,&lt;br&gt;Thanks for this article...&lt;br&gt;&lt;br&gt;But it is not working, When I call, &amp;quot;pd.Print&amp;quot;. &lt;br&gt;I am getting following exception.. &amp;quot;A null context handle was passed from the client to the host during a remote procedure call&amp;quot;&lt;br&gt;&lt;br&gt;The only change is I am printing from Web application and not through console application...&lt;br&gt;&lt;br&gt;Can you pls help ?&lt;br&gt;&lt;br&gt;</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#105925</link><pubDate>Thu, 01 Apr 2004 21:56:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:105925</guid><dc:creator>Keith Walton</dc:creator><description>Thinks for the article, it was very helpful.&lt;br&gt;&lt;br&gt;In order to get this code to print my report page the correct size, I had to make the following minor change:&lt;br&gt;&lt;br&gt;&amp;lt;code&amp;gt;&lt;br&gt;// Draw in the rectangle&lt;br&gt;Point[] points = new Point[3];&lt;br&gt;Point destPoint = new Point(0, 0);&lt;br&gt;Point destPoint1 = new Point(width, 0);&lt;br&gt;Point destPoint2 = new Point(0, height);&lt;br&gt;&lt;br&gt;points[0]=destPoint;&lt;br&gt;points[1]=destPoint1;&lt;br&gt;points[2]=destPoint2;&lt;br&gt;&lt;br&gt;g.EnumerateMetafile(m_metafile,points, m_delegate);&lt;br&gt;&amp;lt;/code&amp;gt;&lt;br&gt;&lt;br&gt;I think you were heading in this direction, since you had already declared the width and height variables.&lt;br&gt;&lt;br&gt;Thanks,&lt;br&gt;Keith Walton&lt;br&gt;NHXS</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#106372</link><pubDate>Fri, 02 Apr 2004 14:05:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:106372</guid><dc:creator>LesioS</dc:creator><description>Works fine.... Almost :(&lt;br&gt;Your code is working, but when I'd like to print report as landscape I've some problems. I've informed deviceinfo that paper size is 11.25in*8.25in (A4 in landscape) and Render generates report in landscape (in fact it renders it to 6 pages when 2 would be enough). Printer prints it on portait pages inspite of setting printerSettings.DefaultPageSettings.Landscape = true;</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#106465</link><pubDate>Fri, 02 Apr 2004 15:34:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:106465</guid><dc:creator>Bryan Keller</dc:creator><description>Okay, so this is my multiple help post. Here we go:&lt;br&gt;&lt;br&gt;Sameer,&lt;br&gt;&lt;br&gt;Did you set impersonate=true in your ASP.NET client app Web.config? Where does your client app live?&lt;br&gt;&lt;br&gt;Keith,&lt;br&gt;&lt;br&gt;Thanks for the heads up. I will do some additional testing and post your fix if it all checks out. Thanks again.&lt;br&gt;&lt;br&gt;Lesio,&lt;br&gt;Did you see Keith's post? Did you set up your printer settings as well as the render size and width. If you are familiar with the actual devmode structure for the Win32 API that is the underlying API for PrintDocument, you will notice that you should not set width and height, rather simply orientation. Does your orientation match the render width/height and does your report size that you defined in the RDL also match A4?&lt;br&gt;&lt;br&gt;Okay, let me know.</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#106480</link><pubDate>Fri, 02 Apr 2004 15:59:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:106480</guid><dc:creator>Jen Rubin</dc:creator><description>Do you have a similar example for VB.NET, or can you direct me to a source that does?&lt;br&gt;Thank you.</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#107607</link><pubDate>Mon, 05 Apr 2004 08:45:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:107607</guid><dc:creator>LesioS</dc:creator><description>Yes, I saw it... I've to add explicite size of page in deviceInfo definition, cause without it I was receiving page size as portarait in ReportDrawPage function &amp;amp; Keith's ammandement with Points in fact didn't work. When I added all this things &amp;amp; set printer default orientation into landscape then report is printing properly.</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#107894</link><pubDate>Mon, 05 Apr 2004 18:46:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:107894</guid><dc:creator>Aniruddha</dc:creator><description>I tested your code its working fine with Format type &amp;quot;IMAGE&amp;quot;. Any idea how to make this run for other formats like CSV,XML,PDF?&lt;br&gt;Any help in this regard is greatly appreciated. &lt;br&gt;Pl. contact me at c-ashinde@state.pa.us&lt;br&gt;</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#110071</link><pubDate>Thu, 08 Apr 2004 21:16:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:110071</guid><dc:creator>Keith Walton</dc:creator><description>I had to make a few more modifications to get this code to print my report the correct size. I am creating reports that populate preprinted forms, so the position of fields is very important.&lt;br&gt;&lt;br&gt;After some trial and error, I discovered that both the report designer print functionality and this code were by default printing my report relative to the printable area of the page. For example, my printer cannot print beyond .25 inches on the right and left edges. If I place a text box .25 inches from the left edge of my report (which has margins is set to zero) the text box will display approximately .5 inches from the edge. Also, the whole report is being scaled down to print within the printable area. If I place several lines on a report that are exactly one inch apart, when printed they will be less than one inch apart.&lt;br&gt;&lt;br&gt;To correct this, I first had to instruct the printer to print relative to the edge of the paper instead of the edge of the printable area.&lt;br&gt;&lt;br&gt;(vb.net code)&lt;br&gt;pd.OriginAtMargins = True&lt;br&gt;pd.DefaultPageSettings.Margins = New Printing.Margins(0, 0, 0, 0)&lt;br&gt;&lt;br&gt;Then, to correct for the report being scaled down I had to implement this kluge in ReportDrawPage:&lt;br&gt;&lt;br&gt;Dim destPoint1 As Point = New Point(0, 0)&lt;br&gt;Dim destPoint2 As Point = New Point(859, 0)&lt;br&gt;Dim destPoint3 As Point = New Point(0, 1118)&lt;br&gt;&lt;br&gt;These values indicate 1/100 of an inch, so I have to render the image to the page as though it is larger than it really is.&lt;br&gt;&lt;br&gt;These changes print my portrait reports very precisely, but there has to be a better way to do this.&lt;br&gt;&lt;br&gt;Any ideas?&lt;br&gt;&lt;br&gt;Thanks</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#113715</link><pubDate>Thu, 15 Apr 2004 08:33:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:113715</guid><dc:creator>Zam</dc:creator><description>Hi,&lt;br&gt;&lt;br&gt;I'm fairly new to these stuff... How do I set the report parameters in this example?&lt;br&gt;&lt;br&gt;Thanks</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#118987</link><pubDate>Fri, 23 Apr 2004 16:39:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:118987</guid><dc:creator>Amy</dc:creator><description>Zam,&lt;br&gt;&lt;br&gt;I'm also learning this. The following seems helpful.&lt;br&gt;&lt;br&gt;&lt;a target="_new" href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/RSPROG/htm/rsp_ref_soapapi_service_lz_6x0z.asp"&gt;http://msdn.microsoft.com/library/default.asp?url=/library/en-us/RSPROG/htm/rsp_ref_soapapi_service_lz_6x0z.asp&lt;/a&gt;</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#120250</link><pubDate>Mon, 26 Apr 2004 15:07:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:120250</guid><dc:creator>GB</dc:creator><description>it works fine!&lt;br&gt;How to get orientation from rdl definition?</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#120264</link><pubDate>Mon, 26 Apr 2004 15:25:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:120264</guid><dc:creator>Bryan Keller</dc:creator><description>You will have to read the PageHeight and PageWidth elements of the report defintion to determine orientation.</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#121955</link><pubDate>Wed, 28 Apr 2004 10:41:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:121955</guid><dc:creator>GB</dc:creator><description>Fine. &lt;br&gt;Here is the source I'm using (not too clean, anyway it works!)&lt;br&gt;&lt;br&gt;public bool isLandscape(string reportName)&lt;br&gt;{&lt;br&gt;string rdl;&lt;br&gt;string sheight = &amp;quot;&amp;quot;, swidth = &amp;quot;&amp;quot;;&lt;br&gt;byte[] reportDefinition = null;&lt;br&gt;double Height;&lt;br&gt;double Width;&lt;br&gt;System.Xml.XmlDocument doc = new System.Xml.XmlDocument();&lt;br&gt;&lt;br&gt;reportDefinition = rs.GetReportDefinition(reportName);&lt;br&gt;System.Text.UTF8Encoding enc = new System.Text.UTF8Encoding();&lt;br&gt;rdl = enc.GetString(reportDefinition);&lt;br&gt;doc.LoadXml(rdl);&lt;br&gt;XmlNodeList elemList = doc.GetElementsByTagName (&amp;quot;PageHeight&amp;quot;);&lt;br&gt;&lt;br&gt;int i;&lt;br&gt;for (i = 0 ; i&amp;lt;elemList[0].InnerXml.Length; i++) &lt;br&gt;{&lt;br&gt;	if ((elemList[0].InnerXml[i] &amp;gt;= '0' &amp;amp;&amp;amp; elemList[0].InnerXml[i] &amp;lt;= '9')|| elemList[0].InnerXml[i] &amp;lt;= '.'  ) &lt;br&gt;	{&lt;br&gt;	//=  elemList[0].InnerXml[i];&lt;br&gt;	}&lt;br&gt;	else { break; }&lt;br&gt;}&lt;br&gt;sheight= elemList[0].InnerXml.Substring(0,i); &lt;br&gt;Height = Convert.ToDouble (sheight);&lt;br&gt;&lt;br&gt;elemList =  doc.GetElementsByTagName (&amp;quot;PageWidth&amp;quot;);&lt;br&gt;for (i = 0 ; i&amp;lt;elemList[0].InnerXml.Length;i++) &lt;br&gt;{&lt;br&gt;	if ((elemList[0].InnerXml[i] &amp;gt;= '0' &amp;amp;&amp;amp; elemList[0].InnerXml[i] &amp;lt;= '9')|| elemList[0].InnerXml[i] &amp;lt;= '.'  ) &lt;br&gt;	{	&lt;br&gt;	}					else { break; }&lt;br&gt;}&lt;br&gt;swidth= elemList[0].InnerXml.Substring(0,i); &lt;br&gt;swidth= swidth.Replace (&amp;quot;.&amp;quot;,&amp;quot;,&amp;quot;);&lt;br&gt;Width = Convert.ToDouble (swidth);&lt;br&gt;	&lt;br&gt;if (Height &amp;lt; Width)&lt;br&gt;{&lt;br&gt;	return true;&lt;br&gt;}&lt;br&gt;else&lt;br&gt;{&lt;br&gt;	return false;&lt;br&gt;}&lt;br&gt;}&lt;br&gt;&lt;br&gt;</description></item><item><title>SQL Server Reporting Services Printing? What's the go!</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#140829</link><pubDate>Tue, 25 May 2004 04:25:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:140829</guid><dc:creator>Justin King's Rant::Blog</dc:creator><description /></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#145647</link><pubDate>Tue, 01 Jun 2004 18:28:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145647</guid><dc:creator>RBisch</dc:creator><description>As asked before, how can you stream a PDF type to the printer ?&lt;br&gt;&lt;br&gt;Thanks.</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#152481</link><pubDate>Thu, 10 Jun 2004 10:26:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:152481</guid><dc:creator>Alexandru Mihai</dc:creator><description>It works great. I'm using it from ASP.NET. One problem: I would like not to go to a default printer that I already know, but at the press of a print button to spawn the Internet Explorer print dialog...&lt;br&gt;Is this possible?&lt;br&gt;Thanks</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#153598</link><pubDate>Fri, 11 Jun 2004 15:51:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:153598</guid><dc:creator>RBisch</dc:creator><description>Note: Anything relating to size is referencing the size of an .emf (image type) file.&lt;br&gt;&lt;br&gt;The ability to do this is great!  However, I was concerned about the size of the .emf in the sample report used in the code above, a whopping 1,621 KB.  This is significant if you want to stream across a network, considering the report was only 1 page and has potential to get very large.  The sample report used background images which is why I think it was so big.  I created a simple 1 page report and it was 31 KB (.emf) which relieved me.&lt;br&gt;&lt;br&gt;However, I am concerned with the variations in size between these 2 reports, both being 1 page long, but drastically different in size.&lt;br&gt;Do I need to keep my reports simple, or just avoid using a repeating background image ?  I have no in-depth knowledge about .emf and what determines thier size, but I need to use them as it is an excellent windows format for printing.&lt;br&gt;&lt;br&gt;Best Regards.</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#155017</link><pubDate>Mon, 14 Jun 2004 10:22:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:155017</guid><dc:creator>Vik</dc:creator><description>I'm printing using a method similar to the above using an EMF image, I display the report in a printpreview control and it looks fine however when printing to the printer the report is cropped to about 75%.  All works fine if i use reporting services installed locally instead of on the win2k server.</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#159329</link><pubDate>Fri, 18 Jun 2004 15:50:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:159329</guid><dc:creator>A better Option, Print From a Pdf File</dc:creator><description>We have been working with the posted example, and we think is much easier render to a Guid named File and Print it in background using the adobe ActiveX.&lt;br&gt;I put here the two necesary forms, it isn&amp;#180;t finished however i think is a really easier way.&lt;br&gt;&lt;br&gt;#Region &amp;quot;Summary&amp;quot;&lt;br&gt;''' ============================================================================&lt;br&gt;''' AUTOR		   : alias &lt;br&gt;''' FECHA DE CREACION  : 5 Nov 2004 &lt;br&gt;''' PROPOSITO	   : &lt;br&gt;''' NOTAS		   : &lt;br&gt;''' NOMBRE DEL FICHERO : $Workfile: $	&lt;br&gt;''' VSS ARCHIVE	 : $Archive: $&lt;br&gt;''' VERSION		 : $Revision: $&lt;br&gt;'''&lt;br&gt;''' (c) 2004 DTI GRUPO FCC&lt;br&gt;''' ===========================================================================&lt;br&gt;''' $History: $&lt;br&gt;'''	&lt;br&gt;'''&lt;br&gt;''' ============================================================================&lt;br&gt;&lt;br&gt;#Region &amp;quot;QA Status&amp;quot;&lt;br&gt;#Region &amp;quot;Review History&amp;quot;&lt;br&gt;''' ============================================================================&lt;br&gt;''' CODE STATUS	: REVIEWED {NOT REVIEWED | REVIEWED}&lt;br&gt;'''&lt;br&gt;''' ============================================================================&lt;br&gt;'''	REVIEW HISTORY&lt;br&gt;''' ---------------------------------------------------------------------------&lt;br&gt;''' DATE		| NAME			| COMMENTS&lt;br&gt;''' ---------------------------------------------------------------------------&lt;br&gt;''' 4 Aug 2002	 jsmith			Conformed to coding standards&lt;br&gt;'''&lt;br&gt;''' ============================================================================&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#Region &amp;quot;Known Issues and Limitations&amp;quot;&lt;br&gt;''' ============================================================================&lt;br&gt;''' DATE		: 4 Aug 2002&lt;br&gt;''' NAME		: bsmith &lt;br&gt;''' METHOD NAME	: Foo()&lt;br&gt;''' DESCRIPTION	: Looping is quite inefficient. Should be revisited and &lt;br&gt;'''			 improved.&lt;br&gt;'''&lt;br&gt;'''----------------------------------------------------------------------------&lt;br&gt;''' DATE		: 5 Aug 2002&lt;br&gt;''' NAME		: patcoleman&lt;br&gt;''' METHOD NAME	: Goo()&lt;br&gt;''' DESCRIPTION	: Refer to DefectList.Doc under section &amp;quot;Goo() Defects&amp;quot;.&lt;br&gt;'''&lt;br&gt;''' ============================================================================&lt;br&gt;#End Region&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#Region &amp;quot;.NET Base Class Namespace Imports&amp;quot;&lt;br&gt;&lt;br&gt;Imports System.IO&lt;br&gt;Imports ResportingServiceViewer.ReportServer&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;Public Class ReportManager&lt;br&gt;    Inherits System.Windows.Forms.Form&lt;br&gt;&lt;br&gt;#Region &amp;quot; C&amp;#243;digo generado por el Dise&amp;#241;ador de Windows Forms &amp;quot;&lt;br&gt;&lt;br&gt;    Public Sub New()&lt;br&gt;        MyBase.New()&lt;br&gt;&lt;br&gt;        'El Dise&amp;#241;ador de Windows Forms requiere esta llamada.&lt;br&gt;        InitializeComponent()&lt;br&gt;&lt;br&gt;        'Agregar cualquier inicializaci&amp;#243;n despu&amp;#233;s de la llamada a InitializeComponent()&lt;br&gt;&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;    'Form reemplaza a Dispose para limpiar la lista de componentes.&lt;br&gt;    Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)&lt;br&gt;        If disposing Then&lt;br&gt;            If Not (components Is Nothing) Then&lt;br&gt;                components.Dispose()&lt;br&gt;            End If&lt;br&gt;        End If&lt;br&gt;        MyBase.Dispose(disposing)&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;    'Requerido por el Dise&amp;#241;ador de Windows Forms&lt;br&gt;    Private components As System.ComponentModel.IContainer&lt;br&gt;&lt;br&gt;    'NOTA: el Dise&amp;#241;ador de Windows Forms requiere el siguiente procedimiento&lt;br&gt;    'Puede modificarse utilizando el Dise&amp;#241;ador de Windows Forms. &lt;br&gt;    'No lo modifique con el editor de c&amp;#243;digo.&lt;br&gt;    Friend WithEvents cmbFormato As System.Windows.Forms.ComboBox&lt;br&gt;    Friend WithEvents sfdArchivoGuardado As System.Windows.Forms.SaveFileDialog&lt;br&gt;    Friend WithEvents cmbReports As System.Windows.Forms.ComboBox&lt;br&gt;    Friend WithEvents btnExportar As System.Windows.Forms.Button&lt;br&gt;    Friend WithEvents btnImprimir As System.Windows.Forms.Button&lt;br&gt;    Friend WithEvents btnVerWeb As System.Windows.Forms.Button&lt;br&gt;    Friend WithEvents btnVerPdf As System.Windows.Forms.Button&lt;br&gt;    &amp;lt;System.Diagnostics.DebuggerStepThrough()&amp;gt; Private Sub InitializeComponent()&lt;br&gt;        Me.cmbFormato = New System.Windows.Forms.ComboBox&lt;br&gt;        Me.btnExportar = New System.Windows.Forms.Button&lt;br&gt;        Me.btnImprimir = New System.Windows.Forms.Button&lt;br&gt;        Me.btnVerWeb = New System.Windows.Forms.Button&lt;br&gt;        Me.sfdArchivoGuardado = New System.Windows.Forms.SaveFileDialog&lt;br&gt;        Me.cmbReports = New System.Windows.Forms.ComboBox&lt;br&gt;        Me.btnVerPdf = New System.Windows.Forms.Button&lt;br&gt;        Me.SuspendLayout()&lt;br&gt;        '&lt;br&gt;        'cmbFormato&lt;br&gt;        '&lt;br&gt;        Me.cmbFormato.Items.AddRange(New Object() {&amp;quot;PDF&amp;quot;, &amp;quot;EXCEL&amp;quot;, &amp;quot;IMAGE&amp;quot;, &amp;quot;MHTML&amp;quot;})&lt;br&gt;        Me.cmbFormato.Location = New System.Drawing.Point(8, 8)&lt;br&gt;        Me.cmbFormato.Name = &amp;quot;cmbFormato&amp;quot;&lt;br&gt;        Me.cmbFormato.Size = New System.Drawing.Size(64, 21)&lt;br&gt;        Me.cmbFormato.TabIndex = 25&lt;br&gt;        Me.cmbFormato.Text = &amp;quot;PDF&amp;quot;&lt;br&gt;        '&lt;br&gt;        'btnExportar&lt;br&gt;        '&lt;br&gt;        Me.btnExportar.Location = New System.Drawing.Point(8, 32)&lt;br&gt;        Me.btnExportar.Name = &amp;quot;btnExportar&amp;quot;&lt;br&gt;        Me.btnExportar.Size = New System.Drawing.Size(72, 23)&lt;br&gt;        Me.btnExportar.TabIndex = 26&lt;br&gt;        Me.btnExportar.Text = &amp;quot;Exportar&amp;quot;&lt;br&gt;        '&lt;br&gt;        'btnImprimir&lt;br&gt;        '&lt;br&gt;        Me.btnImprimir.Location = New System.Drawing.Point(8, 64)&lt;br&gt;        Me.btnImprimir.Name = &amp;quot;btnImprimir&amp;quot;&lt;br&gt;        Me.btnImprimir.Size = New System.Drawing.Size(72, 23)&lt;br&gt;        Me.btnImprimir.TabIndex = 27&lt;br&gt;        Me.btnImprimir.Text = &amp;quot;Imprimir&amp;quot;&lt;br&gt;        '&lt;br&gt;        'btnVerWeb&lt;br&gt;        '&lt;br&gt;        Me.btnVerWeb.Location = New System.Drawing.Point(88, 32)&lt;br&gt;        Me.btnVerWeb.Name = &amp;quot;btnVerWeb&amp;quot;&lt;br&gt;        Me.btnVerWeb.Size = New System.Drawing.Size(144, 23)&lt;br&gt;        Me.btnVerWeb.TabIndex = 22&lt;br&gt;        Me.btnVerWeb.Text = &amp;quot;Ver Parametrizable&amp;quot;&lt;br&gt;        '&lt;br&gt;        'cmbReports&lt;br&gt;        '&lt;br&gt;        Me.cmbReports.Items.AddRange(New Object() {&amp;quot;rptBriProducts&amp;quot;, &amp;quot;rptBriRegions&amp;quot;, &amp;quot;rptBriEmpleadosParametros&amp;quot;, &amp;quot;rptBriTerritoriosParametros&amp;quot;})&lt;br&gt;        Me.cmbReports.Location = New System.Drawing.Point(88, 8)&lt;br&gt;        Me.cmbReports.Name = &amp;quot;cmbReports&amp;quot;&lt;br&gt;        Me.cmbReports.Size = New System.Drawing.Size(144, 21)&lt;br&gt;        Me.cmbReports.TabIndex = 28&lt;br&gt;        Me.cmbReports.Text = &amp;quot;Selecione Un Report&amp;quot;&lt;br&gt;        '&lt;br&gt;        'btnVerPdf&lt;br&gt;        '&lt;br&gt;        Me.btnVerPdf.Location = New System.Drawing.Point(88, 64)&lt;br&gt;        Me.btnVerPdf.Name = &amp;quot;btnVerPdf&amp;quot;&lt;br&gt;        Me.btnVerPdf.Size = New System.Drawing.Size(144, 23)&lt;br&gt;        Me.btnVerPdf.TabIndex = 29&lt;br&gt;        Me.btnVerPdf.Text = &amp;quot;Ver Como Pdf&amp;quot;&lt;br&gt;        '&lt;br&gt;        'ReportManager&lt;br&gt;        '&lt;br&gt;        Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)&lt;br&gt;        Me.ClientSize = New System.Drawing.Size(248, 102)&lt;br&gt;        Me.Controls.Add(Me.btnVerPdf)&lt;br&gt;        Me.Controls.Add(Me.cmbReports)&lt;br&gt;        Me.Controls.Add(Me.btnImprimir)&lt;br&gt;        Me.Controls.Add(Me.btnExportar)&lt;br&gt;        Me.Controls.Add(Me.cmbFormato)&lt;br&gt;        Me.Controls.Add(Me.btnVerWeb)&lt;br&gt;        Me.Name = &amp;quot;ReportManager&amp;quot;&lt;br&gt;        Me.Text = &amp;quot;Report Manager&amp;quot;&lt;br&gt;        Me.ResumeLayout(False)&lt;br&gt;&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#Region &amp;quot;Variables Miembro, Constantes y Enumeraciones de la Clase&amp;quot;&lt;br&gt;&lt;br&gt;#Region &amp;quot;Constantes Privadas&amp;quot;&lt;br&gt;    Private Const _PDF As String = &amp;quot;PDF file (*.pdf)|*.pdf&amp;quot;&lt;br&gt;    Private Const _IMAGE As String = &amp;quot;Tiff file (*.tif)|*.tif&amp;quot;&lt;br&gt;    Private Const _MHTML As String = &amp;quot;Web Page, single file (*.mhtml)|*.mhtml&amp;quot;&lt;br&gt;    Private Const _EXCEL As String = &amp;quot;Microsoft Excel Workbook (*.xls)|*.xls&amp;quot;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#Region &amp;quot;Variables Privadas&amp;quot;&lt;br&gt;&lt;br&gt;    Private rs As ReportServer.ReportingService&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#Region &amp;quot;Propiedades Internal/Protected/Public&amp;quot;&lt;br&gt;&lt;br&gt;    Private _NombreReport As String&lt;br&gt;    Property NombreReport() As String&lt;br&gt;        Get&lt;br&gt;            Return _NombreReport&lt;br&gt;        End Get&lt;br&gt;        Set(ByVal Value As String)&lt;br&gt;            _NombreReport = Value&lt;br&gt;        End Set&lt;br&gt;    End Property&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#Region &amp;quot;Metodos Internal/Protected/Private/Public&amp;quot;&lt;br&gt;&lt;br&gt;#Region &amp;quot;Metodos Privados&amp;quot;&lt;br&gt;&lt;br&gt;    Private Sub ExportaReport(ByVal NombreArchivo As String)&lt;br&gt;&lt;br&gt;        rs = New ReportingService&lt;br&gt;        rs.Credentials = System.Net.CredentialCache.DefaultCredentials&lt;br&gt;        rs.Url = &amp;quot;&lt;a target="_new" href="http://localhost/ReportServer/ReportService.asmx&amp;quot;"&gt;http://localhost/ReportServer/ReportService.asmx&amp;quot;&lt;/a&gt;&lt;br&gt;&lt;br&gt;        Dim historyID As String = Nothing&lt;br&gt;        Dim credentials As DataSourceCredentials() = Nothing&lt;br&gt;&lt;br&gt;        Dim forRendering As Boolean = False&lt;br&gt;&lt;br&gt;        Dim parametros As ReportParameter() = Nothing&lt;br&gt;        Dim reportHistoryParameters As ParameterValue() = Nothing&lt;br&gt;&lt;br&gt;        Try&lt;br&gt;            parametros = rs.GetReportParameters(PathFichero(), historyID, forRendering, reportHistoryParameters, credentials)&lt;br&gt;&lt;br&gt;            Dim ParametersValue(parametros.GetLength(0) - 1) As ParameterValue&lt;br&gt;            Dim i As Integer = 0&lt;br&gt;            Dim parameter As ReportParameter&lt;br&gt;&lt;br&gt;            For Each parameter In parametros&lt;br&gt;                Dim pp As PideParametros&lt;br&gt;                pp = New PideParametros(parameter)&lt;br&gt;                pp.ShowDialog(Me)&lt;br&gt;                ParametersValue(i) = New ParameterValue&lt;br&gt;                ParametersValue(i).Name = pp.ParaValue.Name&lt;br&gt;                ParametersValue(i).Value = pp.ParaValue.Value&lt;br&gt;                i = i + 1&lt;br&gt;            Next parameter&lt;br&gt;&lt;br&gt;            Dim deviceInfo As String = Nothing&lt;br&gt;            Dim format As String = cmbFormato.Text&lt;br&gt;            Dim showHide As String = Nothing&lt;br&gt;&lt;br&gt;            Dim results() As [Byte]&lt;br&gt;            Dim encoding As String&lt;br&gt;            Dim mimeType As String&lt;br&gt;            Dim warnings As Warning() = Nothing&lt;br&gt;            Dim streamIDs As String() = Nothing&lt;br&gt;&lt;br&gt;&lt;br&gt;            Try&lt;br&gt;                results = rs.Render(PathFichero, format, historyID, deviceInfo, ParametersValue, credentials, showHide, encoding, mimeType, ParametersValue, warnings, streamIDs)&lt;br&gt;&lt;br&gt;                Dim stream As FileStream = File.OpenWrite(NombreArchivo)&lt;br&gt;                stream.Write(results, 0, results.Length)&lt;br&gt;                stream.Close()&lt;br&gt;&lt;br&gt;            Catch exception As Exception&lt;br&gt;                MsgBox(&amp;quot;Error: &amp;quot; &amp;amp; exception.ToString())&lt;br&gt;            End Try&lt;br&gt;&lt;br&gt;        Catch ex As Exception&lt;br&gt;            MsgBox(&amp;quot;Error: &amp;quot; &amp;amp; ex.ToString())&lt;br&gt;        End Try&lt;br&gt;&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;    Private Function GetFiltro() As String&lt;br&gt;        Select Case cmbFormato.Text&lt;br&gt;            Case &amp;quot;MHTML&amp;quot;&lt;br&gt;                Return _MHTML&lt;br&gt;            Case &amp;quot;PDF&amp;quot;&lt;br&gt;                Return _PDF&lt;br&gt;            Case &amp;quot;IMAGE&amp;quot;&lt;br&gt;                Return _IMAGE&lt;br&gt;            Case &amp;quot;EXCEL&amp;quot;&lt;br&gt;                Return _EXCEL&lt;br&gt;            Case Else&lt;br&gt;                Return &amp;quot;&amp;quot;&lt;br&gt;        End Select&lt;br&gt;    End Function&lt;br&gt;&lt;br&gt;    Private Function PathFichero() As String&lt;br&gt;        Return &amp;quot;/BriReports/&amp;quot; &amp;amp; _NombreReport&lt;br&gt;    End Function&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#Region &amp;quot;Metodos P&amp;#250;blicos&amp;quot;&lt;br&gt;&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#Region &amp;quot;Metodos que Escuchan Eventos&amp;quot;&lt;br&gt;&lt;br&gt;    Private Sub cmbReports_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbReports.SelectedIndexChanged&lt;br&gt;        Me._NombreReport = Me.cmbReports.SelectedItem&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;    Private Sub btnVer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVerWeb.Click&lt;br&gt;        Dim rv As ReportViewerWeb&lt;br&gt;&lt;br&gt;        rv = New ReportViewerWeb(_NombreReport)&lt;br&gt;        rv.Show()&lt;br&gt;&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;    Private Sub btnExportar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExportar.Click&lt;br&gt;&lt;br&gt;        Me.sfdArchivoGuardado = New SaveFileDialog&lt;br&gt;        Me.sfdArchivoGuardado.Filter = Me.GetFiltro()&lt;br&gt;        Me.sfdArchivoGuardado.FileName = _NombreReport&lt;br&gt;&lt;br&gt;        Dim dr As DialogResult = Me.sfdArchivoGuardado.ShowDialog()&lt;br&gt;&lt;br&gt;        If dr = DialogResult.OK Then&lt;br&gt;            ExportaReport(Me.sfdArchivoGuardado.FileName)&lt;br&gt;        End If&lt;br&gt;&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;    Private Sub btnPDF_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVerPdf.Click, btnImprimir.Click&lt;br&gt;        Dim NombrePdf As String&lt;br&gt;&lt;br&gt;        ExportaReport(&amp;quot;C:\ExportedReport.pdf&amp;quot;)&lt;br&gt;        Dim pv As New ReportViewerPdf(&amp;quot;C:\ExportedReport.pdf&amp;quot;)&lt;br&gt;&lt;br&gt;        Select Case CType(sender, Button).Name&lt;br&gt;            Case &amp;quot;btnVerPdf&amp;quot;&lt;br&gt;                pv.Show()&lt;br&gt;            Case &amp;quot;btnImprimir&amp;quot;&lt;br&gt;                pv.Imprimir()&lt;br&gt;        End Select&lt;br&gt;&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;End Class&lt;br&gt;&lt;br&gt;&lt;br&gt;#Region &amp;quot;Summary&amp;quot;&lt;br&gt;''' ============================================================================&lt;br&gt;''' AUTOR		   : alias &lt;br&gt;''' FECHA DE CREACION  : 5 Nov 2004 &lt;br&gt;''' PROPOSITO	   : &lt;br&gt;''' NOTAS		   : &lt;br&gt;''' NOMBRE DEL FICHERO : $Workfile: $	&lt;br&gt;''' VSS ARCHIVE	 : $Archive: $&lt;br&gt;''' VERSION		 : $Revision: $&lt;br&gt;'''&lt;br&gt;''' (c) 2004 DTI GRUPO FCC&lt;br&gt;''' ===========================================================================&lt;br&gt;''' $History: $&lt;br&gt;'''	&lt;br&gt;'''&lt;br&gt;''' ============================================================================&lt;br&gt;&lt;br&gt;#Region &amp;quot;QA Status&amp;quot;&lt;br&gt;#Region &amp;quot;Review History&amp;quot;&lt;br&gt;''' ============================================================================&lt;br&gt;''' CODE STATUS	: REVIEWED {NOT REVIEWED | REVIEWED}&lt;br&gt;'''&lt;br&gt;''' ============================================================================&lt;br&gt;'''	REVIEW HISTORY&lt;br&gt;''' ---------------------------------------------------------------------------&lt;br&gt;''' DATE		| NAME			| COMMENTS&lt;br&gt;''' ---------------------------------------------------------------------------&lt;br&gt;''' 4 Aug 2002	 jsmith			Conformed to coding standards&lt;br&gt;'''&lt;br&gt;''' ============================================================================&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#Region &amp;quot;Known Issues and Limitations&amp;quot;&lt;br&gt;''' ============================================================================&lt;br&gt;''' DATE		: 4 Aug 2002&lt;br&gt;''' NAME		: bsmith &lt;br&gt;''' METHOD NAME	: Foo()&lt;br&gt;''' DESCRIPTION	: Looping is quite inefficient. Should be revisited and &lt;br&gt;'''			 improved.&lt;br&gt;'''&lt;br&gt;'''----------------------------------------------------------------------------&lt;br&gt;''' DATE		: 5 Aug 2002&lt;br&gt;''' NAME		: patcoleman&lt;br&gt;''' METHOD NAME	: Goo()&lt;br&gt;''' DESCRIPTION	: Refer to DefectList.Doc under section &amp;quot;Goo() Defects&amp;quot;.&lt;br&gt;'''&lt;br&gt;''' ============================================================================&lt;br&gt;#End Region&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;#Region &amp;quot;.NET Base Class Namespace Imports&amp;quot;&lt;br&gt;&lt;br&gt;Imports ResportingServiceViewer.ReportServer&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;Public Class PideParametros&lt;br&gt;    Inherits System.Windows.Forms.Form&lt;br&gt;&lt;br&gt;#Region &amp;quot; C&amp;#243;digo generado por el Dise&amp;#241;ador de Windows Forms &amp;quot;&lt;br&gt;&lt;br&gt;    'Form reemplaza a Dispose para limpiar la lista de componentes.&lt;br&gt;    Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)&lt;br&gt;        If disposing Then&lt;br&gt;            If Not (components Is Nothing) Then&lt;br&gt;                components.Dispose()&lt;br&gt;            End If&lt;br&gt;        End If&lt;br&gt;        MyBase.Dispose(disposing)&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;    'Requerido por el Dise&amp;#241;ador de Windows Forms&lt;br&gt;    Private components As System.ComponentModel.IContainer&lt;br&gt;&lt;br&gt;    'NOTA: el Dise&amp;#241;ador de Windows Forms requiere el siguiente procedimiento&lt;br&gt;    'Puede modificarse utilizando el Dise&amp;#241;ador de Windows Forms. &lt;br&gt;    'No lo modifique con el editor de c&amp;#243;digo.&lt;br&gt;    Private WithEvents lbTexto As System.Windows.Forms.Label&lt;br&gt;    Private WithEvents dtpDate As System.Windows.Forms.DateTimePicker&lt;br&gt;    Private WithEvents cmbBoolean As System.Windows.Forms.ComboBox&lt;br&gt;    Private WithEvents txtString As System.Windows.Forms.TextBox&lt;br&gt;    Private WithEvents txtInteger As System.Windows.Forms.TextBox&lt;br&gt;    Private WithEvents txtFloat As System.Windows.Forms.TextBox&lt;br&gt;    Private WithEvents pnInteger As System.Windows.Forms.Panel&lt;br&gt;    Private WithEvents pnFloat As System.Windows.Forms.Panel&lt;br&gt;    Private WithEvents pnFecha As System.Windows.Forms.Panel&lt;br&gt;    Private WithEvents pnString As System.Windows.Forms.Panel&lt;br&gt;    Private WithEvents pnBoolean As System.Windows.Forms.Panel&lt;br&gt;    Private WithEvents btnAceptar As System.Windows.Forms.Button&lt;br&gt;    &amp;lt;System.Diagnostics.DebuggerStepThrough()&amp;gt; Private Sub InitializeComponent()&lt;br&gt;        Me.lbTexto = New System.Windows.Forms.Label&lt;br&gt;        Me.dtpDate = New System.Windows.Forms.DateTimePicker&lt;br&gt;        Me.cmbBoolean = New System.Windows.Forms.ComboBox&lt;br&gt;        Me.txtString = New System.Windows.Forms.TextBox&lt;br&gt;        Me.txtInteger = New System.Windows.Forms.TextBox&lt;br&gt;        Me.txtFloat = New System.Windows.Forms.TextBox&lt;br&gt;        Me.pnInteger = New System.Windows.Forms.Panel&lt;br&gt;        Me.pnFloat = New System.Windows.Forms.Panel&lt;br&gt;        Me.pnFecha = New System.Windows.Forms.Panel&lt;br&gt;        Me.pnString = New System.Windows.Forms.Panel&lt;br&gt;        Me.pnBoolean = New System.Windows.Forms.Panel&lt;br&gt;        Me.btnAceptar = New System.Windows.Forms.Button&lt;br&gt;        Me.pnInteger.SuspendLayout()&lt;br&gt;        Me.pnFloat.SuspendLayout()&lt;br&gt;        Me.pnFecha.SuspendLayout()&lt;br&gt;        Me.pnString.SuspendLayout()&lt;br&gt;        Me.pnBoolean.SuspendLayout()&lt;br&gt;        Me.SuspendLayout()&lt;br&gt;        '&lt;br&gt;        'lbTexto&lt;br&gt;        '&lt;br&gt;        Me.lbTexto.Location = New System.Drawing.Point(8, 8)&lt;br&gt;        Me.lbTexto.Name = &amp;quot;lbTexto&amp;quot;&lt;br&gt;        Me.lbTexto.Size = New System.Drawing.Size(216, 32)&lt;br&gt;        Me.lbTexto.TabIndex = 0&lt;br&gt;        '&lt;br&gt;        'dtpDate&lt;br&gt;        '&lt;br&gt;        Me.dtpDate.Format = System.Windows.Forms.DateTimePickerFormat.Short&lt;br&gt;        Me.dtpDate.Location = New System.Drawing.Point(8, 8)&lt;br&gt;        Me.dtpDate.Name = &amp;quot;dtpDate&amp;quot;&lt;br&gt;        Me.dtpDate.Size = New System.Drawing.Size(104, 20)&lt;br&gt;        Me.dtpDate.TabIndex = 1&lt;br&gt;        '&lt;br&gt;        'cmbBoolean&lt;br&gt;        '&lt;br&gt;        Me.cmbBoolean.Items.AddRange(New Object() {&amp;quot;Cierto&amp;quot;, &amp;quot;Falso&amp;quot;})&lt;br&gt;        Me.cmbBoolean.Location = New System.Drawing.Point(8, 8)&lt;br&gt;        Me.cmbBoolean.Name = &amp;quot;cmbBoolean&amp;quot;&lt;br&gt;        Me.cmbBoolean.Size = New System.Drawing.Size(104, 21)&lt;br&gt;        Me.cmbBoolean.TabIndex = 2&lt;br&gt;        Me.cmbBoolean.Text = &amp;quot;Cierto&amp;quot;&lt;br&gt;        '&lt;br&gt;        'txtString&lt;br&gt;        '&lt;br&gt;        Me.txtString.Location = New System.Drawing.Point(8, 8)&lt;br&gt;        Me.txtString.Name = &amp;quot;txtString&amp;quot;&lt;br&gt;        Me.txtString.TabIndex = 3&lt;br&gt;        Me.txtString.Text = &amp;quot;&amp;quot;&lt;br&gt;        '&lt;br&gt;        'txtInteger&lt;br&gt;        '&lt;br&gt;        Me.txtInteger.Location = New System.Drawing.Point(8, 8)&lt;br&gt;        Me.txtInteger.Name = &amp;quot;txtInteger&amp;quot;&lt;br&gt;        Me.txtInteger.TabIndex = 4&lt;br&gt;        Me.txtInteger.Text = &amp;quot;0&amp;quot;&lt;br&gt;        Me.txtInteger.TextAlign = System.Windows.Forms.HorizontalAlignment.Right&lt;br&gt;        '&lt;br&gt;        'txtFloat&lt;br&gt;        '&lt;br&gt;        Me.txtFloat.Location = New System.Drawing.Point(8, 8)&lt;br&gt;        Me.txtFloat.Name = &amp;quot;txtFloat&amp;quot;&lt;br&gt;        Me.txtFloat.TabIndex = 5&lt;br&gt;        Me.txtFloat.Text = &amp;quot;0,0&amp;quot;&lt;br&gt;        Me.txtFloat.TextAlign = System.Windows.Forms.HorizontalAlignment.Right&lt;br&gt;        '&lt;br&gt;        'pnInteger&lt;br&gt;        '&lt;br&gt;        Me.pnInteger.Controls.Add(Me.txtInteger)&lt;br&gt;        Me.pnInteger.Location = New System.Drawing.Point(0, 40)&lt;br&gt;        Me.pnInteger.Name = &amp;quot;pnInteger&amp;quot;&lt;br&gt;        Me.pnInteger.Size = New System.Drawing.Size(120, 40)&lt;br&gt;        Me.pnInteger.TabIndex = 6&lt;br&gt;        '&lt;br&gt;        'pnFloat&lt;br&gt;        '&lt;br&gt;        Me.pnFloat.Controls.Add(Me.txtFloat)&lt;br&gt;        Me.pnFloat.Location = New System.Drawing.Point(0, 40)&lt;br&gt;        Me.pnFloat.Name = &amp;quot;pnFloat&amp;quot;&lt;br&gt;        Me.pnFloat.Size = New System.Drawing.Size(120, 40)&lt;br&gt;        Me.pnFloat.TabIndex = 7&lt;br&gt;        '&lt;br&gt;        'pnFecha&lt;br&gt;        '&lt;br&gt;        Me.pnFecha.Controls.Add(Me.dtpDate)&lt;br&gt;        Me.pnFecha.Location = New System.Drawing.Point(0, 40)&lt;br&gt;        Me.pnFecha.Name = &amp;quot;pnFecha&amp;quot;&lt;br&gt;        Me.pnFecha.Size = New System.Drawing.Size(120, 40)&lt;br&gt;        Me.pnFecha.TabIndex = 8&lt;br&gt;        '&lt;br&gt;        'pnString&lt;br&gt;        '&lt;br&gt;        Me.pnString.Controls.Add(Me.txtString)&lt;br&gt;        Me.pnString.Location = New System.Drawing.Point(0, 40)&lt;br&gt;        Me.pnString.Name = &amp;quot;pnString&amp;quot;&lt;br&gt;        Me.pnString.Size = New System.Drawing.Size(120, 40)&lt;br&gt;        Me.pnString.TabIndex = 9&lt;br&gt;        '&lt;br&gt;        'pnBoolean&lt;br&gt;        '&lt;br&gt;        Me.pnBoolean.Controls.Add(Me.cmbBoolean)&lt;br&gt;        Me.pnBoolean.Location = New System.Drawing.Point(0, 40)&lt;br&gt;        Me.pnBoolean.Name = &amp;quot;pnBoolean&amp;quot;&lt;br&gt;        Me.pnBoolean.Size = New System.Drawing.Size(120, 40)&lt;br&gt;        Me.pnBoolean.TabIndex = 10&lt;br&gt;        '&lt;br&gt;        'btnAceptar&lt;br&gt;        '&lt;br&gt;        Me.btnAceptar.Location = New System.Drawing.Point(136, 48)&lt;br&gt;        Me.btnAceptar.Name = &amp;quot;btnAceptar&amp;quot;&lt;br&gt;        Me.btnAceptar.Size = New System.Drawing.Size(75, 24)&lt;br&gt;        Me.btnAceptar.TabIndex = 11&lt;br&gt;        Me.btnAceptar.Text = &amp;quot;Aceptar&amp;quot;&lt;br&gt;        '&lt;br&gt;        'PideParametros&lt;br&gt;        '&lt;br&gt;        Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)&lt;br&gt;        Me.ClientSize = New System.Drawing.Size(224, 102)&lt;br&gt;        Me.Controls.Add(Me.btnAceptar)&lt;br&gt;        Me.Controls.Add(Me.pnBoolean)&lt;br&gt;        Me.Controls.Add(Me.pnString)&lt;br&gt;        Me.Controls.Add(Me.pnInteger)&lt;br&gt;        Me.Controls.Add(Me.lbTexto)&lt;br&gt;        Me.Controls.Add(Me.pnFloat)&lt;br&gt;        Me.Controls.Add(Me.pnFecha)&lt;br&gt;        Me.Name = &amp;quot;PideParametros&amp;quot;&lt;br&gt;        Me.Text = &amp;quot;PideParametros&amp;quot;&lt;br&gt;        Me.pnInteger.ResumeLayout(False)&lt;br&gt;        Me.pnFloat.ResumeLayout(False)&lt;br&gt;        Me.pnFecha.ResumeLayout(False)&lt;br&gt;        Me.pnString.ResumeLayout(False)&lt;br&gt;        Me.pnBoolean.ResumeLayout(False)&lt;br&gt;        Me.ResumeLayout(False)&lt;br&gt;&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#Region &amp;quot;Variables Miembro, Constantes y Enumeraciones de la Clase&amp;quot;&lt;br&gt;&lt;br&gt;    Private NOPromptMessage As String = &amp;quot;Introducir valor para &amp;quot;&lt;br&gt;&lt;br&gt;    Private Parametro As ReportServer.ReportParameter&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#Region &amp;quot;Constructores/Destructores/Finalizadores&amp;quot;&lt;br&gt;&lt;br&gt;    Public Sub New(ByVal Parameter As ReportServer.ReportParameter)&lt;br&gt;        MyBase.New()&lt;br&gt;        InitializeComponent()&lt;br&gt;&lt;br&gt;        Parametro = Parameter&lt;br&gt;&lt;br&gt;        If Parametro.PromptUser Then&lt;br&gt;            Me.Text = Parametro.Prompt&lt;br&gt;            Me.lbTexto.Text = Parametro.Prompt&lt;br&gt;        Else&lt;br&gt;            Me.Text = NOPromptMessage &amp;amp; Parametro.Name&lt;br&gt;            Me.lbTexto.Text = NOPromptMessage &amp;amp; Parametro.Name&lt;br&gt;        End If&lt;br&gt;        Me.pnString.Visible = False&lt;br&gt;        Me.pnInteger.Visible = False&lt;br&gt;        Me.pnBoolean.Visible = False&lt;br&gt;        Me.pnFecha.Visible = False&lt;br&gt;        Me.pnFloat.Visible = False&lt;br&gt;&lt;br&gt;        Select Case Parametro.Type&lt;br&gt;            Case ParameterTypeEnum.Boolean&lt;br&gt;                Me.pnBoolean.Visible = True&lt;br&gt;            Case ParameterTypeEnum.DateTime&lt;br&gt;                Me.pnFecha.Visible = True&lt;br&gt;            Case ParameterTypeEnum.Float&lt;br&gt;                Me.pnFloat.Visible = True&lt;br&gt;            Case ParameterTypeEnum.Integer&lt;br&gt;                Me.pnInteger.Visible = True&lt;br&gt;            Case ParameterTypeEnum.String&lt;br&gt;                Me.pnString.Visible = True&lt;br&gt;        End Select&lt;br&gt;&lt;br&gt;&lt;br&gt;    End Sub&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#Region &amp;quot;Propiedades Internal/Protected/Public&amp;quot;&lt;br&gt;&lt;br&gt;    Private _ParaValue As ReportServer.ParameterValue&lt;br&gt;    Property ParaValue() As ReportServer.ParameterValue&lt;br&gt;        Get&lt;br&gt;            Return _ParaValue&lt;br&gt;        End Get&lt;br&gt;        Set(ByVal Value As ReportServer.ParameterValue)&lt;br&gt;            _ParaValue = Value&lt;br&gt;        End Set&lt;br&gt;    End Property&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;#Region &amp;quot;Metodos Internal/Protected/Private/Public&amp;quot;&lt;br&gt;&lt;br&gt;    Private Sub btnAceptar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAceptar.Click&lt;br&gt;        _ParaValue = New ParameterValue&lt;br&gt;        _ParaValue.Name = Parametro.Name&lt;br&gt;        Select Case Parametro.Type&lt;br&gt;            Case ParameterTypeEnum.Boolean&lt;br&gt;                _ParaValue.Value = Me.cmbBoolean.Text&lt;br&gt;            Case ParameterTypeEnum.DateTime&lt;br&gt;                _ParaValue.Value = Me.dtpDate.Value.ToString()&lt;br&gt;            Case ParameterTypeEnum.Float&lt;br&gt;                _ParaValue.Value = Me.txtFloat.Text&lt;br&gt;            Case ParameterTypeEnum.Integer&lt;br&gt;                _ParaValue.Value = Me.txtInteger.Text&lt;br&gt;            Case ParameterTypeEnum.String&lt;br&gt;                _ParaValue.Value = Me.txtString.Text&lt;br&gt;        End Select&lt;br&gt;        Me.Close()&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;End Class&lt;br&gt;&lt;br&gt;&lt;br&gt;Public Class ReportViewerPdf&lt;br&gt;    Inherits System.Windows.Forms.Form&lt;br&gt;&lt;br&gt;#Region &amp;quot; C&amp;#243;digo generado por el Dise&amp;#241;ador de Windows Forms &amp;quot;&lt;br&gt;&lt;br&gt;    'Form reemplaza a Dispose para limpiar la lista de componentes.&lt;br&gt;    Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)&lt;br&gt;        If disposing Then&lt;br&gt;            If Not (components Is Nothing) Then&lt;br&gt;                components.Dispose()&lt;br&gt;            End If&lt;br&gt;        End If&lt;br&gt;        MyBase.Dispose(disposing)&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;    'Requerido por el Dise&amp;#241;ador de Windows Forms&lt;br&gt;    Private components As System.ComponentModel.IContainer&lt;br&gt;&lt;br&gt;    'NOTA: el Dise&amp;#241;ador de Windows Forms requiere el siguiente procedimiento&lt;br&gt;    'Puede modificarse utilizando el Dise&amp;#241;ador de Windows Forms. &lt;br&gt;    'No lo modifique con el editor de c&amp;#243;digo.&lt;br&gt;    Friend WithEvents pdf As AxPdfLib.AxPdf&lt;br&gt;    &amp;lt;System.Diagnostics.DebuggerStepThrough()&amp;gt; Private Sub InitializeComponent()&lt;br&gt;        Dim resources As System.Resources.ResourceManager = New System.Resources.ResourceManager(GetType(ReportViewerPdf))&lt;br&gt;        Me.pdf = New AxPdfLib.AxPdf&lt;br&gt;        CType(Me.pdf, System.ComponentModel.ISupportInitialize).BeginInit()&lt;br&gt;        Me.SuspendLayout()&lt;br&gt;        '&lt;br&gt;        'pdf&lt;br&gt;        '&lt;br&gt;        Me.pdf.Dock = System.Windows.Forms.DockStyle.Fill&lt;br&gt;        Me.pdf.Enabled = True&lt;br&gt;        Me.pdf.Location = New System.Drawing.Point(0, 0)&lt;br&gt;        Me.pdf.Name = &amp;quot;pdf&amp;quot;&lt;br&gt;        Me.pdf.OcxState = CType(resources.GetObject(&amp;quot;pdf.OcxState&amp;quot;), System.Windows.Forms.AxHost.State)&lt;br&gt;        Me.pdf.Size = New System.Drawing.Size(448, 446)&lt;br&gt;        Me.pdf.TabIndex = 0&lt;br&gt;        '&lt;br&gt;        'ReportViewerPdf&lt;br&gt;        '&lt;br&gt;        Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)&lt;br&gt;        Me.ClientSize = New System.Drawing.Size(448, 446)&lt;br&gt;        Me.Controls.Add(Me.pdf)&lt;br&gt;        Me.Name = &amp;quot;ReportViewerPdf&amp;quot;&lt;br&gt;        Me.Text = &amp;quot;BRI - Visualizador de Informes&amp;quot;&lt;br&gt;        CType(Me.pdf, System.ComponentModel.ISupportInitialize).EndInit()&lt;br&gt;        Me.ResumeLayout(False)&lt;br&gt;&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;    Private _ReportSrc As String&lt;br&gt;    Public Sub New(ByVal ReportSrc As String)&lt;br&gt;        MyBase.New()&lt;br&gt;        InitializeComponent()&lt;br&gt;&lt;br&gt;        _ReportSrc = ReportSrc&lt;br&gt;        pdf.src = _ReportSrc&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;    Public Sub Imprimir()&lt;br&gt;        pdf.printAllFit(True)&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;End Class&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Public Class ReportViewerWeb&lt;br&gt;    Inherits System.Windows.Forms.Form&lt;br&gt;&lt;br&gt;#Region &amp;quot; C&amp;#243;digo generado por el Dise&amp;#241;ador de Windows Forms &amp;quot;&lt;br&gt;&lt;br&gt;    'Form reemplaza a Dispose para limpiar la lista de componentes.&lt;br&gt;    Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)&lt;br&gt;        If disposing Then&lt;br&gt;            If Not (components Is Nothing) Then&lt;br&gt;                components.Dispose()&lt;br&gt;            End If&lt;br&gt;        End If&lt;br&gt;        MyBase.Dispose(disposing)&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;    'Requerido por el Dise&amp;#241;ador de Windows Forms&lt;br&gt;    Private components As System.ComponentModel.IContainer&lt;br&gt;&lt;br&gt;    'NOTA: el Dise&amp;#241;ador de Windows Forms requiere el siguiente procedimiento&lt;br&gt;    'Puede modificarse utilizando el Dise&amp;#241;ador de Windows Forms. &lt;br&gt;    'No lo modifique con el editor de c&amp;#243;digo.&lt;br&gt;    Friend WithEvents wbReport As AxSHDocVw.AxWebBrowser&lt;br&gt;    Friend WithEvents MainMenu1 As System.Windows.Forms.MainMenu&lt;br&gt;    Friend WithEvents MenuItem1 As System.Windows.Forms.MenuItem&lt;br&gt;    Friend WithEvents MenuItem2 As System.Windows.Forms.MenuItem&lt;br&gt;    Friend WithEvents MenuItem3 As System.Windows.Forms.MenuItem&lt;br&gt;    &amp;lt;System.Diagnostics.DebuggerStepThrough()&amp;gt; Private Sub InitializeComponent()&lt;br&gt;        Dim resources As System.Resources.ResourceManager = New System.Resources.ResourceManager(GetType(ReportViewerWeb))&lt;br&gt;        Me.wbReport = New AxSHDocVw.AxWebBrowser&lt;br&gt;        Me.MainMenu1 = New System.Windows.Forms.MainMenu&lt;br&gt;        Me.MenuItem1 = New System.Windows.Forms.MenuItem&lt;br&gt;        Me.MenuItem2 = New System.Windows.Forms.MenuItem&lt;br&gt;        Me.MenuItem3 = New System.Windows.Forms.MenuItem&lt;br&gt;        CType(Me.wbReport, System.ComponentModel.ISupportInitialize).BeginInit()&lt;br&gt;        Me.SuspendLayout()&lt;br&gt;        '&lt;br&gt;        'wbReport&lt;br&gt;        '&lt;br&gt;        Me.wbReport.Dock = System.Windows.Forms.DockStyle.Fill&lt;br&gt;        Me.wbReport.Enabled = True&lt;br&gt;        Me.wbReport.Location = New System.Drawing.Point(0, 0)&lt;br&gt;        Me.wbReport.OcxState = CType(resources.GetObject(&amp;quot;wbReport.OcxState&amp;quot;), System.Windows.Forms.AxHost.State)&lt;br&gt;        Me.wbReport.Size = New System.Drawing.Size(464, 441)&lt;br&gt;        Me.wbReport.TabIndex = 0&lt;br&gt;        '&lt;br&gt;        'MainMenu1&lt;br&gt;        '&lt;br&gt;        Me.MainMenu1.MenuItems.AddRange(New System.Windows.Forms.MenuItem() {Me.MenuItem1})&lt;br&gt;        '&lt;br&gt;        'MenuItem1&lt;br&gt;        '&lt;br&gt;        Me.MenuItem1.Index = 0&lt;br&gt;        Me.MenuItem1.MenuItems.AddRange(New System.Windows.Forms.MenuItem() {Me.MenuItem2, Me.MenuItem3})&lt;br&gt;        Me.MenuItem1.Text = &amp;quot;Archivo&amp;quot;&lt;br&gt;        '&lt;br&gt;        'MenuItem2&lt;br&gt;        '&lt;br&gt;        Me.MenuItem2.Index = 0&lt;br&gt;        Me.MenuItem2.Text = &amp;quot;Imprimir&amp;quot;&lt;br&gt;        '&lt;br&gt;        'MenuItem3&lt;br&gt;        '&lt;br&gt;        Me.MenuItem3.Index = 1&lt;br&gt;        Me.MenuItem3.Text = &amp;quot;Salir&amp;quot;&lt;br&gt;        '&lt;br&gt;        'ReportViewerWeb&lt;br&gt;        '&lt;br&gt;        Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)&lt;br&gt;        Me.ClientSize = New System.Drawing.Size(464, 441)&lt;br&gt;        Me.Controls.Add(Me.wbReport)&lt;br&gt;        Me.Menu = Me.MainMenu1&lt;br&gt;        Me.Name = &amp;quot;ReportViewerWeb&amp;quot;&lt;br&gt;        Me.Text = &amp;quot;BRI - Visualizador de Informes&amp;quot;&lt;br&gt;        CType(Me.wbReport, System.ComponentModel.ISupportInitialize).EndInit()&lt;br&gt;        Me.ResumeLayout(False)&lt;br&gt;&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;#End Region&lt;br&gt;&lt;br&gt;    Private _NombreReport As String&lt;br&gt;    Private Url As String&lt;br&gt;&lt;br&gt;    Public Sub New(ByVal NombreReport As String)&lt;br&gt;        MyBase.New()&lt;br&gt;        InitializeComponent()&lt;br&gt;&lt;br&gt;        Me._NombreReport = NombreReport&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;    Private Sub NavegaReport()&lt;br&gt;&lt;br&gt;        Url = GetHost() &amp;amp; GetProyectName() &amp;amp; _NombreReport &amp;amp; GetCommandRender()&lt;br&gt;&lt;br&gt;        Dim Missing As System.Reflection.Missing = System.Reflection.Missing.Value&lt;br&gt;        Me.wbReport.Navigate(Url, Missing, Missing, Missing, Missing)&lt;br&gt;&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;    Private Function GetHost() As String&lt;br&gt;        Return &amp;quot;&lt;a target="_new" href="http://localhost/ReportServer?&amp;quot;"&gt;http://localhost/ReportServer?&amp;quot;&lt;/a&gt;&lt;br&gt;    End Function&lt;br&gt;&lt;br&gt;    Private Function GetProyectName() As String&lt;br&gt;        Return &amp;quot;/BriReports/&amp;quot;&lt;br&gt;    End Function&lt;br&gt;&lt;br&gt;    Private Function GetCommandRender() As String&lt;br&gt;        Return &amp;quot;&amp;amp;rs:Command=Render&amp;quot;&lt;br&gt;    End Function&lt;br&gt;&lt;br&gt;    Private Sub ReportViewer_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load&lt;br&gt;        NavegaReport()&lt;br&gt;    End Sub&lt;br&gt;&lt;br&gt;End Class&lt;br&gt;&lt;br&gt;&lt;br&gt;Cheers And Beers&lt;br&gt;RicardoCasquete@hotmail.com</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#159341</link><pubDate>Fri, 18 Jun 2004 15:57:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:159341</guid><dc:creator>Bryan Keller</dc:creator><description>Great example and thanks for posting this code! Cheers and beers to you my friend.</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#162432</link><pubDate>Tue, 22 Jun 2004 14:59:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:162432</guid><dc:creator>AK</dc:creator><description>Getting Error &amp;quot;Access is Denied&amp;quot; when using with ASP.NET (C#)&lt;br&gt;&lt;br&gt;StackTrace	&amp;quot;at System.Windows.Forms.PrintControllerWithStatusDialog.OnStartPrint(PrintDocument document, PrintEventArgs e)\r\n   at System.Drawing.Printing.PrintController.Print(PrintDocument document)\r\n   at System.Drawing.Printing.PrintDocument.Print()\r\n   at ABC.XYZ.Reports.PrintReport.Print(String printerName, String reportPath) in c:\\inetpub\\wwwroot\\ABC\\XYZ\\misreports\\printreport.cs:line 137&amp;quot;	string</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#162485</link><pubDate>Tue, 22 Jun 2004 16:02:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:162485</guid><dc:creator>AK</dc:creator><description>For &amp;quot;Access is Denied&amp;quot; error is fixed by&lt;br&gt;&amp;lt;identity impersonate=&amp;quot;true&amp;quot; /&amp;gt;&lt;br&gt;&lt;br&gt;-AK</description></item><item><title>my weblog &amp;raquo; Printing in Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#169212</link><pubDate>Wed, 30 Jun 2004 01:40:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:169212</guid><dc:creator>TrackBack</dc:creator><description>my weblog &amp;amp;raquo; Printing in Reporting Services</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#175208</link><pubDate>Wed, 07 Jul 2004 12:21:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:175208</guid><dc:creator>Jeff</dc:creator><description>where do you put &amp;lt;identity impersonate = &amp;quot;true&amp;quot;</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#175538</link><pubDate>Wed, 07 Jul 2004 18:08:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:175538</guid><dc:creator>Bryan Keller</dc:creator><description>In the Web.config file of the client application.</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#184964</link><pubDate>Fri, 16 Jul 2004 07:46:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:184964</guid><dc:creator>Graham</dc:creator><description>Hi All,&lt;br&gt;&lt;br&gt;I have a one pager that just sneaks ove to two pages. The original margins all round are 0.25 in and the original page size in design time is 8.5in x 11.95in (A4). I made the length 11.95in so that it would print to the complete length of the page, cause at 11.00in it stops printing about 5cm before the bottom of the page. This works nicely when I export to PDF then print from there.&lt;br&gt;&lt;br&gt;Now, we have the need to print directly to the default client printer. This is when I stumbled onto this code. The code works nicely, except that it cuts off the report about 2.5cm from the bottom whereas it should be printing about 1cm from the bottom.&lt;br&gt;&lt;br&gt;I have tries both Keith's posts but still doing the same thing.&lt;br&gt;&lt;br&gt;Has anyone got any idea why it is doing this.&lt;br&gt;&lt;br&gt;Thanks in advance.&lt;br&gt;Graham&lt;br&gt;&lt;br&gt;</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#208171</link><pubDate>Wed, 04 Aug 2004 18:48:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:208171</guid><dc:creator>sharon</dc:creator><description>Hi! It was very helpful, thanks. However a problem appears when I try to run the code. It gives a rsAccessDenied and says that my permissions are not sufficient and stuff like that. What could it be?&lt;br&gt;&lt;br&gt;Thanks in advance!&lt;br&gt;Sharon.</description></item><item><title>re: Printing Reports Programmatically Using C# and SQL Server 2000 Reporting Services</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#208708</link><pubDate>Thu, 05 Aug 2004 10:13:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:208708</guid><dc:creator>Ganesh</dc:creator><description>I am getting an error while calling the pd.print method. the error is as follows:&lt;br&gt;Tried to access printer 'HP2200' with invalid settings.System.Drawing.Printing.I&lt;br&gt;nvalidPrinterException: Tried to access printer 'HP2200' with invalid settings.&lt;br&gt;   at System.Drawing.Printing.PrinterSettings.GetHdevmodeInternal()&lt;br&gt;   at System.Drawing.Printing.PrinterSettings.GetHdevmode(PageSettings pageSetti&lt;br&gt;ngs)&lt;br&gt;   at System.Drawing.Printing.PrintController.OnStartPrint(PrintDocument documen&lt;br&gt;t, PrintEventArgs e)&lt;br&gt;   at System.Windows.Forms.PrintControllerWithStatusDialog.OnStartPrint(PrintDoc&lt;br&gt;ument document, PrintEventArgs e)&lt;br&gt;   at System.Drawing.Printing.PrintController.Print(PrintDocument document)&lt;br&gt;   at System.Drawing.Printing.PrintDocument.Print()&lt;br&gt;   at PrintingSample.PrintingEx.PrintReport(String printerName) in d:\reportings&lt;br&gt;ervices\printingsample\class1.cs:line 139&lt;br&gt;&lt;br&gt;Can anyone help!!!!&lt;br&gt;Regards,&lt;br&gt;Ganesh</description></item><item><title>Service Pack 2 brings client-side printing</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#345287</link><pubDate>Sat, 01 Jan 2005 23:34:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:345287</guid><dc:creator>Prologika</dc:creator><description /></item><item><title>Service Pack 2 brings client-side printing</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#345288</link><pubDate>Sat, 01 Jan 2005 23:38:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:345288</guid><dc:creator>Prologika</dc:creator><description /></item><item><title>SQL Reporting Preview Window</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#361303</link><pubDate>Thu, 27 Jan 2005 07:05:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:361303</guid><dc:creator>Jon(e)sie.Net Blog</dc:creator><description /></item><item><title>Items of interest</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#581748</link><pubDate>Sun, 23 Apr 2006 23:38:13 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:581748</guid><dc:creator>Jorriss.Net</dc:creator><description>I love the MSDN blog feed.&amp;amp;amp;nbsp; Frank Prengel writes about a study between .Net and Websphere where...</description></item><item><title>Ultracet.</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#8752897</link><pubDate>Sat, 19 Jul 2008 05:41:17 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8752897</guid><dc:creator>Ultracet.</dc:creator><description>&lt;p&gt;Lexapro-ultracet-interactions. Ultracet.&lt;/p&gt;
</description></item><item><title>Voyforums work at home moms.</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#8772456</link><pubDate>Fri, 25 Jul 2008 19:34:42 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8772456</guid><dc:creator>Wahm com the online magazine for work at home moms.</dc:creator><description>&lt;p&gt;Work at home moms. Site build it work at home moms wahm. Wahm com the online magazine for work at home moms. Work at home ideas for moms wahmoms net. Message boards for work at home moms.&lt;/p&gt;
</description></item><item><title>Using mapped printers on Report Server | keyongtech</title><link>http://blogs.msdn.com/bryanke/pages/71491.aspx#9338426</link><pubDate>Sun, 18 Jan 2009 20:34:56 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9338426</guid><dc:creator>Using mapped printers on Report Server | keyongtech</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://www.keyongtech.com/2198907-using-mapped-printers-on-report"&gt;http://www.keyongtech.com/2198907-using-mapped-printers-on-report&lt;/a&gt;&lt;/p&gt;
</description></item></channel></rss>