<?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:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-959725691997997014</id><updated>2010-04-29T12:52:56.559+01:00</updated><title type='text'>Cognos Blogger</title><subtitle type='html'></subtitle><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default'/><link rel='alternate' type='text/html' href='http://www.digitalviper.co.uk/blogs/Cognos/Cognos.html'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.digitalviper.co.uk/blogs/Cognos/atom.xml'/><author><name>Phil Thompson</name><uri>http://www.blogger.com/profile/06916357179657682644</uri><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>8</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-959725691997997014.post-5556301081410928407</id><published>2010-04-29T12:52:00.001+01:00</published><updated>2010-04-29T12:52:56.638+01:00</updated><title type='text'>This blog has moved</title><content type='html'>&lt;br /&gt;       This blog is now located at http://blog.digitalviper.co.uk/.&lt;br /&gt;       You will be automatically redirected in 30 seconds or you may click &lt;a href='http://blog.digitalviper.co.uk/'&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;       For feed subscribers, please update your feed subscriptions to&lt;br /&gt;       http://blog.digitalviper.co.uk/feeds/posts/default.&lt;br /&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/959725691997997014-5556301081410928407?l=www.digitalviper.co.uk%2Fblogs%2FCognos%2FCognos.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/5556301081410928407/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=959725691997997014&amp;postID=5556301081410928407' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default/5556301081410928407'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default/5556301081410928407'/><link rel='alternate' type='text/html' href='http://www.digitalviper.co.uk/blogs/Cognos/2010/04/this-blog-has-moved.html' title='This blog has moved'/><author><name>Phil Thompson</name><uri>http://www.blogger.com/profile/06916357179657682644</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11052433334116669189'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-959725691997997014.post-8775110963524635508</id><published>2009-09-17T09:53:00.003+01:00</published><updated>2010-02-16T14:08:58.255Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cognos Crosstab List Drillthrough'/><title type='text'>Set up drill through from a crosstab to a detail list report</title><content type='html'>The following blog describes the process of setting up drill through from a source crosstab report to a target detailed list report by clicking on the measure values within the crosstab.&lt;br /&gt;&lt;br /&gt;Create a target detail list drill through report.&lt;br /&gt;&lt;br /&gt;1. Create a new report list report. Ensure that you include on this report (either on the report itself or in the underlying query) the same query items that you intend to use as the axis of the crosstab. If your crosstab shows product name by order year, include these in your query.&lt;br /&gt;&lt;br /&gt;2. Test your report works&lt;br /&gt;&lt;br /&gt;3. Add two filters to your report. These act as the prompts to the source report to supply the filtering values. These must be the same query items as the cross tab query items.&lt;br /&gt;For example: &lt;br /&gt;product_name =?product?&lt;br /&gt;order_year=?year?&lt;br /&gt;&lt;br /&gt;4. Save the target drill report&lt;br /&gt;&lt;br /&gt;Create a source crosstab drill through report&lt;br /&gt;&lt;br /&gt;Create a new crosstab report using the same (filtered) query items for your axis. The measure can be anything you like.&lt;br /&gt;&lt;br /&gt;Select the measure cell, right click and select ‘Drill Throughs’&lt;br /&gt;&lt;br /&gt;Click the new button.&lt;br /&gt;Click the ellipsis (…) for the report and select the target report you just created.&lt;br /&gt;Set the Action to ‘Run the report’&lt;br /&gt;Click the ‘pencil’ button at the bottom of the window. This will load the required parameters from the target report. (The filters you set up earlier).&lt;br /&gt;Set the method for both to ‘Pass data item value’. Then set the appropriate data item from your crosstab query to be the data item that you pass through to the target report filter.&lt;br /&gt;Click OK a couple of times and save the report.&lt;br /&gt;&lt;br /&gt;You’re done. &lt;br /&gt;&lt;br /&gt;Run the source report and click on the measure value to drill through. This will open the target report and pass the axis data items for the measure intersection you selected through to the target report and filter it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/959725691997997014-8775110963524635508?l=www.digitalviper.co.uk%2Fblogs%2FCognos%2FCognos.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/8775110963524635508/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=959725691997997014&amp;postID=8775110963524635508' title='10 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default/8775110963524635508'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default/8775110963524635508'/><link rel='alternate' type='text/html' href='http://www.digitalviper.co.uk/blogs/Cognos/2009/09/set-up-drill-through-from-crosstab-to.html' title='Set up drill through from a crosstab to a detail list report'/><author><name>Phil Thompson</name><uri>http://www.blogger.com/profile/06916357179657682644</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11052433334116669189'/></author><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-959725691997997014.post-5474772730986842700</id><published>2009-08-14T09:48:00.002+01:00</published><updated>2009-08-14T12:05:48.189+01:00</updated><title type='text'>A summary of migration from series7 to series8</title><content type='html'>&lt;span style="font-family:arial;"&gt;Migration from series 7 to series8 always causes lots of questions due the number of different version of software the source environment has and the complexity of the reports.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;Portal&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;In series 8 Upfront is replaced by Cognos Connection as the portal used to access Cognos content. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;strong&gt;Transformer &amp;amp; PowerPlay&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;Transformer models can be used as is, but they will need to be placed on the application server. The models can be batched but need to use cubeswap to disable / enable the cubes after build/copying the cubes. Note that the authentication source between environments may change so make sure that any security that is set up is tested.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;I am told that PowerPlay reports can be migrated too but will need to be exported as MDX (portable files) before import although I have never done this preferring to rebuild reports directly in Analysis studio. I'm unaware if PowerPlay reports in PPES can be migrated.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;strong&gt;Impromptu reports&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;There is a formal migration route for Impromptu reports into Cognos8. You will need to download the migration tools from Cognos themseleves. In a similar manner, Impromptu catalogues are also migrated into Framework Manager models. However it should be noted that this method is rather hit and miss.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;strong&gt;ReportNet reports&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;ReportNet reports should migrate directly from ReportNet to Cognos8 although there are a number of known issues with migration and all reports should go through full regression testing prior to release. It is highly likely that reports will have at least one issue that needs to be resolved. If possible create a seperate Cognos8 environment to your ReportNet environment. In this way reports and packages can be migrated incrementally. It is possible to have COgnos8 and reportNet running on the same application server but I would advise against it.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;I hope this helps. For more details please see the Cognos knowledgebase and documentation. It's all available without login from the new IBM Cognos support website.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;best regards&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;Phil&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/959725691997997014-5474772730986842700?l=www.digitalviper.co.uk%2Fblogs%2FCognos%2FCognos.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/5474772730986842700/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=959725691997997014&amp;postID=5474772730986842700' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default/5474772730986842700'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default/5474772730986842700'/><link rel='alternate' type='text/html' href='http://www.digitalviper.co.uk/blogs/Cognos/2009/08/summary-of-migration-from-series7-to.html' title='A summary of migration from series7 to series8'/><author><name>Phil Thompson</name><uri>http://www.blogger.com/profile/06916357179657682644</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11052433334116669189'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-959725691997997014.post-1463059878160004683</id><published>2008-10-28T15:41:00.005Z</published><updated>2008-10-28T16:37:12.703Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Granularity'/><category scheme='http://www.blogger.com/atom/ns#' term='Determinants'/><category scheme='http://www.blogger.com/atom/ns#' term='Framework Manager'/><title type='text'>Granularity &amp; Determinants in Framework Manager</title><content type='html'>&lt;span style="font-family:arial;font-size:85%;"&gt;Hi, &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;&lt;br /&gt;following a question from Divya last week, this blog relates to granularity and determinants in Framework Manager.&lt;br /&gt;&lt;br /&gt;Granularity is a simple concept describing the level data relates to.&lt;br /&gt;Imagine sales areas:&lt;br /&gt;&lt;br /&gt;Level1: Country&lt;br /&gt;Level2: Sales Area&lt;br /&gt;Level3: State&lt;br /&gt;Level4: City&lt;br /&gt;Level5: Store&lt;br /&gt;Level6: Department&lt;br /&gt;Level7: Employee&lt;br /&gt;&lt;br /&gt;We can summarise sales volume (quantity) at each of the levels above.&lt;br /&gt;The level at which we report is the grain (or granularity) of the table.&lt;br /&gt;&lt;br /&gt;Tables or query subjects in Framework Manager often have multiple levels (grains) which you may have to join to another table with a different level grain.&lt;br /&gt;&lt;br /&gt;An example of this is forecasts or budgets.&lt;br /&gt;Using our example above, we want to join our sales area table to our budgets table. Unfortunately the grain of the sales area table is employee but the budgets have been completed at Store level.&lt;br /&gt;&lt;br /&gt;In Framework Manager, if we join directly from store in sales areas to store in the budget data the budget data value will be repeated for how many employees are part of that store.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;&lt;/span&gt;&lt;a href="http://www.digitalviper.co.uk/blogs/Cognos/uploaded_images/Determinants-Image1-768501.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 320px; CURSOR: hand; HEIGHT: 116px" alt="" src="http://www.digitalviper.co.uk/blogs/Cognos/uploaded_images/Determinants-Image1-768498.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;New Query Subject (join on Store with no determinants set):&lt;br /&gt;Sales Area.City&lt;br /&gt;Sales Area.Store&lt;br /&gt;Budget.Month&lt;br /&gt;Budget.Sales_Target&lt;br /&gt;&lt;br /&gt;Result:&lt;br /&gt;&lt;a href="http://www.digitalviper.co.uk/blogs/Cognos/uploaded_images/Determinants-Image2-707567.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 320px; CURSOR: hand; HEIGHT: 273px" alt="" src="http://www.digitalviper.co.uk/blogs/Cognos/uploaded_images/Determinants-Image2-707559.jpg" border="0" /&gt;&lt;/a&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;&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;&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;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;As there are four employees at the Bayside store this forces the model query subject to return four rows repeating the sales budget.&lt;br /&gt;&lt;br /&gt;To correct this Framework Manager has to be instructed what level of granularity the budget applies to. This is done using determinants.&lt;br /&gt;&lt;br /&gt;In our example we need to set the determinants on the Sales Area query subject.&lt;br /&gt;Right click the query subject and select the determinants tab.&lt;br /&gt;&lt;br /&gt;One determinant should be created for each level of granularity as shown below.&lt;br /&gt;Create the determinant by clicking Add.&lt;br /&gt;Rename the determinant and then drag the identifying column (Key) into the key window (bottom left). If the level has any attributes that exist at the same level of granularity these should be added to the Attribute window.&lt;br /&gt;If the new determinant you have created is the lowest level grain (Employee in this case) the Uniquely Identified check box should be ticked.&lt;br /&gt;The Group By tickbox should be ticked if the level is ever to be used for aggregating values.&lt;br /&gt;&lt;br /&gt;Ensure that once you have created all of your determinants for the query subject that they are in the correct order (use the up and down buttons to sort them correctly).&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.digitalviper.co.uk/blogs/Cognos/uploaded_images/Determinants-Image3-707618.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 320px; CURSOR: hand; HEIGHT: 279px" alt="" src="http://www.digitalviper.co.uk/blogs/Cognos/uploaded_images/Determinants-Image3-707612.jpg" border="0" /&gt;&lt;/a&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;&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;&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;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;After setting the determinants click OK to save the changes.&lt;br /&gt;When the model query subject is now run, only one row of data is returned:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.digitalviper.co.uk/blogs/Cognos/uploaded_images/Determinants-Image4-788921.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 320px; CURSOR: hand; HEIGHT: 262px" alt="" src="http://www.digitalviper.co.uk/blogs/Cognos/uploaded_images/Determinants-Image4-788914.jpg" border="0" /&gt;&lt;/a&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;&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;&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;&lt;br /&gt;I hope this helps&lt;br /&gt;&lt;br /&gt;Phil&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/959725691997997014-1463059878160004683?l=www.digitalviper.co.uk%2Fblogs%2FCognos%2FCognos.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/1463059878160004683/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=959725691997997014&amp;postID=1463059878160004683' title='18 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default/1463059878160004683'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default/1463059878160004683'/><link rel='alternate' type='text/html' href='http://www.digitalviper.co.uk/blogs/Cognos/2008/10/hi-following-question-from-divya-last.html' title='Granularity &amp; Determinants in Framework Manager'/><author><name>Phil Thompson</name><uri>http://www.blogger.com/profile/06916357179657682644</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11052433334116669189'/></author><thr:total>18</thr:total></entry><entry><id>tag:blogger.com,1999:blog-959725691997997014.post-112034816319858957</id><published>2008-01-30T11:25:00.001Z</published><updated>2010-02-16T14:09:50.442Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dynamic Security in Cognos8'/><title type='text'>Dynamic Security in ReportNet &amp; Cognos8</title><content type='html'>&lt;span style="font-family:Arial;font-size:85%;"&gt;There are three methods of setting up dynamic security, all of which are done in Framework Manager.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;strong&gt;Row level/Data Level Security&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;This is the simplest form of security and is achieved by using a fixed filter for each user class or group of user classes.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;1. Select the query subject - right click and select 'Specify security filters'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;2. Click the 'Add Groups' button.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;3. Select the user classes you require from the LDAP/AD/NTLM namespace. (For example 'Japan users')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;4. Click in the box below 'Filter' and select 'Create/Edit Embedded'. This will open a filter definition window.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;5. Enter a filter definition and click OK. For example Country_Code ='JP'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;6. Click OK again to exit the set up window.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;The security filter will become active once the package the query subject belongs to is published. At runtime when any users with the applicable user class uses a report based on the query subject the query results will be filtered using the filter definition you specified. (In my example all user in the user class 'Japan users' will only have the ability to view data with a country code of 'JP').&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;Rather than setting up this security many times, try to set it up on a common or conformed dimension query subject.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;strong&gt;Dynamic Filtering (CSVIdentityNameList)&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;This security set up is similar to the first option but is more dynamic in that the filter definition does not have to be altered every time the user class structure is changed. This option is also useful where a large number of user classes are used.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;The security method can be used against table held entries or against a calculated query item and matches the user class in the LDAP to an entry in the table (or query item).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;1. Select the model query subject that you wish to set up the security on.&lt;br /&gt;2. Right click and select 'Edit definition'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;3. Click on the filter button/tab (to add a new filter)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;4. Add the required query item to the filter expression.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;5. Add the CSVIdentify function to the expression. The end result should look like the following sample:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;color:#3333ff;"&gt;([Presentation Layer].[Countries].[Country_Code]  in (#CSVIdentityNameList()# ))&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;color:#000000;"&gt;6. Add any additional filters using a 'OR' to ensure that Administrators and report developers are not filtered:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;color:#3333ff;"&gt;('Administrators' in (#CSVIdentityNameList()# ))&lt;br /&gt;OR&lt;br /&gt;('Report Administrators') in (#CSVIdentityNameList()# ))&lt;br /&gt;OR&lt;br /&gt;([Business Layer].[Countries].[Country_Code]  in (#CSVIdentityNameList()# ))&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;7.Click OK twice to enable the filter.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;The security filter will become active once the package the query subject belongs to is published. At runtime the filter will activate when the query subject is used. The filter works because the CSVIdentifyNameList function lists all userclasses that the runtime user is a member of and then filters against the calculation or table entry. Again - this method is best used where large volumes of user classes are used such as account numbers.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;strong&gt;Burst recipient (CAM ID)&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;This method of security only hides burst report output within Cognos connection but it is useful when users of many different classes access the same folder to view report output. It should be noted that user should only have read, traverse access to the folder. The report burst should be done by a more senior account such as directory admin or report admin.&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;1. Within Framework Manager add a calculated query item to the query subject that either contains a list of the user classes or where the user class can be calculated.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;2. Use a static case statement to define the calculation (an example is shown below):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;color:#3366ff;"&gt;CASE ([Business Layer].[Countries].[Country_Code] )&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;color:#3366ff;"&gt;     WHEN 'JP' THEN ('CAMID("EP Series7:r:authid=3771403238")')&lt;br /&gt;     WHEN 'MA' THEN ('CAMID("EP Series7:r:authid=3771403548")')&lt;br /&gt;     WHEN 'NL' THEN ('CAMID("EP Series7:r:authid=3049983260")')&lt;br /&gt;     WHEN 'NZ' THEN ('CAMID("EP Series7:r:authid=197856540")')&lt;br /&gt;     WHEN 'PO' THEN ('CAMID("EP Series7:r:authid=2680884508")')&lt;br /&gt;     WHEN 'RO' THEN ('CAMID("EP Series7:r:authid=3872066844")')&lt;br /&gt;     WHEN 'SE' THEN ('CAMID("EP Series7:r:authid=4123725084")')&lt;br /&gt;     WHEN 'SI' THEN ('CAMID("EP Series7:r:authid=13307164")')&lt;br /&gt;     WHEN 'ZA' THEN ('CAMID("EP Series7:r:authid=2999651612")')&lt;br /&gt;ELSE (NULL)&lt;br /&gt;END&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;3. Use the recipient user class CAM ID as the CASE statment result for the user class or calculation. (This can be found in Cognos Connection by selecting the properties of the user class from the directory.)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;4. Publish the package that includes the altered query subject.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;5. Within the report add the new query item that uses the CASE statement.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;6. Change the burst options of the report so that the burst recipient is based upon the new query item. (The report should be burst so that the report output is logically linked to the userclass selected ie. Japan users can only see the Japan result of the burst report). Make sure that the report bursts to a directory entry.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;7. Run the report and burst it.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;As the administrator/directory administrator you should be able to check that the report burst correctly and that all report outputs have been created.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;Check the security filter works by logging in to Cognos Connection as a user with access to a userclass listed in the CASE statement. When you select show multiple outputs you should only see the output pertaining to the userclass.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/959725691997997014-112034816319858957?l=www.digitalviper.co.uk%2Fblogs%2FCognos%2FCognos.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/112034816319858957/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=959725691997997014&amp;postID=112034816319858957' title='10 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default/112034816319858957'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default/112034816319858957'/><link rel='alternate' type='text/html' href='http://www.digitalviper.co.uk/blogs/Cognos/2008/01/dynamic-security-in-reportnet-cognos8.html' title='Dynamic Security in ReportNet &amp; Cognos8'/><author><name>Phil Thompson</name><uri>http://www.blogger.com/profile/06916357179657682644</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11052433334116669189'/></author><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-959725691997997014.post-93471868100286330</id><published>2007-05-14T13:50:00.000+01:00</published><updated>2007-05-14T14:15:50.699+01:00</updated><title type='text'>Single or Multiple LDAP in multiple environments</title><content type='html'>&lt;a href="http://www.digitalviper.co.uk"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Imagine the scenario:&lt;br /&gt;You have a development, a test and a live environment all set up according to theory. Each environment is a standalone environment (for security reasons) and is only accessible by http.&lt;br /&gt;&lt;br /&gt;In this scenario you need a LDAP database (such as Active Directory or Sun One) in each environment. This ticks all the boxes for security. Great - sit back with a big grin on you face.&lt;br /&gt;&lt;br /&gt;You now start working with the environments and follow best practice, developing solutions in your development environment, migrating to your test environment to UAT the solution and then migrate again to your live environment where everything will work perfectly - right? Wrong!&lt;br /&gt;&lt;br /&gt;Because you have three LDAPs, your Cognos applications have three different sets of internal IDs for each LDAP based object. The newer Cognos applications such as ReportNet and Series8 can work around this but if you use Analyst, Contributor, PowerPlay Enterprise Server or PowerPlay Transformer you are stuffed.&lt;br /&gt;&lt;br /&gt;There are two methods to resolve the problem and one method to correct the architecture. First the workarounds:&lt;br /&gt;&lt;br /&gt;Work around 1: Because all the internal user IDs are stuffed in your thick client applications, you have to re-import your LDAP objects (such as users and user classes) into your application and rebuild the security in the target environment. (Lots of work)&lt;br /&gt;&lt;br /&gt;Work around2: In theory you should be able to use create exports from your LDAP using Cognos Access Manager and then migrate these LAE files into the target environment LDAP. If you do this at the same time as the application migration you should be OK. Oh and you MUST overwrite your target LDAP completely. (This doesn't feel like a comfortable option does it? Especially when you have 1500 users happily using the system in the live environment).&lt;br /&gt;&lt;br /&gt;The architecture resolution:&lt;br /&gt;The answer is to do away with the three LDAPs and in their place use one LDAP that is common to all three Cognos environments. By doing this you can migrate as often as you like from environment to environment without having to do any remedial work. Why? Because the internal user IDs held within the applications are always the same. The only snag here is to get the server support team to open a port in each environment to allow the Cognos applications to access the common LDAP. (Don't use 389 if you can help it as that's the default).&lt;br /&gt;&lt;br /&gt;If you opt for the architecture resolution you with save yourself weeks of work every year. Remember though that if you already have one LDAP in each environment that you will have to rebuild the security at least once when you change to the single LDAP.&lt;br /&gt;&lt;br /&gt;I hope this saves you as much time as it has saved some of clients.&lt;br /&gt;&lt;br /&gt;Phil Thompson&lt;br /&gt;&lt;/span&gt;&lt;a href="http://www.digitalviper.co.uk/"&gt;&lt;span style="font-family:arial;"&gt;http://www.digitalviper.co.uk&lt;/span&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/959725691997997014-93471868100286330?l=www.digitalviper.co.uk%2Fblogs%2FCognos%2FCognos.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/93471868100286330/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=959725691997997014&amp;postID=93471868100286330' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default/93471868100286330'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default/93471868100286330'/><link rel='alternate' type='text/html' href='http://www.digitalviper.co.uk/blogs/Cognos/2007/05/single-or-multiple-ldap-in-multiple.html' title='Single or Multiple LDAP in multiple environments'/><author><name>Phil Thompson</name><uri>http://www.blogger.com/profile/06916357179657682644</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11052433334116669189'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-959725691997997014.post-4115570056032909882</id><published>2007-03-23T10:54:00.000Z</published><updated>2007-03-23T11:01:32.543Z</updated><title type='text'>List Tables &amp; Columns</title><content type='html'>&lt;span style="font-family:arial;"&gt;&lt;strong&gt;The following SQL can be used to list tables and column names&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;SQL server&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;select  TABLE_CATALOG,&lt;br /&gt;            TABLE_SCHEMA, &lt;br /&gt;            TABLE_NAME,&lt;br /&gt;            COLUMN_NAME,&lt;br /&gt;            DATA_TYPE,&lt;br /&gt;            CHARACTER_MAXIMUM_LENGTH&lt;br /&gt;from &lt;db&gt;.information_schema.columns&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;select OWNER,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;            TABLE_NAME,&lt;/span&gt;&lt;br /&gt;            COLUMN_NAME,&lt;br /&gt;            DATA_TYPE,&lt;br /&gt;            DATA_LENGTH&lt;br /&gt;            DATA_PRECISION&lt;br /&gt;from ALL_tab_cols;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/959725691997997014-4115570056032909882?l=www.digitalviper.co.uk%2Fblogs%2FCognos%2FCognos.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/4115570056032909882/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=959725691997997014&amp;postID=4115570056032909882' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default/4115570056032909882'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default/4115570056032909882'/><link rel='alternate' type='text/html' href='http://www.digitalviper.co.uk/blogs/Cognos/2007/03/list-tables-columns.html' title='List Tables &amp; Columns'/><author><name>Phil Thompson</name><uri>http://www.blogger.com/profile/06916357179657682644</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11052433334116669189'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-959725691997997014.post-6366994036649869779</id><published>2007-03-22T13:33:00.000Z</published><updated>2007-03-22T13:34:41.358Z</updated><title type='text'>Welcome to the Cognos Blogger</title><content type='html'>Hi and welcome to the Cognos blog.&lt;br /&gt;I'm intending to use this blog to post new techniques and answers to other Cognos developers questions. If you need help - just ask!&lt;br /&gt;&lt;br /&gt;Cheers&lt;br /&gt;&lt;br /&gt;Phil&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/959725691997997014-6366994036649869779?l=www.digitalviper.co.uk%2Fblogs%2FCognos%2FCognos.html' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/6366994036649869779/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=959725691997997014&amp;postID=6366994036649869779' title='12 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default/6366994036649869779'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/959725691997997014/posts/default/6366994036649869779'/><link rel='alternate' type='text/html' href='http://www.digitalviper.co.uk/blogs/Cognos/2007/03/welcome-to-cognos-blogger.html' title='Welcome to the Cognos Blogger'/><author><name>Phil Thompson</name><uri>http://www.blogger.com/profile/06916357179657682644</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11052433334116669189'/></author><thr:total>12</thr:total></entry></feed>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    