<?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>William Li's Enterprise Reporting : Component Technologies</title><link>http://blogs.msdn.com/williaml/archive/tags/Component+Technologies/default.aspx</link><description>Tags: Component Technologies</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Use Reporting Service Itself to Monitor Customers' Reporting Activities</title><link>http://blogs.msdn.com/williaml/archive/2006/10/02/Use-Reporting-Service-Itself-to-Monitor-Customers_2700_-Reporting-Activities.aspx</link><pubDate>Tue, 03 Oct 2006 01:56:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:783144</guid><dc:creator>williaml</dc:creator><slash:comments>4</slash:comments><comments>http://blogs.msdn.com/williaml/comments/783144.aspx</comments><wfw:commentRss>http://blogs.msdn.com/williaml/commentrss.aspx?PostID=783144</wfw:commentRss><wfw:comment>http://blogs.msdn.com/williaml/rsscomments.aspx?PostID=783144</wfw:comment><description>&lt;p&gt;&amp;nbsp; &amp;nbsp;&lt;/p&gt;
&lt;p&gt;The list of reports requested in Requirement or Functional Specification by customers is one thing, the actual list of reports used&amp;nbsp;for day-to-day business after Production is another thing. While we know customers have the challenges of changing business needs, how do we understand and measure what are the reports that are actually being used by customers after Production? To some degrees, it is important to understand this fact so that future iteration of developments and/or maintenance can be placed in the right order of priorities. &lt;/p&gt;
&lt;p&gt;I found&amp;nbsp;an easy way to do that - if you are using SQL Server 2005 Reporting Service. The idea is to upload the IIS log for the Reporting Service into an IT or operation oriented database (anywhere in the internal network) and then organize the data for a few handy and useful reports through Reporting Service. To do that, there are two tools you should download: &lt;/p&gt;
&lt;p&gt;&lt;b&gt;Log Parser 2.2:&lt;/b&gt; Log parser is a powerful, versatile tool that provides universal query access to text-based data such as log files, XML files and CSV files, as well as key data sources on the Windows operating system such as the Event Log, the Registry, the file system, and Active Directory. You can download the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=890cd06b-abf8-4c25-91b2-f8d975cf8c07&amp;amp;displaylang=en" target="_blank" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=890cd06b-abf8-4c25-91b2-f8d975cf8c07&amp;amp;displaylang=en"&gt;&lt;span style="color: blue; text-decoration: underline;"&gt;Log Parser 2.2 here&lt;/span&gt;&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;&lt;b&gt;SQL 2005 Reporting Pack for Internet Information Service&lt;/b&gt;:&amp;nbsp;a set of 12 predefined reports and a sample database to easily visualize and author managed reports such as site summary statistics, time period, page views and user statistics, based on information extracted from IIS log files.&amp;nbsp;&lt;br&gt;&lt;a href="http://download.microsoft.com/download/c/c/b/ccbae9a4-1677-45d5-bf69-1a6c471940c9/SQL2005RPIIS.msi" target="_blank" mce_href="http://download.microsoft.com/download/c/c/b/ccbae9a4-1677-45d5-bf69-1a6c471940c9/SQL2005RPIIS.msi"&gt;&lt;span style="color: blue; text-decoration: underline;"&gt;Download it here&lt;/span&gt;&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;Install them both on your&amp;nbsp;Reporting Server. Create a database for your IT reporting, say name it ITRPT. Use the following scripts to populate the log data into the database:&lt;/p&gt;&lt;p&gt;&amp;nbsp; 
&lt;/p&gt;&lt;div&gt;
&lt;table style="background: rgb(217, 217, 217) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; border-collapse: collapse;" border="0"&gt;
&lt;colgroup&gt;
&lt;/colgroup&gt;
&lt;tbody valign="top"&gt;
&lt;tr&gt;
&lt;td style="border: 0.5pt solid black; padding-right: 7px; padding-left: 7px;"&gt;&lt;p&gt;C:\Program Files\Log Parser 2.2&amp;gt;logparser -i:IISW3C -o:SQL "SELECT * INTO ITRPT.IISLog FROM &lt;a href="file:///%5C%5Cmyreportingserver%5CREPORT_LOGS%5C*.*" mce_href="file:///\\myreportingserver\REPORT_LOGS\*.*"&gt;&lt;span style="color: blue; text-decoration: underline;"&gt;\\myreportingserver\REPORT_LOGS\*.*&lt;/span&gt;&lt;/a&gt;"&amp;nbsp; -oConnString:"Driver={SQL Server};Server=Mydatabase;db=ITRPT" -database:ITRPT -createTable:ON&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;br&gt;&lt;p&gt;The above scripts will upload the IIS Log file (located in &lt;a href="file:///%5C%5Cmyreportingserver%5CREPORT_LOGS%5C*.*" mce_href="file:///\\myreportingserver\REPORT_LOGS\*.*"&gt;&lt;span style="color: blue; text-decoration: underline;"&gt;\\myreportingserver\REPORT_LOGS\*.*&lt;/span&gt;&lt;/a&gt;&amp;nbsp;into a backend database ITRPT in a server Mydatabase. A new table IISLog will be created automatically.&lt;br&gt; &lt;/p&gt;
&lt;p&gt;You can now have access to a set of pre-defined reports to manage your Reporting Service site. The reports available including when users visit your Reports, where the users coming from, etc. In addition, by leveraging the IIS Log database table, you can perform some transformation to extract useful information: &lt;/p&gt;
&lt;div&gt;
&lt;table style="background: rgb(217, 217, 217) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; border-collapse: collapse;" border="0"&gt;
&lt;colgroup&gt;
&lt;col style="width: 734px;"&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt;
&lt;tr&gt;
&lt;td style="border: 0.5pt solid black; padding-right: 7px; padding-left: 7px;"&gt;&lt;br&gt;&lt;span style="color: blue;"&gt;SELECT&lt;/span&gt; &lt;span style="color: fuchsia;"&gt;replace&lt;/span&gt;&lt;span style="color: gray;"&gt;(&lt;/span&gt;&lt;span style="color: fuchsia;"&gt;replace&lt;/span&gt;&lt;span style="color: gray;"&gt;(&lt;/span&gt;&lt;span style="color: fuchsia;"&gt;substring&lt;/span&gt;&lt;span style="color: gray;"&gt;(&lt;/span&gt;csUriQuery&lt;span style="color: gray;"&gt;,&lt;/span&gt; 10&lt;span style="color: gray;"&gt;,&lt;/span&gt; 300&lt;span style="color: gray;"&gt;),&lt;/span&gt; &lt;span style="color: red;"&gt;'%2f'&lt;/span&gt;&lt;span style="color: gray;"&gt;,&lt;/span&gt; &lt;span style="color: red;"&gt;'/'&lt;/span&gt;&lt;span style="color: gray;"&gt;),&lt;/span&gt; &lt;span style="color: red;"&gt;'+'&lt;/span&gt;&lt;span style="color: gray;"&gt;,&lt;/span&gt; &lt;span style="color: red;"&gt;' '&lt;/span&gt;&lt;span style="color: gray;"&gt;)&lt;/span&gt; &lt;span style="color: blue;"&gt;as&lt;/span&gt; Report&lt;span style="color: gray;"&gt;,&lt;/span&gt; &lt;span style="color: fuchsia;"&gt;count&lt;/span&gt;&lt;span style="color: gray;"&gt;(*)&lt;/span&gt; &lt;span style="color: blue;"&gt;as&lt;/span&gt; total&amp;nbsp; &lt;br&gt;&lt;span style="color: blue;"&gt;FROM &lt;/span&gt;iislog&lt;br&gt;&lt;span style="color: blue;"&gt;WHERE &lt;/span&gt;csUriQuery &lt;span style="color: gray;"&gt;like&lt;/span&gt; &lt;span style="color: red;"&gt;'ItemPath=%' &lt;/span&gt;&lt;span style="color: gray;"&gt;and&lt;/span&gt; csUriQuery &lt;span style="color: gray;"&gt;not&lt;/span&gt; &lt;span style="color: gray;"&gt;like&lt;/span&gt; &lt;span style="color: red;"&gt;'%ViewMode=%' &lt;/span&gt;&lt;span style="color: gray;"&gt;and&lt;/span&gt; csUriQuery &lt;span style="color: gray;"&gt;not&lt;/span&gt; &lt;span style="color: gray;"&gt;like&lt;/span&gt; &lt;span style="color: red;"&gt;'%SelectedSubTabId=%' &lt;/span&gt;&lt;span style="color: gray;"&gt;and&lt;/span&gt; csUriQuery &lt;span style="color: gray;"&gt;not&lt;/span&gt; &lt;span style="color: gray;"&gt;like&lt;/span&gt; &lt;span style="color: red;"&gt;'%SelectedTabId=%' &lt;/span&gt;&lt;br&gt;&lt;span style="color: red;"&gt;&lt;/span&gt;&lt;span style="color: blue;"&gt;GROUP BY &lt;/span&gt;csUriQuery &lt;br&gt;&lt;span style="color: blue;"&gt;ORDER BY &lt;/span&gt;Total &lt;span style="color: blue;"&gt;DESC&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;
&lt;p&gt;Basically what the above scripts does, is to check the Report folders in your home pages and then perform calculations on the total visits on the reports. Once you got there, by using Report Designer, you can create some very useful reports. For example,&amp;nbsp;Top 20 Most Active Reports within 30 Days, Most Active Reports by Project, etc. &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;&amp;nbsp; &lt;/span&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=783144" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/williaml/archive/tags/Component+Technologies/default.aspx">Component Technologies</category></item><item><title>Using OfficeWriter as Report Designer</title><link>http://blogs.msdn.com/williaml/archive/2006/09/26/772636.aspx</link><pubDate>Tue, 26 Sep 2006 21:46:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:772636</guid><dc:creator>williaml</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/williaml/comments/772636.aspx</comments><wfw:commentRss>http://blogs.msdn.com/williaml/commentrss.aspx?PostID=772636</wfw:commentRss><wfw:comment>http://blogs.msdn.com/williaml/rsscomments.aspx?PostID=772636</wfw:comment><description>&lt;P class=Publishwithline style="MARGIN: 0in 0in 0pt"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;FONT color=#4f81bd size=1&gt;&lt;FONT face=Arial&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 1pt; COLOR: #4f81bd; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: Calibri; mso-fareast-language: ZH-CN; mso-ansi-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;?xml:namespace prefix = w ns = "urn:schemas-microsoft-com:office:word" /&gt;&lt;w:sdtPr&gt;&lt;/w:sdtPr&gt;&lt;w:Sdt id=89512082 title="Post Title" StoreItemID="X_DFBD4294-EB74-4512-8144-9E531F47C3CF" Text="t" DocPart="EEFC9E16CC6E40DEB2A52CF17BEF2312" Xpath="/ns0:BlogPostInfo/ns0:PostTitle"&gt;&lt;/SPAN&gt;&lt;FONT color=#000000 size=3&gt; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/w:Sdt&gt;
&lt;DIV style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; PADDING-BOTTOM: 2pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: #4f81bd 1pt solid; mso-border-bottom-themecolor: accent1; mso-element: para-border-div"&gt;
&lt;P class=underline style="MARGIN: 2pt 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;o:p&gt;&lt;FONT face=Arial&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P class=PadderBetweenControlandBody style="MARGIN: 0in 0in 6pt"&gt;&lt;o:p&gt;&lt;FONT face=Arial size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;/FONT&gt;&lt;/o:p&gt;&lt;FONT face=Arial&gt;If you have developed a solution using Reporting Service, the Report Builder is obvious choice for end user designing ad-hoc reports. In some situations, business users want to design a report, execute it, export the results back to excel, and then using Excel to format it. If these happen a lot, you will find using another product OfficeWriter is better for your users’ needs.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Arial&gt;OfficeWriter is a product from SoftArtisans (&lt;/FONT&gt;&lt;A href="http://www.softartisans.com/"&gt;&lt;FONT face=Arial&gt;www.softartisans.com&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Arial&gt;). It leverages Reporting Service web services and offices integration with Microsoft Excel and Word. Users can use Excel to design a SSRS report, together with the powerful formatting and calculation controls available in Excel. See a case study here:&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;A href="http://members.microsoft.com/customerevidence/search/EvidenceDetails.aspx?EvidenceID=14783&amp;amp;LanguageID=1"&gt;&lt;FONT face=Arial&gt;http://members.microsoft.com/customerevidence/search/EvidenceDetails.aspx?EvidenceID=14783&amp;amp;LanguageID=1&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Arial&gt;If you want to know more about the product, check this out &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 7.25pt 0in 0pt; mso-outline-level: 1"&gt;&lt;SPAN style="COLOR: black; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial; mso-bidi-font-size: 15.5pt; mso-font-kerning: 18.0pt"&gt;&lt;A href="http://www.microsoft.com/events/EventDetails.aspx?CMTYSvcSource=MSCOMMedia&amp;amp;Params=%7eCMTYDataSvcParams%5e%7earg+Name%3d%22ID%22+Value%3d%221032306947%22%2f%5e%7earg+Name%3d%22ProviderID%22+Value%3d%22A6B43178-497C-4225-BA42-DF595171F04C%22%2f%5e%7earg+Name%3d%22lang%22+Value%3d%22en%22%2f%5e%7earg+Name%3d%22cr%22+Value%3d%22US%22%2f%5e%7esParams%5e%7e%2fsParams%5e%7e%2fCMTYDataSvcParams%5e"&gt;&lt;FONT face=Arial color=#0000ff&gt;MSDN Webcast: Design Reports from SQL Server Reporting Services Using Microsoft Office Programs (Level 200)&lt;/FONT&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 7.25pt 0in 0pt; mso-outline-level: 1"&gt;&lt;SPAN style="COLOR: black; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial; mso-bidi-font-size: 15.5pt; mso-font-kerning: 18.0pt"&gt;&lt;o:p&gt;&lt;FONT face=Arial&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 7.25pt 0in 0pt; mso-outline-level: 1"&gt;&lt;SPAN style="COLOR: black; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial; mso-bidi-font-size: 15.5pt; mso-font-kerning: 18.0pt"&gt;&lt;FONT face=Arial&gt;In one of my customer scenarios, OfficeWriter is used with Excel to design a report that allows information can be formatted exactly as what the end-user needed. Also, the information was distributed to multiple worksheet in the excel workbook. If a user subscribes to this report, it will be generated and emailed to the user’s mailbox very day in the morning.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 7.25pt 0in 0pt; mso-outline-level: 1"&gt;&lt;SPAN style="COLOR: black; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial; mso-bidi-font-size: 15.5pt; mso-font-kerning: 18.0pt"&gt;&lt;o:p&gt;&lt;FONT face=Arial&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 7.25pt 0in 0pt; mso-outline-level: 1"&gt;&lt;SPAN style="COLOR: black; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial; mso-bidi-font-size: 15.5pt; mso-font-kerning: 18.0pt"&gt;&lt;FONT face=Arial&gt;I really like the fact that it simplifies many steps in between and offers the final formatted reports to end users. Thing about it – all these are done by end users themselves with Excel (OfficeWriter is a front end user tool, with subscription permission in your reporting solution) and no IT efforts involved! &lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 7.25pt 0in 0pt; mso-outline-level: 1"&gt;&lt;SPAN style="COLOR: black; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial; mso-bidi-font-size: 15.5pt; mso-font-kerning: 18.0pt"&gt;&lt;FONT face=Arial&gt;For Enterprise Reporting, it means empowering the business end users! :-).&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 7.25pt 0in 0pt; mso-outline-level: 1"&gt;&lt;SPAN style="COLOR: black; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial; mso-bidi-font-size: 15.5pt; mso-font-kerning: 18.0pt"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=772636" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/williaml/archive/tags/Component+Technologies/default.aspx">Component Technologies</category></item></channel></rss>