<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-132624502434377297</id><updated>2012-01-22T12:07:08.213-08:00</updated><category term='Run a report with prompts -- CognosSDK.cs'/><category term='next Cognos SDK utility'/><category term='SDK - SSO for Series 7 gateway namespace using CSharp'/><category term='Access Manager LDAP -- add new user'/><category term='Cognos 8 SDK -- Getting started with your ASP.NET C# solution'/><category term='CognosSDK.cs -- Authentication'/><category term='Remote Cognos Development Opportunity'/><category term='display the contents of a folder in the Public Folder using C# and SDK'/><category term='Creating your SDK object -- CognosSDK.cs'/><category term='Project Management Templates'/><category term='Cognos 8 SDK -- Logging on'/><category term='Cognos SDK Guide -- Step-by-step'/><category term='Do you have Cognos 8 SDK issues'/><category term='New C8 SDK Utility --- Cognos 8 Modification Check'/><category term='Cognos SDK -- cube drill down'/><category term='Cognos 8 SDK -- prompt page with optional parameters'/><category term='BI Centre SDK Guide'/><category term='Show reports for a package in Reports.aspx -- CognosSDK.cs'/><category term='cognos sdk'/><category term='Cognos SDK Developer Guide Overview'/><category term='CognosSDK.cs -- Request Report Parameters'/><category term='SDK - Bad version number in .class file'/><category term='Cognos 8 SDK Developer Guide -- development tools'/><category term='Cognos 8 SDK -- ContentManagerService passing authentication'/><category term='CognosSDK.cs -- Request Content Store Objects'/><category term='Cognos 8 SDK -- BI Centre SDK Guide Update'/><category term='Cognos 8 SDK -- example of capturing reporting history'/><category term='Output.aspx.cs -- Displaying the report results'/><title type='text'>Cognos SDK Guide</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://cognossdkguide.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>37</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-7633279556151722592</id><published>2011-02-27T12:00:00.000-08:00</published><updated>2011-02-27T12:00:25.108-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cognos sdk'/><title type='text'>five axis jars in the IBM Cognos 8 SDK java lib</title><content type='html'>&lt;a href="http://cognos8help.blogspot.com/2011/02/five-axis-jars-in-ibm-cognos-8-sdk-java.html"&gt;http://cognos8help.blogspot.com/2011/02/five-axis-jars-in-ibm-cognos-8-sdk-java.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank"  href="http://www.amazon.com/IBM-Cognos-Report-Studio-Practical/dp/0132656752?ie=UTF8&amp;tag=co074-20&amp;link_code=btl&amp;camp=213689&amp;creative=392969"&gt;IBM Cognos 10 Report Studio: Practical Examples&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=co074-20&amp;l=btl&amp;camp=213689&amp;creative=392969&amp;o=1&amp;a=0132656752" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important; padding: 0px !important" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-7633279556151722592?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/7633279556151722592'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/7633279556151722592'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2011/02/five-axis-jars-in-ibm-cognos-8-sdk-java.html' title='five axis jars in the IBM Cognos 8 SDK java lib'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-1939559085979225330</id><published>2010-08-14T10:51:00.000-07:00</published><updated>2010-08-14T10:51:29.992-07:00</updated><title type='text'>Cognos8 Help: Part 6 -- “IBM Cognos 8 Business Intelligence:  Th...</title><content type='html'>&lt;a href="http://cognos8help.blogspot.com/2010/08/part-6-ibm-cognos-8-business.html?spref=bl"&gt;Cognos8 Help: Part 6 -- “IBM Cognos 8 Business Intelligence:  Th...&lt;/a&gt;: "Part 6 -- “IBM Cognos 8 Business Intelligence:  The Official Guide” Conclusion  The “IBM Cognos 8 Business Intelligence:  The Official Guide..."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-1939559085979225330?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://cognos8help.blogspot.com/2010/08/part-6-ibm-cognos-8-business.html?spref=bl' title='Cognos8 Help: Part 6 -- “IBM Cognos 8 Business Intelligence:  Th...'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/1939559085979225330'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/1939559085979225330'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2010/08/cognos8-help-part-6-ibm-cognos-8.html' title='Cognos8 Help: Part 6 -- “IBM Cognos 8 Business Intelligence:  Th...'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-5681083005850230200</id><published>2010-01-23T16:17:00.000-08:00</published><updated>2010-03-29T18:53:20.987-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Do you have Cognos 8 SDK issues'/><title type='text'>Do you have Cognos 8 SDK issues?</title><content type='html'>Hello, you can let us know what your Cognos 8 SDK issues and we'll be more than happy to assist you.  We offer short or long term remote consulting services to help you with your Cognos 8 SDK project.&lt;br /&gt;&lt;br /&gt;Do you need support with your Cognos 8 SDK project?  If so, then email us today at businessintelligencecentre@gmail.com.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-5681083005850230200?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/5681083005850230200'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/5681083005850230200'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2010/01/do-you-have-cognos-8-sdk-issues.html' title='Do you have Cognos 8 SDK issues?'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-2465703535045532218</id><published>2009-10-09T14:50:00.000-07:00</published><updated>2010-03-29T18:53:21.031-07:00</updated><title type='text'>Cognos 8</title><content type='html'>&lt;a href="http://www.youtube.com/watch?v=3-6Leuvu0GU&amp;amp;feature=related"&gt;http://www.youtube.com/watch?v=3-6Leuvu0GU&amp;amp;feature=related&lt;/a&gt;&lt;br&gt;-- &lt;br&gt;BI CENTRE&lt;br&gt;&lt;a href="http://cognos8help.blogspot.com"&gt;http://cognos8help.blogspot.com&lt;/a&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-2465703535045532218?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/2465703535045532218'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/2465703535045532218'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2009/10/cognos-8.html' title='Cognos 8'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-4221756606378369768</id><published>2009-10-07T19:53:00.000-07:00</published><updated>2010-03-29T18:53:21.041-07:00</updated><title type='text'>Unleashing the Power of IBM Cognos SDK</title><content type='html'>    &lt;table width="443" border="0" cellpadding="0" cellspacing="0"&gt;  &lt;tbody&gt;&lt;tr valign="top"&gt;  &lt;td height="60"&gt;&lt;img alt="" class="display-img" src="http://www.ibm.com/i/c.gif" width="1" height="8"&gt;  &lt;h1&gt;Unleashing the Power of IBM Cognos SDK&lt;/h1&gt;  &lt;p id="subtitle"&gt;&lt;em&gt;By Deepesh K. Shrivastava, Wipro Technologies&lt;/em&gt;&lt;/p&gt;  &lt;img alt="" class="display-img" src="http://www.ibm.com/i/c.gif" width="1" height="6"&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;/tbody&gt;&lt;/table&gt;     	 	 	 	 	 	 			 &lt;p&gt;With increasing use of BI, users want quick access to information. BI is increasingly becoming pervasive across the organization. This demands BI capabilities embedded across different business functions and delivery portals. It also requires intuitive, easy to use user interfaces. In such cases, when deployment of BI capabilities is not just limited to trained analytical or power users; and BI offering require better usability, adherence to corporate branding look &amp;amp; feel standards, or integration along with other business functions like ordering, IBM Cognos SDK capabilities comes to rescue. &lt;/p&gt;&lt;p&gt;IBM Cognos SDK is a very powerful toolset to extend capabilities of the Cognos platform and for providing different integration &amp;amp; deployment options. Cognos SDK is built using industry standard protocols SOAP, WSDL.&lt;/p&gt;&lt;p&gt;Wipro's 'Customer Self-Service BI' framework has been built over the IBM Cognos SDK and provides simplified interface to SDK services as façade. This framework also integrates other Web 2.0 functions including AJAX.&lt;/p&gt;&lt;p&gt;When it comes to customer facing applications, organizations have elaborate set of branding look &amp;amp; feel requirements and any customer facing BI is not exception to it. Such solutions also require high level of scalability and intuitive usability. Organizations also wants any such BI offering to be made available within their e-commerce portal and at times, wants BI functions to be embedded alongside other business functions.&lt;/p&gt;&lt;p&gt;'Customer Self-Service BI' framework leveraging IBM Cognos SDK offers seamless integration possibility and leverages organizations existing investment into any branded e-commerce portal. Following are the key components of such integration –&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Corporate portal or web application &lt;/li&gt;&lt;li&gt;'Customer Self-Service BI' framework&lt;/li&gt;&lt;li&gt;IBM Cognos SDK&lt;/li&gt;&lt;li&gt;IBM Cognos BI platform &lt;/li&gt;&lt;/ul&gt;&lt;br clear="all"&gt;&lt;br&gt;-- &lt;br&gt;BI CENTRE&lt;br&gt;&lt;a href="http://cognos8help.blogspot.com"&gt;http://cognos8help.blogspot.com&lt;/a&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-4221756606378369768?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/4221756606378369768'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/4221756606378369768'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2009/10/unleashing-power-of-ibm-cognos-sdk.html' title='Unleashing the Power of IBM Cognos SDK'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-6177071307154200759</id><published>2009-10-06T09:10:00.000-07:00</published><updated>2010-03-29T18:53:21.048-07:00</updated><title type='text'>ITIL templates</title><content type='html'>&lt;a href="http://www.myitiltemplates.com/"&gt;http://www.myitiltemplates.com/&lt;/a&gt;&lt;br clear="all"&gt;&lt;br&gt;&lt;a href="http://wiki.en.it-processmaps.com/index.php/ITIL-Checklists"&gt;http://wiki.en.it-processmaps.com/index.php/ITIL-Checklists&lt;/a&gt;&lt;br&gt; &lt;br&gt;&lt;a href="http://www.itil4free.com/"&gt;http://www.itil4free.com/&lt;/a&gt;&lt;br&gt;-- &lt;br&gt;BI CENTRE&lt;br&gt;&lt;a href="http://cognos8help.blogspot.com"&gt;http://cognos8help.blogspot.com&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-6177071307154200759?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/6177071307154200759'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/6177071307154200759'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2009/10/itil-templates.html' title='ITIL templates'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-2697518879552453647</id><published>2009-07-01T09:30:00.000-07:00</published><updated>2010-03-29T18:53:21.058-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Remote Cognos Development Opportunity'/><title type='text'>Remote Cognos Development Opportunity</title><content type='html'>Does your organization require temporary support doing Cognos development?  If so, then the BI Centre can give you that short term, or long term, support to help you meet your deliverable.&lt;br /&gt;&lt;br /&gt;We can assist with model development, report development, SDK coding, testing, QA, technical documentation and even project management.&lt;br /&gt;&lt;br /&gt;Feel free to contact us today to discuss your needs.&lt;br /&gt;&lt;br /&gt;email:  businessintelligencecentre@gmail.com&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-2697518879552453647?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/2697518879552453647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/2697518879552453647'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2009/07/remote-cognos-development-opportunity.html' title='Remote Cognos Development Opportunity'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-3008115517783359153</id><published>2008-11-24T11:27:00.000-08:00</published><updated>2010-03-29T18:53:21.067-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SDK - SSO for Series 7 gateway namespace using CSharp'/><title type='text'>SDK - SSO for Series 7 gateway namespace using CSharp</title><content type='html'>using System;&lt;br /&gt;using System.Collections;&lt;br /&gt;using System.Web.Services;&lt;br /&gt;using cognosdotnet_2_0;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;namespace SetCredential&lt;br /&gt;{&lt;br /&gt;   &lt;br /&gt;    /// &lt;summary&gt;&lt;br /&gt;    /// Summary description for Class1.&lt;br /&gt;    /// &lt;/summary&gt;&lt;br /&gt;    class SetCredential&lt;br /&gt;    {&lt;br /&gt;        private cognosdotnet_2_0.CognosReportNetBinding oCrn = null;   &lt;br /&gt;   &lt;br /&gt;        propEnum [] props = {propEnum.defaultName, propEnum.searchPath};&lt;br /&gt;&lt;br /&gt;        public SetCredential(string endPoint)&lt;br /&gt;        {&lt;br /&gt;            oCrn = new CognosReportNetBinding();&lt;br /&gt;            oCrn.Url = endPoint;&lt;br /&gt;            oCrn.Credentials= System.Net.CredentialCache.DefaultCredentials;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;       &lt;br /&gt;        //&lt;br /&gt;        // get a list of the packages for the logged in user&lt;br /&gt;        //&lt;br /&gt;        public void getPackageList()&lt;br /&gt;        {&lt;br /&gt;            try&lt;br /&gt;            {&lt;br /&gt;                baseClass [] objInMyFolders = oCrn.query("//package",&lt;br /&gt;                    props, new sort[]{}, new queryOptions());&lt;br /&gt;&lt;br /&gt;                int temp = 1;   // If you've made it to here, SSO is working. Examine objInMyFolders to see the packages&lt;br /&gt;            }&lt;br /&gt;            catch (Exception e)&lt;br /&gt;            {&lt;br /&gt;                Console.Write("\n" +e.GetBaseException());&lt;br /&gt;           &lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        /// &lt;summary&gt;&lt;br /&gt;        /// The main entry point for the application.&lt;br /&gt;        /// &lt;/summary&gt;&lt;br /&gt;        [STAThread]&lt;br /&gt;        static void Main(string[] args)&lt;br /&gt;        {&lt;br /&gt;            String endPoint = "http://localhost/c84GA/cgi-bin/cognos.cgi";&lt;br /&gt;            SetCredential packageList = new SetCredential(endPoint);&lt;br /&gt;            packageList.getPackageList();&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-3008115517783359153?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/3008115517783359153'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/3008115517783359153'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/11/sdk-sso-for-series-7-gateway-namespace.html' title='SDK - SSO for Series 7 gateway namespace using CSharp'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-4232609845564751441</id><published>2008-11-24T11:25:00.000-08:00</published><updated>2010-03-29T18:53:21.081-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SDK - Bad version number in .class file'/><title type='text'>SDK - Bad version number in .class file</title><content type='html'>&lt;a href="http://cognos8help.blogspot.com/2008/11/sdk-bad-version-number-in-class-file.html"&gt;http://cognos8help.blogspot.com/2008/11/sdk-bad-version-number-in-class-file.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-4232609845564751441?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/4232609845564751441'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/4232609845564751441'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/11/sdk-bad-version-number-in-class-file.html' title='SDK - Bad version number in .class file'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-4836987782341520664</id><published>2008-10-16T19:31:00.000-07:00</published><updated>2010-03-29T18:53:21.091-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Project Management Templates'/><title type='text'>Project Management Templates</title><content type='html'>&lt;a href="http://cognos8help.blogspot.com/2008/10/project-management-templates.html"&gt;http://cognos8help.blogspot.com/2008/10/project-management-templates.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-4836987782341520664?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/4836987782341520664'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/4836987782341520664'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/10/project-management-templates.html' title='Project Management Templates'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-8032323851632563557</id><published>2008-06-02T10:51:00.000-07:00</published><updated>2010-03-29T18:53:21.100-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Access Manager LDAP -- add new user'/><title type='text'>Access Manager LDAP -- add new user</title><content type='html'>Authenticator2.Application _AuthApp = new Authenticator2.Application();    Authenticator2.Document _AuthDoc;    Authenticator2.DSConfigurations  objDSConfigs;    Authenticator2.Configuration objConfig;    objDSConfigs = ((Authenticator2.DSConfigurations)_AuthApp.DSConfigurations);    objConfig = ((Authenticator2.Configuration)objDSConfigs.Add("cognosserver",389,"dc=dev",0));    objConfig.DefaultSecuritySource = true;            _AuthDoc = ((Authenticator2.Document)((Authenticator2.AuthenticatorDocuments)_AuthApp.Documents).OpenWithBasicSignon("default","administrator","mypassword","Root User Class"));           Authenticator2.User objUser;    objUser = ((Authenticator2.User)((Authenticator2.Users)((Authenticator2.Folder)_AuthDoc.UserFolder).Users).Add("MyNewUser"));                //clean up   System.Runtime.InteropServices.Marshal.ReleaseComObject(_AuthDoc);   System.Runtime.InteropServices.Marshal.ReleaseComObject(_AuthApp);&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-8032323851632563557?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/8032323851632563557'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/8032323851632563557'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/06/access-manager-ldap-add-new-user.html' title='Access Manager LDAP -- add new user'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-8913291524806994056</id><published>2008-05-12T17:17:00.000-07:00</published><updated>2010-03-29T18:53:21.109-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='New C8 SDK Utility --- Cognos 8 Modification Check'/><title type='text'>New C8 SDK Utility --- Cognos 8 Modification Check</title><content type='html'>The BI Centre C8 Modification Check provides a Cognos SDK developer with a workable C# solution that will allow you to:&lt;br /&gt;&lt;br /&gt;· Search the Content Store for items that have been modified after a selected date value&lt;br /&gt;&lt;br /&gt;For example, if you were looking for all reports that were modified on June 3rd, 2008 then you would select the date June 2nd, 2008. The code will search for all items that have been modified after the selected date value from the date control.&lt;br /&gt;&lt;br /&gt;The results of the search are then rendered to a text box control.&lt;br /&gt;&lt;br /&gt;&lt;form action="https://www.paypal.com/cgi-bin/webscr" method="post"&gt;&lt;br /&gt;&lt;input type="hidden" name="cmd" value="_s-xclick"&gt;&lt;br /&gt;&lt;input type="image" src="https://www.paypal.com/en_US/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!"&gt;&lt;br /&gt;&lt;img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1"&gt;&lt;br /&gt;&lt;input type="hidden" name="encrypted" value="-----BEGIN PKCS7-----MIIHfwYJKoZIhvcNAQcEoIIHcDCCB2wCAQExggEwMIIBLAIBADCBlDCBjjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtQYXlQYWwgSW5jLjETMBEGA1UECxQKbGl2ZV9jZXJ0czERMA8GA1UEAxQIbGl2ZV9hcGkxHDAaBgkqhkiG9w0BCQEWDXJlQHBheXBhbC5jb20CAQAwDQYJKoZIhvcNAQEBBQAEgYALPyKtfaE5mnVve6ayH0AFyYFF6smCh55qR5XpzGUMD0SZUoJViFvdEebdrdV971wmB9gb0yZcyyfvc3Bi9ToKjQXu9CUu3XgOfFjOOAsR0jFFXmjuE9U26SgEk5hy2YG/H+Tx+4k4hzI9DqEUWa4tNbQnym7WL1xtXiYg2FUIszELMAkGBSsOAwIaBQAwgfwGCSqGSIb3DQEHATAUBggqhkiG9w0DBwQI8NW4BmGBVc6Agdh9TPr2Miw0lCvE+tnv0RIkS8bJqqwvrY+3aFNMv0OwfB5kNmTp9RKWKGsr6WHDU0rQJ74CEuY6of8f7B7ah89DRlLW5cofdr0ixGnFhTfWCsbUR6zrnYxVwvYj38kbqse8yXOa0OAcOr3PcUPq554cVcAXANRN1XI4p5pq0WcHRGpbjyOmNnDK42l/lFLgiYfTJIN9oRXcgHdFMNwi+1dg7Su/F0VJTHLX0D5oB0TYJAEwcBpQGRz9GvVTwwCiQSoQTwXS+6Gz3hDRcYi143OulXUN3erQGU6gggOHMIIDgzCCAuygAwIBAgIBADANBgkqhkiG9w0BAQUFADCBjjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtQYXlQYWwgSW5jLjETMBEGA1UECxQKbGl2ZV9jZXJ0czERMA8GA1UEAxQIbGl2ZV9hcGkxHDAaBgkqhkiG9w0BCQEWDXJlQHBheXBhbC5jb20wHhcNMDQwMjEzMTAxMzE1WhcNMzUwMjEzMTAxMzE1WjCBjjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtQYXlQYWwgSW5jLjETMBEGA1UECxQKbGl2ZV9jZXJ0czERMA8GA1UEAxQIbGl2ZV9hcGkxHDAaBgkqhkiG9w0BCQEWDXJlQHBheXBhbC5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMFHTt38RMxLXJyO2SmS+Ndl72T7oKJ4u4uw+6awntALWh03PewmIJuzbALScsTS4sZoS1fKciBGoh11gIfHzylvkdNe/hJl66/RGqrj5rFb08sAABNTzDTiqqNpJeBsYs/c2aiGozptX2RlnBktH+SUNpAajW724Nv2Wvhif6sFAgMBAAGjge4wgeswHQYDVR0OBBYEFJaffLvGbxe9WT9S1wob7BDWZJRrMIG7BgNVHSMEgbMwgbCAFJaffLvGbxe9WT9S1wob7BDWZJRroYGUpIGRMIGOMQswCQYDVQQGEwJVUzELMAkGA1UECBMCQ0ExFjAUBgNVBAcTDU1vdW50YWluIFZpZXcxFDASBgNVBAoTC1BheVBhbCBJbmMuMRMwEQYDVQQLFApsaXZlX2NlcnRzMREwDwYDVQQDFAhsaXZlX2FwaTEcMBoGCSqGSIb3DQEJARYNcmVAcGF5cGFsLmNvbYIBADAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4GBAIFfOlaagFrl71+jq6OKidbWFSE+Q4FqROvdgIONth+8kSK//Y/4ihuE4Ymvzn5ceE3S/iBSQQMjyvb+s2TWbQYDwcp129OPIbD9epdr4tJOUNiSojw7BHwYRiPh58S1xGlFgHFXwrEBb3dgNbMUa+u4qectsMAXpVHnD9wIyfmHMYIBmjCCAZYCAQEwgZQwgY4xCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEUMBIGA1UEChMLUGF5UGFsIEluYy4xEzARBgNVBAsUCmxpdmVfY2VydHMxETAPBgNVBAMUCGxpdmVfYXBpMRwwGgYJKoZIhvcNAQkBFg1yZUBwYXlwYWwuY29tAgEAMAkGBSsOAwIaBQCgXTAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0wODA1MTMwMDA2MzFaMCMGCSqGSIb3DQEJBDEWBBRSpeeM6rDX0U9cRfupR6f5hn4HqDANBgkqhkiG9w0BAQEFAASBgBn11LjPX9WKeuzpggDnw0WHwZ5B8HQYL3f/idYl7J5k0ijWvxvA3mOcTIUfFzKD8C55qp3B3wabNJUHvVUBvMTAoUI+sXJaIPgkhXHA1cbYA3jcL3WGBaxjkEcyScv02eddYlFgJEy5hYYBYovt6mIBOqByk+xyK2faw+EPZ++k-----END PKCS7-----&lt;br /&gt;"&gt;&lt;br /&gt;&lt;/form&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-8913291524806994056?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/8913291524806994056'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/8913291524806994056'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/05/new-c8-sdk-utility-cognos-8.html' title='New C8 SDK Utility --- Cognos 8 Modification Check'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-1667368465042977875</id><published>2008-05-02T05:42:00.000-07:00</published><updated>2010-03-29T18:53:21.117-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='next Cognos SDK utility'/><title type='text'>next Cognos SDK utility</title><content type='html'>We are currently working on a Cognos SDK utility that will return query a namespace to return all of the groups, users and their assigned privileges.  The results will be added to .txt file.&lt;br /&gt;&lt;br /&gt;&lt;a href="mailto:businessintelligencecentre@gmail.com?subject=Cognos%20SDK%User%Utility"&gt;Email &lt;/a&gt;us today if you would like to be notified when this utility has been completed.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-1667368465042977875?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/1667368465042977875'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/1667368465042977875'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/05/next-cognos-sdk-utility.html' title='next Cognos SDK utility'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-4911171371379196330</id><published>2008-04-12T08:39:00.000-07:00</published><updated>2010-03-29T18:53:21.126-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cognos 8 SDK -- ContentManagerService passing authentication'/><title type='text'>Cognos 8 SDK -- ContentManagerService passing authentication</title><content type='html'>If the logon was successful, the ContentManagerService becomes an authenticated service and a string known as a CAM Passport will be sent back to the SDK application in the BiBusHeader. When an SDK application creates an object to represent a Cognos 8 service, that object will contain a property called BIBusHeader. The BIBusHeader represents the SOAP header that is used to communicate with the Cognos 8 server. Within the BIBusHeader, is a property named CAM which in turn contains a property named CAMPassport. The CAM Passport returned by the logon() method is stored in the&lt;br /&gt;CAMPassport property.&lt;br /&gt;&lt;br /&gt;In an SDK application, the CAM Passport does not automatically propagate to other services that might be used within the application. Since the ContentManagerService is the only service than can logon and logoff, there needs to be ability to assign the CAM Passport to other services that the SDK application might require (such as the ReportService). This assignment is done simply by copying the BIBusHeader of the ContentManagerService to the BIBusHeader of the other service, thereby making that service an authenticated service.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-4911171371379196330?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/4911171371379196330'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/4911171371379196330'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/04/cognos-8-sdk-contentmanagerservice.html' title='Cognos 8 SDK -- ContentManagerService passing authentication'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-3811699615856594558</id><published>2008-04-12T08:32:00.000-07:00</published><updated>2010-03-29T18:53:21.137-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cognos 8 SDK -- Logging on'/><title type='text'>Cognos 8 SDK -- Logging on</title><content type='html'>Unless Anonymous access is allowed, when a Cognos 8 SDK application is connected to the Cognos 8 server the application has no implied rights or access permissions. The Cognos 8 SDK application needs to login just as a general user would login to the Cognos portal. &lt;br /&gt;&lt;br /&gt;If anonymous access is allowed, the Cognos 8 SDK application will be granted the same rights and permissions as the Anonymous user from the Cognos namespace. If anonymous access is not allowed and a Cognos 8 SDK application does not login, an exception will occur when the SDK application tries to perform an action such as querying the content store or running a report.&lt;br /&gt;&lt;br /&gt;All logons and logoffs are performed through the ContentManagerService using the logon() and logoff() methods. None of the other Cognos 8 services can perform a logon or logoff operation.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-3811699615856594558?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/3811699615856594558'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/3811699615856594558'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/04/cognos-8-sdk-logging-on.html' title='Cognos 8 SDK -- Logging on'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-49088636790382554</id><published>2008-03-02T17:48:00.000-08:00</published><updated>2010-03-29T18:53:21.144-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cognos 8 SDK -- example of capturing reporting history'/><title type='text'>Cognos 8 SDK -- example of capturing reporting history</title><content type='html'>private boolean reportJobStatus()&lt;br /&gt;&lt;br /&gt;	{&lt;br /&gt;&lt;br /&gt;		boolean blnError 	= false;&lt;br /&gt;&lt;br /&gt;		Vector reportHistories 	= getReportHistories();&lt;br /&gt;&lt;br /&gt;		String reportName 	= "";&lt;br /&gt;&lt;br /&gt;		&lt;br /&gt;&lt;br /&gt;		PropEnum props[] = new PropEnum[]{PropEnum.searchPath, PropEnum.defaultName, PropEnum.detail, PropEnum.detailTime, 				PropEnum.severity};&lt;br /&gt;&lt;br /&gt;		Sort sort = new Sort();&lt;br /&gt;&lt;br /&gt;		sort.setOrder(OrderEnum.ascending);&lt;br /&gt;&lt;br /&gt;		sort.setPropName(PropEnum.defaultName);&lt;br /&gt;&lt;br /&gt;		Sort[] sortOrder = new Sort[]{sort};&lt;br /&gt;&lt;br /&gt;		&lt;br /&gt;&lt;br /&gt;		try&lt;br /&gt;&lt;br /&gt;		{&lt;br /&gt;&lt;br /&gt;			if(reportHistories.size() &gt; 0)&lt;br /&gt;&lt;br /&gt;			{&lt;br /&gt;&lt;br /&gt;				for(int i =0; i &lt; reportsearchpath =" &lt;font" style="font-weight: bold;"&gt;(String)reportHistories.get(i) + "//historyDetail";&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;					reportName = getReportName(reportSearchPath);&lt;br /&gt;&lt;br /&gt;					BaseClass bc[] = cmService.query(new SearchPathMultipleObject(reportSearchPath ), props, sortOrder, new QueryOptions());					     					 &lt;br /&gt;&lt;br /&gt;					if(bc != null &amp;amp;&amp;amp; bc.length &gt; 0)&lt;br /&gt;&lt;br /&gt;					{&lt;br /&gt;&lt;br /&gt;						&lt;span style="font-weight: bold;"&gt;for(int j =0; j &lt; historydetail =" (HistoryDetail)bc[j];" blnerror =" true;"&gt;" + reportName + "" +&lt;br /&gt;&lt;br /&gt;								" " + historyDetail.getDetailTime().getValue().getTime() + "" +&lt;br /&gt;&lt;br /&gt;								" " + historyDetail.getDetail().getValue() + "";&lt;br /&gt;&lt;br /&gt;							  }&lt;br /&gt;&lt;br /&gt;						  } &lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;br /&gt;&lt;br /&gt;&lt;/b&gt;					  }&lt;br /&gt;&lt;br /&gt;				}&lt;br /&gt;&lt;br /&gt;			}&lt;br /&gt;&lt;br /&gt;		}&lt;br /&gt;&lt;br /&gt;		catch(Exception e)&lt;br /&gt;&lt;br /&gt;		{			System.out.println("RunJobNowAndCaptureError::reportJobStatus()");&lt;br /&gt;&lt;br /&gt;			e.printStackTrace();&lt;br /&gt;&lt;br /&gt;		}		&lt;br /&gt;&lt;br /&gt;		return blnError;&lt;br /&gt;&lt;br /&gt;	}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-49088636790382554?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/49088636790382554'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/49088636790382554'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/03/cognos-8-sdk-example-of-capturing.html' title='Cognos 8 SDK -- example of capturing reporting history'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-2051434494965865701</id><published>2008-02-25T17:30:00.000-08:00</published><updated>2010-03-29T18:53:21.162-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cognos SDK -- cube drill down'/><title type='text'>Cognos SDK -- cube drill down</title><content type='html'>&lt;div&gt;Here is a C# Cognos SDK code snippet that shows the ability to drill down into a cube report by using the Cognos SDK.&amp;nbsp; Take note of the bolded code lines below.&amp;nbsp; You will need to use the Report Service&amp;#39;s .drill method and pass in values for the drillOptionParameterValues property.&lt;/div&gt;  &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;&lt;strong&gt;simpleParmValueItem item = new simpleParmValueItem();&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; item.use = &amp;quot;[great_outdoors_company].[Years].[Years].[Year]-&amp;gt;:[PC].[@MEMBER].[20050101-20051231]&amp;quot;;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; item.inclusive = true;&lt;/strong&gt;&lt;/div&gt;  &lt;div&gt;&lt;strong&gt;&lt;/strong&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;&lt;strong&gt;option[] drillOptions = new option[1];&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drillOptionParameterValues d1 = new drillOptionParameterValues();&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;a href="http://d1.name"&gt;d1.name&lt;/a&gt; = drillOptionEnum.down;&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; d1.value = parameters;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drillOptions[0] = d1;&lt;/strong&gt;&lt;/div&gt; &lt;div&gt;&lt;strong&gt;&lt;/strong&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;&lt;strong&gt;response = this.rptService.drill(response.primaryRequest, parameters, drillOptions);&lt;/strong&gt;&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;private void GoToDrillDown(reportService1 rptService)&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (this.rptService == null)&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.rptService = rptService;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String reportPath = &amp;quot;/content/package[@name=&amp;#39;Great Outdoors Company&amp;#39;]/report[@name=&amp;#39;MyTestReport&amp;#39;]&amp;quot;;&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String savePath = &amp;quot;c:\\temp&amp;quot;;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; parameterValue[] parameters = new parameterValue[1];&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; asynchReply response;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; searchPathSingleObject reportPathObj = new searchPathSingleObject();&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; reportPathObj.Value = reportPath;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; option[] runOptions = new option[6];&lt;/div&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runOptionBoolean saveOutput = new runOptionBoolean();&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; saveOutput.name = runOptionEnum.saveOutput;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; saveOutput.value = false;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runOptions[0] = saveOutput;&lt;/p&gt;  &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Specify the output format.&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runOptionStringArray outputFormat = new runOptionStringArray();&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; outputFormat.name = runOptionEnum.outputFormat;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; outputFormat.value = new String[] { &amp;quot;HTML&amp;quot; };&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runOptions[1] = outputFormat;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Set the report not to prompt as we pass the parameters if any&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runOptionBoolean rop = new runOptionBoolean();&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;a href="http://rop.name"&gt;rop.name&lt;/a&gt; = runOptionEnum.prompt;&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rop.value = false;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runOptions[2] = rop;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runOptionInt maxRows = new runOptionInt();&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; maxRows.name = runOptionEnum.verticalElements;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; maxRows.value = 20;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runOptions[3] = maxRows;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; option[] drillOptions = new option[1];&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drillOptionParameterValues d1 = new drillOptionParameterValues();&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;a href="http://d1.name"&gt;d1.name&lt;/a&gt; = drillOptionEnum.down;&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; d1.value = parameters;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drillOptions[0] = d1;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Set the option to always have the primaryRequest in the response &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; asynchOptionBoolean includePrimaryRequest = new asynchOptionBoolean();&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; includePrimaryRequest.name = asynchOptionEnum.alwaysIncludePrimaryRequest;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; includePrimaryRequest.value = true;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runOptions[4] = includePrimaryRequest;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runOptionLanguageArray roOutputFormat = new runOptionLanguageArray();&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; roOutputFormat.name = runOptionEnum.outputLocale;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String[] fmt = { &amp;quot;en-us&amp;quot; };&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; roOutputFormat.value = fmt;&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runOptions[5] = roOutputFormat;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Run the report&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; response = this.rptService.run(reportPathObj, new parameterValue[] { }, runOptions);&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //If response is not immediately complete, call wait until complete&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (!(response.status == (asynchReplyStatusEnum.complete)))&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (!(response.status == asynchReplyStatusEnum.complete))&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //before calling wait, double check that it is okay&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (hasSecondaryRequest(response, &amp;quot;wait&amp;quot;))&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; response =&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.rptService.wait(&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; response.primaryRequest,&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new parameterValue[] { },&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new option[] { });&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.Write(&amp;quot;Error: Wait method not available as expected.&amp;quot;);&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //check if output is ready&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (outputIsReady(response))&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; response =&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.rptService.getOutput(response.primaryRequest, new parameterValue[] { },&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new option[] { });&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.Write(&amp;quot;output is not ready!&amp;quot;);&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String data = getOutputPage(response);&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Write the report output to file system&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.Write(&amp;quot;Writing the output of the original report..&amp;quot;);&lt;/p&gt; &lt;p&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StreamWriter sw = File.CreateText(savePath + &amp;quot;&lt;a href="file://original.html/"&gt;\\original.html&lt;/a&gt;&amp;quot;);&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sw.Write(data);&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sw.Flush();&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sw.Close();&lt;/p&gt;  &lt;p&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Drill down in the report&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //set up drill down parameter.&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; simpleParmValueItem item = new simpleParmValueItem();&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; item.use = &amp;quot;[great_outdoors_company].[Years].[Years].[Year]-&amp;gt;:[PC].[@MEMBER].[20050101-20051231]&amp;quot;;&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; item.inclusive = true;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; parmValueItem[] pvi = new parmValueItem[1];&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pvi[0] = item;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; parameters[0] = new parameterValue();&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; parameters[0].name = &amp;quot;Year&amp;quot;;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; parameters[0].value = pvi;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; response = this.rptService.drill(response.primaryRequest, parameters, drillOptions);&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (!(response.status == (asynchReplyStatusEnum.complete)))&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (!(response.status == asynchReplyStatusEnum.complete))&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //before calling wait, double check that it is okay&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (hasSecondaryRequest(response, &amp;quot;wait&amp;quot;))&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; response =&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.rptService.wait(&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; response.primaryRequest,&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new parameterValue[] { },&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new option[] { });&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.Write(&amp;quot;Error: Wait method not available as expected.&amp;quot;);&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //check if output is ready&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (outputIsReady(response))&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; response =&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.rptService.getOutput(response.primaryRequest, new parameterValue[] { },&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new option[] { });&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.Write(&amp;quot;output is not ready!&amp;quot;);&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data = getOutputPage(response);&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Write the report output to file system&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.Write(&amp;quot;Writing the output of the drill down report..&amp;quot;);&lt;/p&gt; &lt;p&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StreamWriter sw2 = File.CreateText(savePath + &amp;quot;&lt;a href="file://drilldown.html/"&gt;\\drilldown.html&lt;/a&gt;&amp;quot;);&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sw2.Write(data);&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sw2.Flush();&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sw2.Close();&lt;/p&gt;  &lt;p&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // release the conversation to free resources.&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.rptService.release(response.primaryRequest);&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch (Exception ex)&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(&amp;quot;Error: &amp;quot; + ex.Message.ToString());&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Console.WriteLine(ex.StackTrace);&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-2051434494965865701?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/2051434494965865701'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/2051434494965865701'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/02/cognos-sdk-cube-drill-down.html' title='Cognos SDK -- cube drill down'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-6548016520819870181</id><published>2008-02-19T16:12:00.000-08:00</published><updated>2010-03-29T18:53:21.197-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cognos 8 SDK -- prompt page with optional parameters'/><title type='text'>Cognos 8 SDK -- prompt page with optional parameters</title><content type='html'>If you need to execute a Report Studio report that has optional parameters defined on the prompt page then you should code your Cognos SDK application to pass an empty parameter instead of an empty string.&lt;br /&gt;&lt;br /&gt;     &lt;br /&gt;     // parameter values &lt;br /&gt;     ParmValueItem pvi[] = new ParmValueItem[1];&lt;br /&gt;&lt;br /&gt;     // If you pass an empty string to an optional parameter&lt;br /&gt;     // it will assume that you want to match an empty string in&lt;br /&gt;     // the filter. To get the desired behaviour, pass an empty&lt;br /&gt;     // parameter value&lt;br /&gt;     &lt;span style="font-weight:bold;"&gt;if (!inputValue.equalsIgnoreCase("")) pvi[0] = item1;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;     // Assign the values to the parameter.&lt;br /&gt;     params[i] = new ParameterValue();&lt;br /&gt;     params[i].setName(prm[i].getName());&lt;br /&gt;     params[i].setValue(pvi);&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-6548016520819870181?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/6548016520819870181'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/6548016520819870181'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/02/cognos-8-sdk-prompt-page-with-optional.html' title='Cognos 8 SDK -- prompt page with optional parameters'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-3300496009139332390</id><published>2008-02-14T17:04:00.000-08:00</published><updated>2010-03-29T18:53:21.214-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='display the contents of a folder in the Public Folder using C# and SDK'/><title type='text'>display the contents of a folder in the Public Folder using C# and SDK</title><content type='html'>Here is the content store request in order to find all of the reports that exist under a specified folder.&lt;br /&gt;&lt;br /&gt;baseClass[] bc = crn.query( "/content/folder[@name='ABCDEFG']//report", props, s, qo );&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-3300496009139332390?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/3300496009139332390'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/3300496009139332390'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/02/display-contents-of-folder-in-public.html' title='display the contents of a folder in the Public Folder using C# and SDK'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-5014661897342200203</id><published>2008-02-12T16:59:00.000-08:00</published><updated>2010-03-29T18:53:21.225-07:00</updated><title type='text'>Cognos SDK Guide by BI Centre Sample?</title><content type='html'>Hello, did you want to have a quick preview of the guide before purchasing?  If so then send us an &lt;a href="Mailto:businessintelligencecentre@gmail.com?subject=Free%20Preview"&gt;email&lt;/a&gt; requesting your free sample of the guide today.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-5014661897342200203?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/5014661897342200203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/5014661897342200203'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/02/cognos-sdk-guide-by-bi-centre-sample.html' title='Cognos SDK Guide by BI Centre Sample?'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-6197418037512266984</id><published>2008-02-02T12:45:00.000-08:00</published><updated>2010-03-29T18:53:21.232-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Output.aspx.cs -- Displaying the report results'/><title type='text'>Output.aspx.cs -- Displaying the report results</title><content type='html'>Now that the end user is able to interact with the report’s prompt page we need to execute the report and display the report values to our Output.aspx page.  The Output.aspx.cs logic will contain a reference to the CognosSDK.cs function named resolvePrompts().  This function is used to determine the prompt type and prompt value that was executed on the report’s prompt page.  These parameter values are then used to satisfy the parameter value collection that is passed in to the executeReport().&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;try&lt;br /&gt;   {&lt;br /&gt;    _frmData = Request.Form;&lt;br /&gt;    _selectedPkg = _frmData.GetValues("hidPkgName").GetValue(0).ToString();     &lt;br /&gt;    _selectedRpt = _frmData.GetValues("hidRptName").GetValue(0).ToString();   &lt;br /&gt;    _path = "/content/package[@name='" + _selectedPkg + "']/report[@name='" + _selectedRpt + "']";   &lt;br /&gt;&lt;br /&gt;    asynchDetail[] _paramDetail = _cogSDK.GetParams(_selectedPkg,_selectedRpt,_rptService);&lt;br /&gt;    asynchDetailParameters _params = (asynchDetailParameters)_paramDetail[0];    &lt;br /&gt;    int _pCount =_params.parameters.Length;&lt;br /&gt;        &lt;br /&gt;    parameterValue[] _pv = _cogSDK.resolvePrompts(_frmData, _pCount);&lt;br /&gt;    string[] reportFormat = {"HTML"};&lt;br /&gt;    &lt;br /&gt;    strHTML = _cogSDK.executeReport(_path, _pv, _rptService, reportFormat, false);&lt;br /&gt;    Response.Write(strHTML);    &lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;   catch(Exception ex)&lt;br /&gt;   {&lt;br /&gt;    _ErrMsg = ex.Message.ToString();&lt;br /&gt;    Response.Write(_ErrMsg);&lt;br /&gt;   }&lt;br /&gt;   &lt;br /&gt;   return;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;We have already seen that the executeReport() will return a string variable value of the report’s output.  This is achieved by applying an asynchReply variable to the Report Service’s .run() method.&lt;br /&gt;&lt;br /&gt;try&lt;br /&gt;   {&lt;br /&gt;    spSingle.Value = reportSearchPath;&lt;br /&gt;    asynchReply C8reply = reportService.run(spSingle, pv ,arrRunOpts);&lt;br /&gt;            &lt;br /&gt;    if (C8reply != null)&lt;br /&gt;    { &lt;br /&gt;     strHTML = getOutputPage(C8reply); &lt;br /&gt;          &lt;br /&gt;     return strHTML;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    else &lt;br /&gt;    {&lt;br /&gt;     return null;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;   }&lt;br /&gt;   catch (SoapException exSoap)&lt;br /&gt;   {&lt;br /&gt;    ExHandler exCognos = new ExHandler(exSoap);&lt;br /&gt;    return _ErrMsg = exCognos.Details + " :-: " + exCognos.Message +  " :-: " + exCognos.Severity +  " :-: " + exCognos.ErrorCode;&lt;br /&gt;   }&lt;br /&gt;   catch (Exception ex)&lt;br /&gt;   {&lt;br /&gt;    return _ErrMsg = ex.Message.ToString();&lt;br /&gt;   }  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Output.aspx.cs will finally pass this string value to the page’s Reponse.Write() and render the dataset to the end user.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-6197418037512266984?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/6197418037512266984'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/6197418037512266984'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/02/outputaspxcs-displaying-report-results.html' title='Output.aspx.cs -- Displaying the report results'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-1646692077248271314</id><published>2008-01-24T16:01:00.000-08:00</published><updated>2010-03-29T18:53:21.252-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Run a report with prompts -- CognosSDK.cs'/><title type='text'>Run a report with prompts -- CognosSDK.cs</title><content type='html'>Our working sample includes Report Studio reports that all contain prompts.  In order for the reports to be executed they need to have their prompt page parameter objects populated with a valid parameter value.   In order to achieve this we need to display the report's prompt page to the end user so that they can enter the prompt value into the appropriate prompt control.   The approach that we will use to render the report's prompt page to the end user is to execute the selected report and satisfy the method's signature with an empty parameter value collection.   Passing in an empty parameter value collection forces the Report Service to place the request into a 'prompting' status.  We can then retrieve the request's HTML representation of the report's prompt page, and then render this HTML string to the ASP.NET page. &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Note that our executeReport() method is looking for a Boolean value to state whether or not to prompt.   When we want the prompt page then we set this Boolean value to True.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;public string executeReport(string reportSearchPath,parameterValue[] pv, reportService1 reportService, string[] strFormat, bool blnPrompt){&lt;br /&gt;&lt;br /&gt;           &lt;br /&gt;&lt;br /&gt;………… method body………&lt;br /&gt;&lt;br /&gt;…………&lt;br /&gt;&lt;br /&gt;…………&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;           &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;The executeReport() method contains an asynchReply variable that is used to capture the conversation context of the request.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;asynchReply C8reply = reportService.run(spSingle, pv ,arrRunOpts);&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;We will then pass the C8reply variable as an input parameter to the getOutputPage() method.   This method will be used to populate a string variable with a string representation of the prompt page's HTML.  It is this value that is written to PromptPage.aspx and displays the report's prompt page to the end user.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;strHTML = getOutputPage(C8reply);&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;public string getOutputPage(asynchReply response)&lt;br /&gt;&lt;br /&gt;            {&lt;br /&gt;&lt;br /&gt;                  asynchDetailReportOutput reportOutput = null;&lt;br /&gt;&lt;br /&gt;                 &lt;br /&gt;&lt;br /&gt;                  try&lt;br /&gt;&lt;br /&gt;                  {&lt;br /&gt;&lt;br /&gt;                        for (int i = 0; i &lt; response.details.Length; i++)&lt;br /&gt;&lt;br /&gt;                        {&lt;br /&gt;&lt;br /&gt;                              if (response.details[i] is asynchDetailReportOutput)&lt;br /&gt;&lt;br /&gt;                              {&lt;br /&gt;&lt;br /&gt;                                    reportOutput =&lt;br /&gt;&lt;br /&gt;                                          (asynchDetailReportOutput)response.details[i];&lt;br /&gt;&lt;br /&gt;                                    break;&lt;br /&gt;&lt;br /&gt;                              }&lt;br /&gt;&lt;br /&gt;                        }&lt;br /&gt;&lt;br /&gt;                  }&lt;br /&gt;&lt;br /&gt;                  catch (SoapException exSoap)&lt;br /&gt;&lt;br /&gt;                  {&lt;br /&gt;&lt;br /&gt;                        ExHandler exCognos = new ExHandler(exSoap);&lt;br /&gt;&lt;br /&gt;                        return _ErrMsg = exCognos.Details + " :-: " + exCognos.Message +  " :-: " + exCognos.Severity +  " :-: " + exCognos.ErrorCode;&lt;br /&gt;&lt;br /&gt;                  }&lt;br /&gt;&lt;br /&gt;                 &lt;br /&gt;&lt;br /&gt;                  //text based output is split into pages -- return the current page&lt;br /&gt;&lt;br /&gt;                  return reportOutput.outputPages[0].ToString();&lt;br /&gt;&lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt;Before we display the prompt page to the end user we want make some modifications to the HTML that was returned.   Our CustomizeHTML() helper function is used to update the HTML in order to work with our sample web solution.  The main change will involve adding our own customized finish button to the prompt page to control the form's submission to Output.aspx.  This will also enable us to add our own JavaScript function to the button's onClick() event.  This is achieved in the CognosSDKHelper.js file.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-1646692077248271314?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/1646692077248271314'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/1646692077248271314'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/01/run-report-with-prompts-cognossdkcs.html' title='Run a report with prompts -- CognosSDK.cs'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-3066551064374857086</id><published>2008-01-21T08:33:00.000-08:00</published><updated>2010-03-29T18:53:21.280-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Show reports for a package in Reports.aspx -- CognosSDK.cs'/><title type='text'>Show reports for a package in Reports.aspx -- CognosSDK.cs</title><content type='html'>When you query the Cognos Content Store it is important to remember that you can search for one specific item, or you can search for all objects of a specified type.  For example, if you wanted to find the details for one particular report item then you would use the following syntax for your search path value.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;spSingle.Value = "/content/package[@name='" + _pkgName + "']/report[@name='" + _rptName + "']";&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;However, if you wanted to find all reports for a specified package then you would use the following syntax for your search path value.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;_reportPath = "/content/package[@name='" + _package + "']/report//*";&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;This is the same logic if you wanted to find all packages that exist in the Cognos Content Store.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;_packagePath = "/content//package/*";&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-3066551064374857086?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/3066551064374857086'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/3066551064374857086'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/01/show-reports-for-package-in-reportsaspx.html' title='Show reports for a package in Reports.aspx -- CognosSDK.cs'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-6366939612686571907</id><published>2008-01-17T06:54:00.000-08:00</published><updated>2010-03-29T18:53:21.309-07:00</updated><title type='text'>Show All Packages in Default.aspx -- CognosSDK.cs</title><content type='html'>&lt;div class=Section1&gt;  &lt;p class=MsoNormal&gt;&lt;b&gt;&lt;u&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial;font-weight:bold'&gt;Show all packages&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;b&gt;&lt;u&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial;font-weight:bold'&gt;&lt;o:p&gt;&lt;span style='text-decoration:none'&gt;&amp;nbsp;&lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;The entry point to our Cognos SDK web solution will be &lt;b&gt;&lt;span style='font-weight:bold'&gt;Default.aspx&lt;/span&gt;&lt;/b&gt;.&amp;nbsp; This will be a basic web page that will only contain a listbox control and a command button.&amp;nbsp; The listbox will be populated with all of the package items that exist in the specified Cognos Content Store.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;b&gt;&lt;u&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial;font-weight:bold'&gt;&lt;o:p&gt;&lt;span style='text-decoration:none'&gt;&amp;nbsp;&lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;b&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial;font-weight:bold'&gt;Default.aspx&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial'&gt; will call the &lt;b&gt;&lt;span style='font-weight:bold'&gt;CognosSDK.cs&lt;/span&gt;&lt;/b&gt; object in order to query the Cognos Content Store for a list of Content Store objects.&amp;nbsp; In this case, we will only be interested in retrieving the list of all Content Store package objects that are of the type packageConfiguration.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;The &lt;b&gt;&lt;span style='font-weight:bold'&gt;Default.aspx.cs&lt;/span&gt;&lt;/b&gt; &lt;i&gt;&lt;span style='font-style:italic'&gt;PageLoad() &lt;/span&gt;&lt;/i&gt;event will contain the following C# code.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;if (!Page.IsPostBack)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; baseClass[] _bc =&amp;nbsp; _cogSDK.getObjects(_cmService, _CSTypePkg, null);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (_bc != null)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for(int i=0; i&amp;lt;_bc.Length; i++)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ( _bc[i] is packageConfiguration)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lstPackages.Items.Add(_bc[i].defaultName.value.ToString());&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;b&gt;&lt;u&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial;font-weight:bold'&gt;&lt;o:p&gt;&lt;span style='text-decoration:none'&gt;&amp;nbsp;&lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;b&gt;&lt;u&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial;font-weight:bold'&gt;&lt;o:p&gt;&lt;span style='text-decoration:none'&gt;&amp;nbsp;&lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;b&gt;&lt;u&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial;font-weight:bold'&gt;&lt;o:p&gt;&lt;span style='text-decoration:none'&gt;&amp;nbsp;&lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;This will require &lt;b&gt;&lt;span style='font-weight:bold'&gt;the CognosSDK.cs&lt;/span&gt;&lt;/b&gt; object to be instantiated in order to access the &lt;i&gt;&lt;span style='font-style:italic'&gt;getObjects()&lt;/span&gt;&lt;/i&gt; method.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-indent:.5in'&gt;&lt;b&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";font-weight:bold'&gt;public baseClass[] getObjects(contentManagerService1 _cmService, string _path, string _package)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:10.0pt; font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-6366939612686571907?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/6366939612686571907'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/6366939612686571907'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/01/show-all-packages-in-defaultaspx.html' title='Show All Packages in Default.aspx -- CognosSDK.cs'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-73502763302727184</id><published>2008-01-14T09:45:00.000-08:00</published><updated>2010-03-29T18:53:21.469-07:00</updated><title type='text'>Cognos SDK Guide by BI Centre -- web.config</title><content type='html'>&lt;div class=Section1&gt;  &lt;p&gt;&lt;font size=2 face=Arial&gt;&lt;span lang=EN style='font-size:11.0pt;font-family: Arial'&gt;Here is a concise definition for a web.config file from &lt;/span&gt;&lt;/font&gt;&lt;font size=2 face=Arial&gt;&lt;span lang=EN style='font-size:11.0pt;font-family:Arial'&gt;wikipedia.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;i&gt;&lt;font size=2 face=Arial&gt;&lt;span lang=EN style='font-size:10.0pt;font-family: Arial;font-style:italic'&gt;Source:&amp;nbsp; &lt;a href="http://en.wikipedia.org/wiki/Web.config"&gt;wikipedia&lt;/a&gt;&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;font size=2 face=Arial&gt;&lt;span lang=EN style='font-size:10.0pt;font-family:Arial'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size=2 face="Book Antiqua"&gt;&lt;span lang=EN style='font-size:10.0pt; font-family:"Book Antiqua"'&gt;&amp;#8220;The&lt;b&gt;&lt;span style='font-weight:bold'&gt; web.config&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Book Antiqua"&gt;&lt;span lang=EN style='font-size:10.0pt;font-family:"Book Antiqua"'&gt; is the main settings and configuration file for an ASP.NET web application. The file is a text based XML document that defines such things as connection strings to any databases the application uses, the default language for child pages, whether debugging is allowed and how it can be implemented, whether session state is used by default, what type of authentication is used, if any, and so on. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;font size=2 face="Book Antiqua"&gt;&lt;span lang=EN style='font-size:10.0pt; font-family:"Book Antiqua";font-weight:bold'&gt;Web.config &lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 face="Book Antiqua"&gt;&lt;span lang=EN style='font-size:10.0pt;font-family: "Book Antiqua"'&gt;files can only be placed inside directories that have been configured as ASP.NET applications, commonly the web application's root directory. Web.config files inherit properties from higher level .config files and ultimately machine.config however some settings inside machine.config cannot be overridden.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size=2 face="Book Antiqua"&gt;&lt;span lang=EN style='font-size:10.0pt; font-family:"Book Antiqua"'&gt;The &lt;b&gt;&lt;span style='font-weight:bold'&gt;web.config&lt;/span&gt;&lt;/b&gt; file is so central to the ASP.NET framework that when the file is saved, IIS restarts the application it belongs to. Visual Studio will automatically create a &lt;b&gt;&lt;span style='font-weight:bold'&gt;web.config&lt;/span&gt;&lt;/b&gt; file when needed, such as compiling a web application to run in debug mode.&amp;#8221;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial'&gt;Our web application will be mainly using the web.config for storing the default login credentials for an Administrator user, the dispatcher value and the includes folder for any JavaScript or images.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=blue face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:blue'&gt;&amp;lt;&lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=maroon face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:maroon'&gt;appSettings&lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=blue face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family: "Courier New";color:blue'&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color=blue&gt;&lt;span style='color:blue'&gt;&amp;lt;&lt;/span&gt;&lt;/font&gt;&lt;font color=maroon&gt;&lt;span style='color:maroon'&gt;add&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=red&gt;&lt;span style='color:red'&gt;key&lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;=&amp;quot;CTSpwd&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=red&gt;&lt;span style='color:red'&gt;value&lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;=&amp;quot;admin1234&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color=blue&gt;&lt;span style='color:blue'&gt;&amp;lt;&lt;/span&gt;&lt;/font&gt;&lt;font color=maroon&gt;&lt;span style='color:maroon'&gt;add&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=red&gt;&lt;span style='color:red'&gt;key&lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;=&amp;quot;CTSuid&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=red&gt;&lt;span style='color:red'&gt;value&lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;=&amp;quot;administrator&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color=blue&gt;&lt;span style='color:blue'&gt;&amp;lt;&lt;/span&gt;&lt;/font&gt;&lt;font color=maroon&gt;&lt;span style='color:maroon'&gt;add&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=red&gt;&lt;span style='color:red'&gt;key&lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;=&amp;quot;CNmspace&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=red&gt;&lt;span style='color:red'&gt;value&lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;=&amp;quot;1101&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color=blue&gt;&lt;span style='color:blue'&gt;&amp;lt;&lt;/span&gt;&lt;/font&gt;&lt;font color=maroon&gt;&lt;span style='color:maroon'&gt;add&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=red&gt;&lt;span style='color:red'&gt;key&lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;=&amp;quot;CCurl&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=red&gt;&lt;span style='color:red'&gt;value&lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;=&amp;quot;http://server/cognos8/cgi-bin/cognosisapi.dll?b_action=xts.run&amp;amp;amp;m=portal/cc.xts&amp;amp;amp;CAMUsername=CC_UID&amp;amp;amp;CAMPassword=CC_PWD&amp;amp;amp;h_CAM_action=logonAs&amp;amp;amp;CAMNamespace=CC_NM&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color=blue&gt;&lt;span style='color:blue'&gt;&amp;lt;&lt;/span&gt;&lt;/font&gt;&lt;font color=maroon&gt;&lt;span style='color:maroon'&gt;add&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=red&gt;&lt;span style='color:red'&gt;key&lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;=&amp;quot;CognosSDKPathIncludes&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=red&gt;&lt;span style='color:red'&gt;value&lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;=&amp;quot;http://server/cognos8/&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color=blue&gt;&lt;span style='color:blue'&gt;&amp;lt;&lt;/span&gt;&lt;/font&gt;&lt;font color=maroon&gt;&lt;span style='color:maroon'&gt;add&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=red&gt;&lt;span style='color:red'&gt;key&lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;=&amp;quot;CognosDispatcher&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=red&gt;&lt;span style='color:red'&gt;value&lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;=&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;&amp;quot;http://server:9300/p2pd/servlet/dispatch&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color=blue&gt;&lt;span style='color:blue'&gt;&amp;lt;&lt;/span&gt;&lt;/font&gt;&lt;font color=maroon&gt;&lt;span style='color:maroon'&gt;add&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=red&gt;&lt;span style='color:red'&gt;key&lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;=&amp;quot;CSTypePkg&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=red&gt;&lt;span style='color:red'&gt;value&lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;=&amp;quot;packageConfiguration&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color=blue&gt;&lt;span style='color:blue'&gt;&amp;lt;&lt;/span&gt;&lt;/font&gt;&lt;font color=maroon&gt;&lt;span style='color:maroon'&gt;add&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=red&gt;&lt;span style='color:red'&gt;key&lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;=&amp;quot;CSTypeRpt&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=red&gt;&lt;span style='color:red'&gt;value&lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;=&amp;quot;report&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font color=fuchsia&gt;&lt;span style='color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font color=blue&gt;&lt;span style='color:blue'&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 color=blue face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:blue'&gt;&amp;lt;/&lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=maroon face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New";color:maroon'&gt;appSettings&lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=blue face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:blue'&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 color=blue face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:blue'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 color=blue face=Arial&gt;&lt;span style='font-size: 11.0pt;font-family:Arial;color:blue'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;The C# code uses the following syntax to retrieve the value stored in the web.config.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-indent:.5in'&gt;&lt;b&gt;&lt;i&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; font-weight:bold;font-style:italic'&gt;_dispC8 = ConfigurationSettings.AppSettings[&amp;quot;CognosDispatcher&amp;quot;];&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;/b&gt;&lt;b&gt;&lt;i&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial;font-weight: bold;font-style:italic'&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-indent:.5in'&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;You can see that this value corresponds to the web.config setting.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-indent:.5in'&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-indent:.5in'&gt;&lt;font size=2 color=blue face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:blue'&gt;&amp;lt;&lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=maroon face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:maroon'&gt;add&lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=fuchsia face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New";color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=red face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:red'&gt;key&lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=blue face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:blue'&gt;=&amp;quot;CognosDispatcher&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=fuchsia face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New";color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=red face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:red'&gt;value&lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=blue face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:blue'&gt;=&lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=fuchsia face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New";color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=blue face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:blue'&gt;&amp;quot;http://MyServerName:9300/p2pd/servlet/dispatch&amp;quot;&lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=fuchsia face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New";color:fuchsia'&gt; &lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=blue face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:blue'&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 color=blue face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:blue'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:10.0pt; font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-73502763302727184?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/73502763302727184'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/73502763302727184'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/01/cognos-sdk-guide-by-bi-centre-webconfig.html' title='Cognos SDK Guide by BI Centre -- web.config'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-4355818010767865997</id><published>2008-01-11T11:54:00.000-08:00</published><updated>2010-03-29T18:53:21.482-07:00</updated><title type='text'>Exception Handler Class -- Exhandler.cs</title><content type='html'>&lt;div class=Section1&gt;  &lt;p class=MsoNormal&gt;&lt;b&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial;font-weight:bold'&gt;ExHandler.cs&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial'&gt; is used to handle SOAP Exceptions that may be encountered when making Cognos service requests.&amp;nbsp; The &lt;b&gt;&lt;span style='font-weight:bold'&gt;ExHandler.cs&lt;/span&gt;&lt;/b&gt; class allows you to display a meaningful error message to the end user.&amp;nbsp; It captures the severity, error code, message and details of the exception that has been encountered.&amp;nbsp; These values are appended and returned as a string.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;This is example code to capture the Exception&amp;#8217;s severity.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=green face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:green'&gt;/// Return the exception severity. ///&lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=gray face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:gray'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=blue face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:blue'&gt;public&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt; &lt;font color=blue&gt;&lt;span style='color:blue'&gt;string&lt;/span&gt;&lt;/font&gt; Severity{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color=blue&gt;&lt;span style='color:blue'&gt;get&lt;/span&gt;&lt;/font&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; XmlNode severityNode = exSoap.Detail.SelectSingleNode( &amp;quot;//severity&amp;quot;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color=blue&gt;&lt;span style='color:blue'&gt;if&lt;/span&gt;&lt;/font&gt; (severityNode != &lt;font color=blue&gt;&lt;span style='color:blue'&gt;null&lt;/span&gt;&lt;/font&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color=blue&gt;&lt;span style='color:blue'&gt;return&lt;/span&gt;&lt;/font&gt; severityNode.InnerText;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='margin-left:1.0in;text-indent:.5in;text-autospace: none'&gt;&lt;font size=2 color=blue face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New";color:blue'&gt;return&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt; &amp;quot;&amp;quot;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='margin-left:.5in;text-indent:.5in;text-autospace: none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family: "Courier New"'&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial'&gt;Your web solution should have all of it&amp;#8217;s TRY-CATCH statements updated in order to reference the functionality &lt;b&gt;&lt;span style='font-weight:bold'&gt;ExHandler.cs&lt;/span&gt;&lt;/b&gt; class file.&amp;nbsp; You would simply have to instantiate the object in your updated Catch statements.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-indent:.5in;text-autospace:none'&gt;&lt;b&gt;&lt;i&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; font-weight:bold;font-style:italic'&gt;ExHandler exCognos = new ExHandler(exSoap);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial'&gt;Here is a more detailed example showing the updated Catch statement and appending a string object with the full exception message.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;try&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _cmService = new contentManagerService1();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _rptService = new reportService1(); &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _dispC8 = ConfigurationSettings.AppSettings[&amp;quot;CognosDispatcher&amp;quot;];&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _NmSpace = ConfigurationSettings.AppSettings[&amp;quot;CNmspace&amp;quot;];&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _Pwd = ConfigurationSettings.AppSettings[&amp;quot;CTSpwd&amp;quot;];&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _Uid = ConfigurationSettings.AppSettings[&amp;quot;CTSuid&amp;quot;];&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _CSTypePkg = ConfigurationSettings.AppSettings[&amp;quot;CSTypePkg&amp;quot;];&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _CSTypeRpt = ConfigurationSettings.AppSettings[&amp;quot;CSTypeRpt&amp;quot;];&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _cmService.Url = _dispC8;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _rptService.Url = _dispC8;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _cogSDK = new CognosSDK();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _cogSDK.CognosLogon(_cmService,_NmSpace,_Uid, _Pwd);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _rptService.biBusHeaderValue = _cmService.biBusHeaderValue;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;&lt;span style='font-weight:bold'&gt;catch (SoapException exSoap)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; font-weight:bold'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; font-weight:bold'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ExHandler exCognos = new ExHandler(exSoap);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; font-weight:bold'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _ErrMsg = exCognos.Details + &amp;quot; :-: &amp;quot; + exCognos.Message +&amp;nbsp; &amp;quot; :-: &amp;quot; + exCognos.Severity +&amp;nbsp; &amp;quot; :-: &amp;quot; + exCognos.ErrorCode;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; font-weight:bold'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch (Exception ex)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _ErrMsg = ex.Message.ToString();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;br clear=all style='page-break-before:always'&gt; &lt;/span&gt;&lt;/font&gt;  &lt;p class=MsoNormal&gt;&lt;font size=3 face="Times New Roman"&gt;&lt;span style='font-size: 12.0pt'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=3 face="Times New Roman"&gt;&lt;span style='font-size: 12.0pt'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-4355818010767865997?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/4355818010767865997'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/4355818010767865997'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/01/exception-handler-class-exhandlercs.html' title='Exception Handler Class -- Exhandler.cs'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-35766129820468383</id><published>2008-01-10T05:58:00.000-08:00</published><updated>2010-03-29T18:53:21.497-07:00</updated><title type='text'>CognosSDK.cs -- Helper Functions</title><content type='html'>&lt;div class=Section1&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;Your Cognos SDK class will also contain several helper functions that will aid you in querying and executing against the Cognos 8 Content Store.&amp;nbsp; One example is the sample code to resolve a report&amp;#8217;s prompt page prompts and pass the final parameter collection a Report Service&amp;#8217;s .run method.&amp;nbsp; The purpose of the method is to iterate through the prompt page&amp;#8217;s form collection and identify all Cognos 8 prompt controls by name and retrieve their associated value.&amp;nbsp; This method requires that your Cognos 8 Report Author follows a standardized naming convention for the Report Studio prompt pages.&amp;nbsp; For example, our sample Report Studio reports will name all of the prompt page prompts in the following manner.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='margin-left:.5in;text-indent:-.25in;mso-list:l0 level1 lfo1'&gt;&lt;![if !supportLists]&gt;&lt;font size=2 face=Wingdings&gt;&lt;span style='font-size:11.0pt;font-family:Wingdings'&gt;&lt;span style='mso-list:Ignore'&gt;v&lt;font size=1 face="Times New Roman"&gt;&lt;span style='font:7.0pt "Times New Roman"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;![endif]&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial'&gt;Date Time prompts &amp;#8211; &lt;b&gt;&lt;span style='font-weight:bold'&gt;p_dteStartDate&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='margin-left:.5in;text-indent:-.25in;mso-list:l0 level1 lfo1'&gt;&lt;![if !supportLists]&gt;&lt;font size=2 face=Wingdings&gt;&lt;span style='font-size:11.0pt;font-family:Wingdings'&gt;&lt;span style='mso-list:Ignore'&gt;v&lt;font size=1 face="Times New Roman"&gt;&lt;span style='font:7.0pt "Times New Roman"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;![endif]&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial'&gt;Value prompt &amp;#8211; &lt;b&gt;&lt;span style='font-weight:bold'&gt;p_txtFirstName&lt;/span&gt;&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='margin-left:.5in;text-indent:-.25in;mso-list:l0 level1 lfo1'&gt;&lt;![if !supportLists]&gt;&lt;font size=2 face=Wingdings&gt;&lt;span style='font-size:11.0pt;font-family:Wingdings'&gt;&lt;span style='mso-list:Ignore'&gt;v&lt;font size=1 face="Times New Roman"&gt;&lt;span style='font:7.0pt "Times New Roman"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;![endif]&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial'&gt;Multiple Select prompt &amp;#8211; &lt;b&gt;&lt;span style='font-weight:bold'&gt;p_lstCity&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;b&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial;font-weight:bold'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;b&gt;&lt;i&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial;font-weight:bold;font-style:italic'&gt;NOTE:&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;/b&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt;font-family:Arial'&gt;&amp;nbsp; As you progress through the code in the &lt;b&gt;&lt;span style='font-weight:bold'&gt;CognosSDK.cs&lt;/span&gt;&lt;/b&gt; file you will find references to string functions that rely on this naming convention.&amp;nbsp; You may be forced to alter your &lt;b&gt;&lt;span style='font-weight:bold'&gt;CognosSDK.cs&lt;/span&gt;&lt;/b&gt; code to work with your Cognos 8 Report Studio naming standards. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;For example:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:11.0pt; font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;_promptType = nvcFormData.Keys[x];&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 color=blue face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:blue'&gt;int&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt; _posPrompt = &lt;b&gt;&lt;font color=red&gt;&lt;span style='color:red;font-weight:bold'&gt;_promptType.LastIndexOf(&amp;quot;p_&amp;quot;);&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;if (_posPrompt == 2)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _promptName = _promptType.Substring(2, _promptType.Length - 2);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _promptType = _promptType.Substring(_posPrompt + 2,3);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New"'&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-35766129820468383?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/35766129820468383'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/35766129820468383'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/01/cognossdkcs-helper-functions.html' title='CognosSDK.cs -- Helper Functions'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-6930594008673723712</id><published>2008-01-07T08:08:00.000-08:00</published><updated>2010-03-29T18:53:21.508-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CognosSDK.cs -- Request Report Parameters'/><title type='text'>CognosSDK.cs -- Request Report Parameters</title><content type='html'>A Cognos Report Studio developer can design a report to apply specific filtering on a data item.  For example, if a report developer wanted to only return all sale orders that occurred in the city of London then they could design a prompt page that allowed a user to select London as the city parameter item.  The sales order query would be filtered based on the selected parameter value.&lt;br /&gt;&lt;br /&gt;Knowing the parameters that exist in the report definition is a vital piece of information when executing Cognos Report Studio reports via the Cognos SDK.  If the parameter collection is not satisfied then the report will maintain a state of prompting.&lt;br /&gt;&lt;br /&gt;Here is a code example that shows the request for a report’s parameter collection.  You should not that the report item is an input parameter contained in the search path for the report.&lt;br /&gt;&lt;br /&gt;public asynchDetail[] GetParams(string packageName, string reportName, reportService1 rptService)&lt;br /&gt;  {&lt;br /&gt;   try&lt;br /&gt;   {&lt;br /&gt;    searchPathSingleObject spSingle = new searchPathSingleObject();&lt;br /&gt;    string _pkgName = packageName;&lt;br /&gt;    string _rptName = reportName;&lt;br /&gt;&lt;br /&gt;    spSingle.Value = "/content/package[@name='" + _pkgName + "']/report[@name='" + _rptName + "']";&lt;br /&gt;    &lt;br /&gt;    &lt;br /&gt;    asynchReply _resParameters = rptService.getParameters(spSingle, new parameterValue[]{},new option[]{}); &lt;br /&gt;&lt;br /&gt;    asynchDetail[] _details = _resParameters.details;    &lt;br /&gt;&lt;br /&gt;    return _details;&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;   catch (Exception ex)&lt;br /&gt;   {&lt;br /&gt;     _ErrMsg = ex.Message.ToString();&lt;br /&gt;    return null;&lt;br /&gt;   } &lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now that you have asynchDetail[] object you can access the report’s parameter collection information.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-6930594008673723712?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/6930594008673723712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/6930594008673723712'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/01/cognossdkcs-request-report-parameters.html' title='CognosSDK.cs -- Request Report Parameters'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-6315212605221118791</id><published>2008-01-03T07:05:00.000-08:00</published><updated>2010-03-29T18:53:21.518-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CognosSDK.cs -- Request Content Store Objects'/><title type='text'>CognosSDK.cs -- Request Content Store Objects</title><content type='html'>The Cognos Content Store contains the metadata representation of items such as reports, query items, report views, and security settings.  The Cognos SDK code can call the Content Manager’s .query() method to search for and retrieve Content Store items.  The getObjects() method is an example of searching the Content Store and finding either all Content Store package items or all report items for a specified package. &lt;br /&gt;&lt;br /&gt;public baseClass[] getObjects(contentManagerService1 _cmService, string _path, string _package)&lt;br /&gt;&lt;br /&gt;            {       &lt;br /&gt;                  propEnum[] _props = new propEnum[]{propEnum.searchPath,propEnum.defaultName,propEnum.objectClass, propEnum.modificationTime, propEnum.connectionString, propEnum.creationTime, propEnum.link, propEnum.specification, propEnum.version, propEnum.defaultName, propEnum.portalPages, propEnum.ancestors, propEnum.owner};&lt;br /&gt;&lt;br /&gt;                                   &lt;br /&gt;&lt;br /&gt;                  if(_cmService != null)&lt;br /&gt;&lt;br /&gt;                  {&lt;br /&gt;&lt;br /&gt;                        sort[] _sort = {new sort()};                 &lt;br /&gt;&lt;br /&gt;                        _sort[0].order=orderEnum.ascending;&lt;br /&gt;&lt;br /&gt;                        _sort[0].propName=propEnum.defaultName;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;                        _packagePath = "/content//package/*";&lt;br /&gt;&lt;br /&gt;                        _reportPath = "/content/package[@name='" + _package + "']/report//*";      &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;                        searchPathMultipleObject _spMulti = new searchPathMultipleObject();&lt;br /&gt;&lt;br /&gt;                        &lt;br /&gt;&lt;br /&gt;                        if (_path == "packageConfiguration")&lt;br /&gt;&lt;br /&gt;                        {&lt;br /&gt;&lt;br /&gt;                              _path =  _packagePath;&lt;br /&gt;&lt;br /&gt;                        }&lt;br /&gt;&lt;br /&gt;                        else if (_path == "report")&lt;br /&gt;&lt;br /&gt;                        {&lt;br /&gt;&lt;br /&gt;                              _path = _reportPath;&lt;br /&gt;&lt;br /&gt;                        }&lt;br /&gt;&lt;br /&gt;                        else &lt;br /&gt;&lt;br /&gt;                        {&lt;br /&gt;&lt;br /&gt;                              _path = null;&lt;br /&gt;&lt;br /&gt;                        }&lt;br /&gt;&lt;br /&gt;                        &lt;br /&gt;&lt;br /&gt;                        _spMulti.Value = _path;&lt;br /&gt;&lt;br /&gt;                        &lt;br /&gt;&lt;br /&gt;                        try&lt;br /&gt;&lt;br /&gt;                        {&lt;br /&gt;&lt;br /&gt;                              //Query Cognos 8 and return the Base Class Array to the calling method&lt;br /&gt;&lt;br /&gt;                              baseClass[] _bc = _cmService.query(_spMulti, _props, _sort, new queryOptions());&lt;br /&gt;&lt;br /&gt;                              if(_bc != null)&lt;br /&gt;&lt;br /&gt;                              {&lt;br /&gt;&lt;br /&gt;                                    //if the search request returned results&lt;br /&gt;&lt;br /&gt;                                    if(_bc.Length &amp;gt; 0)&lt;br /&gt;&lt;br /&gt;                                    {&lt;br /&gt;&lt;br /&gt;                                          return _bc;&lt;br /&gt;&lt;br /&gt;                                    }&lt;br /&gt;&lt;br /&gt;                                    else&lt;br /&gt;&lt;br /&gt;                                    {&lt;br /&gt;&lt;br /&gt;                                          return null;&lt;br /&gt;&lt;br /&gt;                                    }&lt;br /&gt;&lt;br /&gt;                              }&lt;br /&gt;&lt;br /&gt;                        }      &lt;br /&gt;&lt;br /&gt;                        &lt;br /&gt;&lt;br /&gt;                        &lt;br /&gt;&lt;br /&gt;                        catch(Exception ex)&lt;br /&gt;&lt;br /&gt;                        {&lt;br /&gt;&lt;br /&gt;                              _ErrMsg = ex.Message.ToString();&lt;br /&gt;&lt;br /&gt;                              return null;&lt;br /&gt;&lt;br /&gt;                        }&lt;br /&gt;&lt;br /&gt;                  }&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;                  //no results found&lt;br /&gt;&lt;br /&gt;                  return(null);&lt;br /&gt;&lt;br /&gt;            }&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-6315212605221118791?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/6315212605221118791'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/6315212605221118791'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2008/01/cognossdkcs-request-content-store.html' title='CognosSDK.cs -- Request Content Store Objects'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-7634105961350854052</id><published>2007-12-31T07:36:00.000-08:00</published><updated>2010-03-29T18:53:21.526-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CognosSDK.cs -- Authentication'/><title type='text'>CognosSDK.cs -- Authentication</title><content type='html'>Authentication&lt;br /&gt;&lt;br /&gt;The CognosLogon() method handles the authentication to the Cognos Report Service.  This method permits a BIBus API value to be set and connected to Cognos 8.  We have stored our authentication values in our web solution’s web.config file.  We’ll discuss how to retrieve these values in the section named – web.config.&lt;br /&gt;&lt;br /&gt;Here is the example code to authenticate a user to Cognos 8.  The code is appending encoded xml with the stored values from the web.config file.  The Content Manager service’s .logon() method is passed the encoded xml and it will return a valid CAMPassportId.  If the user fails to be authenticated then an error message is passed to a string variable, which can then be displayed to the end user.&lt;br /&gt;&lt;br /&gt;public string  CognosLogon(contentManagerService1 cmService, string NmSpace,string uid, string pwd)&lt;br /&gt;  {&lt;br /&gt;   string CAMPassportID;&lt;br /&gt;   string credentialXML;&lt;br /&gt;   credentialXML= "&lt;credential&gt;&lt;namespace&gt;"+ NmSpace + "&lt;/namespace&gt;";&lt;br /&gt;   credentialXML= credentialXML +"&lt;username&gt;" + uid + "&lt;/username&gt;";&lt;br /&gt;   credentialXML= credentialXML +"&lt;password&gt;" + pwd + "&lt;/password&gt;&lt;/credential&gt;";&lt;br /&gt;   &lt;br /&gt;   try&lt;br /&gt;   { &lt;br /&gt;    xmlEncodedXML xmlPath = new xmlEncodedXML();&lt;br /&gt;    xmlPath.Value = credentialXML;&lt;br /&gt;    cmService.logon(xmlPath,new searchPathSingleObject[]{});&lt;br /&gt;    CAMPassportID = _cmService.biBusHeaderValue.CAM.CAMPassport.id.ToString();  &lt;br /&gt;    &lt;br /&gt;    return CAMPassportID;&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;   catch (Exception ex)&lt;br /&gt;   {&lt;br /&gt;    return _ErrMsg = ex.Message.ToString();&lt;br /&gt;   }&lt;br /&gt;      &lt;br /&gt;  }&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-7634105961350854052?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/7634105961350854052'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/7634105961350854052'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2007/12/cognossdkcs-authentication.html' title='CognosSDK.cs -- Authentication'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-4418595630517530749</id><published>2007-12-31T07:34:00.000-08:00</published><updated>2010-03-29T18:53:21.538-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Creating your SDK object -- CognosSDK.cs'/><title type='text'>Creating your SDK object -- CognosSDK.cs</title><content type='html'>The CognosSDK.cs class file is used primarily for interacting with your Cognos Content Store.  You will be adding methods that will enable you to: Authenticate and connect to the Cognos service; request and return Cognos Content Store objects; request and set report parameter values; and execute a report.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-4418595630517530749?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/4418595630517530749'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/4418595630517530749'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2007/12/creating-your-sdk-object-cognossdkcs.html' title='Creating your SDK object -- CognosSDK.cs'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-7377933250395209875</id><published>2007-12-31T06:32:00.000-08:00</published><updated>2010-03-29T18:53:21.546-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cognos SDK Guide -- Step-by-step'/><title type='text'>Cognos SDK Guide -- Step-by-step</title><content type='html'>We will start off by doing an overview of the Cognos SDK Guide components and then we'll do a step-by-step discussion about how to build up the code in your ASP.NET pages.&lt;br /&gt;&lt;br /&gt;Our first detailed discussion will involve building up the code for the following ASP.NET pages that will call your Cognos SDK C# class files.&lt;br /&gt;&lt;br /&gt;a. Default.aspx&lt;br /&gt;b. Reports.aspx&lt;br /&gt;c. PromptPage.aspx&lt;br /&gt;d. Output.aspx&lt;br /&gt;&lt;br /&gt;This will allow us to naturally progress into discussing the CognosSDK.cs and ExHanlder.cs class files.  The CognosSDKHelper.js will be discussed in detail when we have developed our Cognos SDK solution to the point where it is ready to execute a report.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-7377933250395209875?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/7377933250395209875'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/7377933250395209875'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2007/12/cognos-sdk-guide-step-by-step.html' title='Cognos SDK Guide -- Step-by-step'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-1198308295351847583</id><published>2007-12-27T12:39:00.000-08:00</published><updated>2010-03-29T18:53:21.556-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cognos 8 SDK -- Getting started with your ASP.NET C# solution'/><title type='text'>Cognos 8 SDK -- Getting started with your ASP.NET C# solution</title><content type='html'>Our sample Cognos 8 SDK web solution will be developed with Visual Studio .NET 2003 (VS.NET 2003).  VS.NET 2003 uses .NET Framework 1.0 and that means that we need to use both Cognos SDK .dlls -- cognosdotnet.dll and cognosdotnetassembly.dll in our web solution.  If we were using .NET Framework 2.0 then we could use the Cognos SDK .dlls -- cognosdotnet_2_0.dll and cognosdotnetassembly_2_0.dll.&lt;br /&gt;&lt;br /&gt;Let’s get started by building the sample file and folder structure for your Cognos 8 SDK web solution:&lt;br /&gt;&lt;br /&gt;1. Create a new C# web application in VS.NET 2003 and name it “Cognos_SDK_template”. &lt;br /&gt;2. Expand the project and right-click on References.  Go ahead and add both the cognosdotnet.dll and cognosdotnetassembly.dll to your solution.&lt;br /&gt;3. You will also have to ensure that System.Web.Services has been added to your solution.&lt;br /&gt;4. Select the project name “Cognos_SDK_template” and right-click.  &lt;br /&gt;a. Add a folder and name it “includes”.&lt;br /&gt;b. Add a C# Class file and name it “CognosSDK.cs”.&lt;br /&gt;c. Add a C# Class file and name it “ExHandler.cs”.&lt;br /&gt;d. Add a new .ASPX page and name it “Default.aspx”.&lt;br /&gt;i. Right-click on this file and select “Set as Start Page”.&lt;br /&gt;e. Add a new .ASPX page and name it “Reports.aspx”.&lt;br /&gt;f. Add a new .ASPX page and name it “PromptPage.aspx”.&lt;br /&gt;g. Add a new .ASPX page and name it “RunReport.aspx”.&lt;br /&gt;h. Add a new .ASPX page and name it “Output.aspx”.&lt;br /&gt;i. Add a new .HTML page and name it “PleaseWait.htm”.&lt;br /&gt;5. Select the “includes” folder and right-click.&lt;br /&gt;a. Add a new .js file and name it “CognosSDKHelper.js”.&lt;br /&gt;b. You can do an internet search for a clipart that represents an hour glass and save the file in the “includes” folder as “executing.gif”.&lt;br /&gt;&lt;br /&gt;You have now successfully created the main skeletal structure for your ASP.NET C# Cognos SDK solution.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-1198308295351847583?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/1198308295351847583'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/1198308295351847583'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2007/12/cognos-8-sdk-getting-started-with-your.html' title='Cognos 8 SDK -- Getting started with your ASP.NET C# solution'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-7567648499271430780</id><published>2007-12-24T06:51:00.000-08:00</published><updated>2010-03-29T18:53:21.571-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cognos SDK Developer Guide Overview'/><title type='text'>Cognos SDK Developer Guide Overview</title><content type='html'>Cognos SDK Developer Guide Overview&lt;br /&gt;&lt;br /&gt;The Cognos SDK Developer Guide is intended to provide a Cognos SDK developer with a workable C# solution that will allow you to:&lt;br /&gt;&lt;br /&gt;·         Search the Content Store for all package items&lt;br /&gt;·         Search the Content Store for all reports that belong to a specified package&lt;br /&gt;·         Generate a report’s prompt page&lt;br /&gt;·         Execute the report&lt;br /&gt;·         Display the report results in a browser window&lt;br /&gt;·         Handle soap exceptions and render a meaningful error message to the user&lt;br /&gt;&lt;br /&gt;The Cognos SDK Developer Guide will walk you through the steps of generating your ASP.NET C# web solution and guide you through the process of creating your: ASP.NET pages; C# Class Files for Exception handling and Cognos SDK method calls; supporting JavaScript code; deciding upon which Cognos SDK DLLs to reference; and handling basic security by using the web.config.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-7567648499271430780?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/7567648499271430780'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/7567648499271430780'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2007/12/cognos-sdk-developer-guide-overview.html' title='Cognos SDK Developer Guide Overview'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-3936592943082730589</id><published>2007-12-21T16:55:00.000-08:00</published><updated>2010-03-29T18:53:21.581-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cognos 8 SDK Developer Guide -- development tools'/><title type='text'>Cognos 8 SDK Developer Guide -- development tools</title><content type='html'>Hello, before we start to get busy with some of the code we should make sure that everyone has access to some type of development tool.&lt;br /&gt;&lt;br /&gt;You can take a look at this page if you don't have Visual Studio .NET 2003.&lt;br /&gt;&lt;br /&gt;http://www.asp.net/downloads/essential/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-3936592943082730589?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/3936592943082730589'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/3936592943082730589'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2007/12/cognos-8-sdk-developer-guide.html' title='Cognos 8 SDK Developer Guide -- development tools'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-3728533684552018532</id><published>2007-12-14T13:00:00.000-08:00</published><updated>2010-03-29T18:53:21.589-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cognos 8 SDK -- BI Centre SDK Guide Update'/><title type='text'>Cognos 8 SDK -- BI Centre SDK Guide Update</title><content type='html'>&lt;ol&gt;&lt;li&gt;Hello, here is the initial Table of Contents for the upcoming BI Centre SDK Guide which will be available on &lt;a href="http://cognos8helpsdkguide.blogspot.com/"&gt;http://cognos8helpsdkguide.blogspot.com/&lt;/a&gt;. If you have any questions or items that you would like to have covered in the Cognos SDK guide then feel free to email me at: &lt;a href="mailto:businessintelligencecentre@gmail.com?subject=BI%20Centre%20SDK%20Guide"&gt;BI Centre SDK Guide&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Table of Contents&lt;br /&gt;&lt;br /&gt;Overview&lt;br /&gt;Getting started with your ASP.NET C# web solution&lt;br /&gt;VS.NET Version&lt;br /&gt;Cognos SDK DLL references&lt;br /&gt;Project Structure&lt;br /&gt;Creating your SDK object&lt;br /&gt;Authentication&lt;br /&gt;Get Content Store Objects&lt;br /&gt;Get Params&lt;br /&gt;Helper Functions&lt;br /&gt;Exception Handler Class&lt;br /&gt;Web.config&lt;br /&gt;Storing credential values&lt;br /&gt;Searching for Content Store Items&lt;br /&gt;Show all packages&lt;br /&gt;Show reports for a package&lt;br /&gt;Run a report with prompts&lt;br /&gt;Displaying the report results&lt;br /&gt;Contact for more information&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-3728533684552018532?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/3728533684552018532'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/3728533684552018532'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2007/12/cognos-8-sdk-bi-centre-sdk-guide-update.html' title='Cognos 8 SDK -- BI Centre SDK Guide Update'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-132624502434377297.post-4423964863185904468</id><published>2007-11-28T15:24:00.000-08:00</published><updated>2010-03-29T18:53:21.596-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BI Centre SDK Guide'/><title type='text'>BI Centre SDK Guide</title><content type='html'>Be sure to visit this blog for the BI Centre SDK Guide.  We'll walk you through the creation of integrating your Cognos 8 reports within a sample ASP.NET web application.&lt;br /&gt;&lt;br /&gt;We'll post updates to the http://cognos8help.blogspot.com site to keep you informed on when you'll be able to get a copy of the sample code.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/132624502434377297-4423964863185904468?l=cognossdkguide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/4423964863185904468'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/132624502434377297/posts/default/4423964863185904468'/><link rel='alternate' type='text/html' href='http://cognossdkguide.blogspot.com/2007/11/bi-centre-sdk-guide.html' title='BI Centre SDK Guide'/><author><name>TW Paige</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry></feed>
