Skip to content
July 1, 2011 / red1s

Deploying Cognos to SharePoint 2010 / 2007


I was recently assigned the task of researching the ability to expose Cognos Dashboards from within SharePoint 2007 and 2010.

Using the following link which I’d recommend you use as opposed to the documentation that is sent in PDF: (however does have screenshots and is fairly decent reference material ):  – this is also part of what I have included below but just highlighted items that I struggled with and included extra material which was explained to me after speaking to an IBM Cognos consultant – http://publib.boulder.ibm.com/infocenter/c8bi/v8r4m0/index.jsp?topic=/com.ibm.swg.im.cognos.ug_cra.8.4.0.doc/ug_cra_id26346Add_Cognos_WebParts_to_SharePoint_Page.html

For the intrepid consultant about to embark on the journey here are a few things I’d stress to anyone would be the following:

 

Assumptions:

This is written from the perspective of a SharePoint administrator, it is assumed that you either are aware of the Cognos configuration requirements to be made or alternatively will be working with a Cognos administrator to complete the Cognos configuration process.[WU1]

 

Referential Material

Use the following link which is recommend as opposed to the documentation that are in PDF: (however the PDF does have screenshots and does have the necessary referential material):

 

The URL for the following information is: http://publib.boulder.ibm.com/infocenter/c8bi/v8r4m0/index.jsp?topic=/com.ibm.swg.im.cognos.ug_cra.8.4.0.doc/ug_cra_id26346Add_Cognos_WebParts_to_SharePoint_Page.html[WU2]

 

Setting up Cognos on SharePoint

If you are unable to access this material use the following steps to work through the above listed steps: (Also take note of the extra items in Steps 4 and 8 referred to in this document)

 

The configuration process consists of the 8 following steps:

 

1. Set up Virtual Directories and Change the Gateway URIs  (Two different approaches based on the version of IIS )

2. Copy the Cognos Web Parts Resources to the IIS HTTP Root Directory

3. Set Up the IBM Cognos Security Trust File

4. Modify the .NET Framework web.config File

5. Edit the Cognos Web Parts Catalog Files

6. Restart IIS

7. Add Cognos Web Parts to a SharePoint Page

8. Customize the Content of Cognos Web Parts

Step 1: Set up Virtual Directories and Change the Gateway URIs

Note: Depending on which version of IIS you’re using and which version of SharePoint you are using the a different method of configuration for IIS will have to be used to get the Cognos Gateway up and running.[WU3]

Approach A: IIS 6 and Windows SharePoint Services

If you use Microsoft Internet Information Services (IIS) and plan to enable single signon between the SharePoint portal and IBM Cognos Web Parts, you must

· create the cps and cps/cgi-bin virtual directories and enable anonymous access for them in Microsoft Internet Information Services (IIS)

· clip_image001.

· point the gateway URI to the Cognos Portal Services gateway in IBM Cognos Configuration clip_image001[1].

For more information, see the Proven Practices on the Cognos Software Services Web site.

Note: Depending on the version of IIS you’re using and SharePoint you’re using, a different method of configuration for IIS will have to be used to get the Cognos Gateway correctly configured.

Approach A: IIS 6 and Windows SharePoint Services

Note: If possible setup SharePoint Foundation primarily to setting up the Cognos Gateway

Steps to Set up the Virtual Directories

 

1. In Microsoft Internet Information Services (IIS), create the cps virtual directory and assign the following properties for this directory:

· Specify the path to c8_location/webcontent.

· Grant read permissions to this directory.

· Enable anonymous access.

· Ensure that Integrated Windows authentication is not selected.

2. Under the cps virtual directory, create another directory named cgi-bin, and assign the following properties for this directory:

· Specify the path to c8_location/cgi-bin.

· Grant execute permissions to this directory.

· Enable anonymous access.

· Ensure that Integrated Windows authentication is not selected.

 
Steps to Change the Gateway URIs

 

1. Start IBM Cognos Configuration.

2. For the Environment category, change the Gateway URI to point to the Cognos Portal Services gateway.

When properly set up, the Cognos Portal Services gateway URI should look like this: http://webserver/cps/cgi-bin/cognosisapi.dll/wrsp/cps4/portlets/nav?b_action=cps.wsdl&wsdl.

3. Ensure that the remaining Environment properties point to the same URI.

4. Restart the IBM Cognos 8 service.

Approach B: IIS 7 and SharePoint Foundation

 

This is a 6 step process:

1. Check CGI or ISAPI is enabled in IIS
2. Create the Cognos 8 virtual directories
3. Edit ISAPI or CGI Extensions
4. Add module mapping
5. Edit Module mapping
6. Allow CGI application to use execute

1. Ensure that CGI or ISAPI is enabled in IIS

Go to Start > Administrative Tools>Server Manager

image

On the right hand side next to ‘roles’ click ‘add role services’ under Web Server IIS

image

Underneath Application Development’ ensure CGI and ‘ISAPI Extensions’ are listed as ‘Installed’. If not then check them and click ‘Install’

image

2. Create the Cognos 8 virtual directories

Open up IIS

In the left Connections pane, expand the server node, expand Sites, right-click on Default Website, and click Add Virtual Directory

Enter “c84” for the Alias and enter the path to the c8\webcontent directory in the Physical Path (default C:\Program Files\cognos\c8\webcontent). Click OK.

image

 

Make sure to test the settings to see if the authentication passes the verification.

image

if it does not you might have to pass credentials either pass through or specific user

image

Right click on the newly-created cognos8 Virtual Directory and click Add Virtual Directory

image

 

Enter “cgi-bin” for the Alias and enter the path to the c8/cgi-bin directory in Physical Path (default C:\Program Files\cognos\c8\cgi-bin). Click OK.  (Remember to test the connection)

image

3. Edit ISAPI or CGI Extensions

In the left Connections pane, select the server node, then double-click ISAPI and CGI Restrictions in the right pane.

image

 

In the Actions pane click Add, enter the path to either cognosisapi.dll or cognos.cgi depending on which you will use (default C:\Program Files\cognos\c8\cgi-bin\cognosisapi.dll or C:\Program Files\cognos\c8\cgi-bin\cogno.cgi), check the “Allow extension path to execute” box, then click OK.

(you may need to surround the path in double quotes if it contains any spaces)

clip_image012

Or

Click ‘edit feature settings’ on right-hand side and ‘Allow unspecified CGI Modules’

image

4. Add Module Mapping

Within IIS expand the virtual directory and click on the cgi-bin virtual directory, Double click Handler Mapping within the main pane.

image

Within the actions pane click Add Module Mapping.

image

Enter either *.cgi or *.dll in the Request Path depending on which one it is you require. Within the Module Path choose either CGIModule or ISAPIModule. In the name section give it a realistic name i.e. ISAPI-cognos

If you are using ISAPI Module you will need to click the ellipsis next to the Executable section within here navigate to cognosisapi.dll

image

Click Request Restrictions

image

N.B if you are using a CGI Module you do not need to select anything in the executable section

Under the Mapping tab Select Invoke handler only if request is mapped to: File

clip_image021

Under the verbs tab ensure All verbs is Selected

clip_image022

Under the Access Tab, Select Execute

clip_image023

Depending on the method used in section 3 a message may appear select Yes

image

Your new module mapping should be added to the Handler Mapping List

image

5. Edit Module Mapping

In order for Cognos Administration to function properly, the directive added to the IIS configuration file in previous step has to be edited manually. Depending on how IIS is set up, this will have been written either to

<cognos_home>/c84/cgi-bin/web.config>

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, “Courier New”, courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

Open up web.config using Notepad

And check it for the following entries:

For CGI it will originally look like:

<add name="CGI-cognos" path="*.cgi" verb="*" modules="CgiModule" resourceType="Unspecified" /> 

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, “Courier New”, courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

 

Add allowPathInfo=”true” at the end of the statement so it looks like:

<add name="CGI-cognos" path="*.cgi" verb="*" modules="CgiModule" resourceType="Unspecified" allowPathInfo="true" /> 

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, “Courier New”, courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

For ISAPI it will originally look like:

<add name="ISAPI-Cognos" path="cognosisapi.dll" verb="*" modules="IsapiModule" scriptProcessor="E:\Program Files\Cognos\C84_64\cgi-bin\cognosisapi.dll" resourceType="Unspecified" requireAccess="Execute" preCondition="bitness32" /> 

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, “Courier New”, courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

Add allowPathInfo=”true” at the end of the statement so it looks like

<add name="ISAPI-Cognos" path="cognosisapi.dll" verb="*" modules="IsapiModule" scriptProcessor="E:\Program Files\Cognos\C84_64\cgi-bin\cognosisapi.dll" resourceType="Unspecified" requireAccess="Execute" preCondition="bitness32" allowPathInfo="true"/> 

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, “Courier New”, courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

N.B. – you may need to ensure that you have access permissions on the folder to enable you to save to this file

6. Allowing CGI application to use execute

Select cgi-bin virtual directory within IIS, Select Handler Mappings and click Edit Feature Permissions.

clip_image029

Select OK and Click OK

clip_image031

 

Step 2: Copy the Cognos Web Parts Resources to the IIS HTTP Root Directory

IBM Cognos software provides the resources required for the integration of SharePoint Portal Server with IBM Cognos 8. These include the Web Part DLLs for different languages, and catalog files for each Cognos Web Part. You must copy these resources to the IIS HTTP root directory to make them available to SharePoint.

STEPS:

 

1. Go to the c8-location/cps/sharepoint directory.

2. Copy all files from this directory to the IIS HTTP root directory, as specified in the following table.

An example of the IIS HTTP root directory can be C:/Inetpub/wwwroot for SharePoint Portal Server 2003, and C:/Inetpub/wwwroot/wss/VirtualDirectories/80 for SharePoint Portal Server 2007.

File

IBM Cognos 8 Directory

IIS HTTP Root Directory

Cognos.BI.WebPart.dll

/bin

/bin

Cognos.BI.WebPart.resources.dll

/bin/de

/bin/de

Cognos.BI.WebPart.resources.dll

/bin/en

/bin/en

Cognos.BI.WebPart.resources.dll

/bin/fr

/bin/fr

Cognos.BI.WebPart.resources.dll

/bin/ja

/bin/ja

CognosNavigator.dwp

CognosSearch.dwp

CognosViewer.dwp

CognosSDK.dwp

CognosWatchList.dwp

CognosHistoryChart.dwp

CognosImpactDiagram.dwp

CognosCustomDiagram.dwp

/wpcatalog

/wpcatalog

dialog_error.gif

/wpresources/Cognos.BI.WebPart

/wpresources/Cognos.BI.WebPart

Later you can edit the Cognos*.dwp catalog files

clip_image001[2].

Step 3: Set Up the IBM Cognos Security Trust File

The Cognos Web Parts use the .NET Web Services Stack and they require a higher security trust level than the default minimum security. A sample of a security trust file named wss_cognostrust.config.sample is provided. This file specifies the required security trust, named WSS_Cognos, for the Cognos Web Parts.

Use the wss_cognostrust.config.sample file provided for your version of SharePoint to set up the security trust for the Cognos Web Parts. For a simple SharePoint Portal Server installation the file can be used without any changes. For more complex installations, you may need to edit this file.

Note: If you already have a trust file used by other Web Parts in your SharePoint Portal Server, you can add the Cognos-specific information from the sample to the existing file so that it can also be used by the Cognos Web Parts.

Steps

1. Go to the c8_location/cps/sharepoint/config directory.

2. Copy the wss_cognostrust.config.sample file:

· If you use SharePoint Portal Server 2003, copy the wss_cognostrust.config.sample file from the c8_location/cps/sharepoint/config/wss.2003 directory to the C:/Program Files/Common Files/Microsoft Shared/web server extensions/60/CONFIG directory.

· If you use SharePoint Portal Server 2007, copy the wss_cognostrust.config.sample file from the c8_location/cps/sharepoint/config/wss.2007 directory to the C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/CONFIG directory.

3. Rename the copied file to wss_cognostrust.config.

Step 4: Modify the .NET Framework web.config File

Note: Special attention needs to be taken when updating the file as there are differences in what is recommended as web.config changes by IBM to what is actually required to be done.

[WU4]

Microsoft .NET Framework provides a configuration file named web.config. This file, located in the IIS HTTP root directory, is used to configure the SharePoint services at the application level. To configure the Cognos Web Parts, you must add configuration information to this file.

IBM Cognos 8 provides a sample configuration file named web.config.sample that shows a typical, fully functional configuration of the Cognos Web Parts with a SharePoint portal. You can use this sample to copy snippets of code and paste them into the web.config file. However, do not copy the entire sample file directly to your IIS environment.

To configure the Cognos Web Parts with your SharePoint Portal Server, edit the web.config file by adding the IBM Cognos configuration information

clip_image001[3].

Steps

1. Go to the IIS HTTP root directory, for example, C:/ Inetpub/wwwroot for SharePoint 2003, and C:/Inetpub/wwwroot/wss/VirtualDirectories/80 for SharePoint 2007.

2. Open the web.config file in an XML editor, such as XML Spy.

3. Edit the web.config file as required clip_image001[4], and save the file.

Changes in the web.config File

The web.config file is the central configuration point for all .NET Framework applications.

Add the following information to the configuration element in this file.

Add the IBM Cognos Configuration Section

In the configSections section, add the following sectionGroup element:

<sectionGroup name="Cognos"> 
          <section name="Log" type="System.Configuration.SingleTagSectionHandler, System,Version=1.0.5000.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089"/> 
          <section name="SoapLog" type="System.Configuration.SingleTagSectionHandler,System,
Version=1.0.5000.0, Culffture=neutral, PublicKeyToken=b77a5c561934e089"/>
          <section name="SSO" type="System.Configuration.SingleTagSectionHandler, System,Version=1.0.5000.0, 
Culture=neutral, PublicKeyToken=b77a5c561934e089"
/>
          <section name="PortalContext" type="System.Configuration.SingleTagSectionHandler,
System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
/>
          <section name="Fault" type="System.Configuration.SingleTagSectionHandler, System,
Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
/>
          <section name="HttpClient" type="System.Configuration.SingleTagSectionHandler,
System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/> 
</sectionGroup>
Register the Cognos Web Part Assembly as a Safe Control

In the SharePoint section, add the following SafeControl element to the SafeControls element.

<SafeControl Assembly="Cognos.BI.WebPart, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=cb3c72729d0875cd" Namespace="Cognos.Portal.Services"
TypeName="*"
Safe="True"/>
Register the IBM Cognos Security Trust File

Cognos Web Parts require the security trust named WSS_Cognos that is defined in the wss_cognostrust.config file clip_image001[5].

In the system.web section, add the following trustLevel element to the securityPolicy element.

· SharePoint Portal Server 2003

·        <trustLevel
·        name="WSS_Cognos" policyFile="C:\Program Files\Common Files\Microsoft
Shared\Web Server Extensions\60\config\wss_cognostrust.config" />

· SharePoint Portal Server 2007

·        <trustLevel name="WSS_Cognos"
·        policyFile="C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\config\wss_cognostrust.config"
/>
Change the Trust Level to WSS_Cognos

WSS_Cognos is the security trust required by the Cognos Web Parts clip_image001[6].

In the system.web section, change the trust level from

<trust level="WSS_Minimal"
originUrl="" />

to

<trust level="WSS_Cognos" 
originUrl="" />
Enable the Session Object

· In the system.web section, add the following element to the httpModules element if the element does not already exist:

·        <add name="Session"
type="System.Web.SessionState.SessionStateModule"/>

If the element is commented out, remove the comments.

· In the system.web section, add the following pages element.

·        <pages enableSessionState="true" enableViewState="true" enableViewStateMac="true"
validateRequest="false" />

If this element already exists, change the value of its enableSessionState attribute to true.

· In the system.web section, add the following element to the httpHandlers element:

 
    <httpHandlers>
      <!-- IBM COGNOS \\\\\\\\\ -->
      <add verb="*" path="CognosResources/*.axd" type="Cognos.Portal.Services.HttpResourceHandler, Cognos.BI.WebPart, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cb3c72729d0875cd" validate="false" />
      <!-- IBM COGNOS ///////// -->
    </httpHandlers>

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, “Courier New”, courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

Register Cognos Portal Services as a SOAP Extension

In the system.web section, add the following webServices element:

    <!-- IBM COGNOS \\\\\\\\\ -->
    <webServices>
      <soapExtensionTypes>
        <add type="Cognos.Portal.Services.SoapPatchExtension, Cognos.BI.WebPart, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cb3c72729d0875cd" priority="1" group="0" />
        <!-- add type="Cognos.Portal.Services.SoapLogExtension, Cognos.BI.WebPart, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cb3c72729d0875cd" priority="2" group="0" /-->
      </soapExtensionTypes>
    </webServices>
    <!-- IBM COGNOS ///////// -->

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, “Courier New”, courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

The soapExtensionTypes element represents all SOAP extensions that are available to your Web service at run time. If the webServices and soapExtensionTypes elements are already defined, add only the add element.

Specify the IBM Cognos Configuration Parameters

Use the Cognos element to specify the IBM Cognos configuration parameters as defined in IBM Cognos Configuration.

Insert the following Cognos element between the closing tags </system.web> and </configuration>:

<!-- IBM COGNOS \\\\\\\\\ -->
  <Cognos>
    <Log filename="D:\Cognos.BI.WebPart.log" error="true" warn="true" info="true" debug="true" performance="true" />
    <!-- Log filename="C:\Cognos.BI.WebPart.log" error="true" warn="true" info="true" debug="true" performance="false" /-->
    <!-- SoapLog filename="C:\Cognos.BI.WebPart.SOAP.log" / -->
    <SoapLog filename="D:\Cognos.BI.WebPart.SOAP.log" />
    <SSO cps_auth_namespace="cpstrusted" cps_auth_secret="coillte" excludeDomain="false" />
    <!-- SSO cps_auth_namespace="cpstrusted" cps_auth_secret="" excludeDomain="false"/ -->
    <PortalContext gatewayURL="http://ccscgn04/ibmcognos/cgi-bin/cognos.cgi" webContentURL="http://ccscgn04/ibmcognos" />
    <!-- <PortalContext gatewayURL="http://ccscgn04/cognos8/cgi-bin/cognosisapi.dll" webContentURL="http://ccscgn04/cps" /> -->
    <Fault stacktrace="true" />
    <!-- Fault stacktrace="false" /-->
    <HttpClient timeout="15000" />
  </Cognos>
  <!-- IBM COGNOS ///////// -->

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, “Courier New”, courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

The elements in the Cognos element represent the different configuration settings.

· Use the SoapLog element to specify the location for the Web Services log files.

· Use the Log element to specify a different location for the log file, and to enable the different logging features by changing the attribute values from false to true.

· Use the SSO element to specify the IBM Cognos Security Namespace ID of the CPS trusted namespace named cps_auth_namespace, and the shared secret password named cps_auth_secret.

This parameter is optional.

· Use the PortalContext element to specify the URL attributes for IBM Cognos gateway and IBM Cognos Web content, as shown in the following example:

· PortalContext gatewayURL=”http://localhost/cps/cgi-bin/cognosisapi.dll&#8221;

· webContentURL=”http://c8_host_computer/cps”

This parameter is optional.

· Use the Fault element to display the call stacks in the error page when a fault is caught by a Web Part.

Items not included on the web version of the web.config editing

Ensure that the following line has been added to resolve the issue around adding multiple webparts to the page:

<add name=”CognosPortletResource” path=”CognosResources/*.axd” verb=”*” type=”Cognos.Portal.Services.HttpResourceHandler” resourceType=”Unspecified” preCondition=”integratedMode” />

The following instruction is not part of Step 4 on the site, however needs to be done. If not done you will experience a blank section on the site whenever web part preferences link is clicked.

You would also need to add the WebPartWorkItem property and set its timeout value to 7000 (this can be increased if the server response time is slow)

clip_image032

<!– IBM COGNOS \\\\\\\\\ –>
<WebPartWorkItem Timeout=”7000″ />
<!– IBM COGNOS ///////// –>

 

Step 5: Edit the Cognos Web Parts Catalog Files

The catalog files contain the definitions of the Cognos Web Parts to use in SharePoint Portal Server.

For each Cognos Web Part catalog file, change the WSDL URL to point to your IBM Cognos 8 gateway.

Steps

1. Go to the IIS directory where the catalog files were copied.

For example, for SharePoint Portal Server 2003, go to C:/Inetpub/wwwroot, and for SharePoint Portal Server 2007 go to C:/Inetpub/wwwroot/wss/VirtualDirectories/80.

2. In each Cognos Web Part catalog file, Cognos*.dwp, change the URL in the WSDL element to point to your IBM Cognos 8 gateway.

Here is an example:

<WSDL xmlns="http://developer.cognos.com/webpart/v1">
http://localhost/cps/cgi-bin/cognosisapi.dll/wsrp/cps4/portlets/nav?b_action=cps.wsdl&amp;wsdl</WSDL>

Tip: The ampersand characters (&) in the URL must be XML-encoded as &amp;

3. Save the file.

Step 6: Edit the Cognos Web Parts Catalog Files

You must restart Internet Information Services (IIS) for the configuration changes to take effect.

Step

· Restart IIS using its management console, or the iisreset.exe command line tool.

The Cognos Web Parts are now available in SharePoint Portal Server, and can be added to the portal pages

clip_image001[7].

Step 7: Add Cognos Web Parts to a SharePoint Page

You can use the Cognos Web Parts to add the Cognos content to your pages in SharePoint Portal Server.

You can add or remove the Web Parts from the shared view, or from the personal view of the page. Ensure that you are in edit mode before you make changes to the page.

The following steps provide only basic instructions for adding the Cognos Web Parts to SharePoint pages. For more information, see the SharePoint Portal Server help.

Steps for SharePoint Portal Server 2003

1. Log on to your SharePoint Portal Server with administrative permissions.

2. Go to the page where you want to add the Cognos Web Parts.

3. From the Actions list on the left side, click Edit Page.

4. In the upper-right corner of the page, click Modify Shared Page, Add Web Parts.

5. Click Browse to add a Web Part from an existing Cognos Web Part library.

The page opens in design mode, and the Add Web Parts pane appears on the right side of the page.

Tips:

· You can use the Search option to find the Web Parts in the Web Part library.

· You can use the Import option if the Web Part you want is not in the library.

Type the path or browse to the location of the Cognos*.dwp file that you want to import, and then click Upload.

6. In the Add Web Parts pane, click Virtual Server Gallery.

The Cognos Web Parts appear in the Web Part List.

7. Click the Cognos Web Part you want, and then click the Add button at the bottom of the pane.

The Web Part appears at the top of the page.

Tip:You can also drag the Web Parts to different drop zones in the page.

8. In the Web Part, click the down arrow in the upper-right corner, and click Modify Shared Web Part.

9. In the pane on the right side of the page, specify the URL of the WSDL file under Connection Settings, WSDL.

The URL must point to a functional IBM Cognos 8 installation.

10. Click Discover Portlets.

11. Specify the Portlet handle property.

12. Click Apply to make changes without closing the pane, or click OK when you are done.

13. Repeat steps 4 to 12 for each Cognos Web Part you want to add to the page.

You can now customize the content of the Cognos Web Parts

clip_image001[8].

Steps for SharePoint Portal Server 2007

1. Log on to your SharePoint Portal Server with administrative permissions.

2. Go to the page where you want to add the Cognos Web Parts.

3. From the Site Actions menu in the upper-right corner, click Edit Page.

4. In the Web Part zone where you want to add the Cognos Web Part, click Add a Web Part.

5. In the Add Web Parts dialog box, click All Web Parts, Miscellaneous.

6. In the Add Web Parts tool pane on the right side of the page, click Server Gallery.

7. From the list of available Cognos Web Parts, click the Web Part you want.

8. At the bottom of the tool pane, from the Add to menu, select the location on the page where you want the Web Part to appear, and click the Add button.

Tip: You can also drag the Web Part to different drop zones in the page.

9. Repeat steps 4 to 8 for each Cognos Web Part you want to add to the page.

10. Click Exit Edit Mode.

You can now customize the content of the Cognos Web Parts clip_image001[9].

clip_image034[WU6]

Steps for SharePoint 2010

1. Log on to your SharePoint Portal Server with administrative permissions.

2. Go to the page where you want to add the Cognos Web Parts.

3. From the Site Actions menu in the upper-left corner, click Site Actions and then Edit Page.

4. In the Web Part zone where you want to add the Cognos Web Part,

1. If the web part zone does not display click Insert at the top of the page and then select Web Part.

clip_image035

5. In the Categories list on the left hand side, select Miscellaneous.

clip_image036

6. The webparts should appear in the list to the right of the categories list under Web Parts with an explanation in the About the Web Part window.

clip_image037

7. From the list of available Cognos Web Parts, click the Web Part you want.

8. At the bottom of the tool pane, from the Add to menu, select the location on the page where you want the Web Part to appear, and click the Add button.

9. Repeat steps 4 to 8 for each Cognos Web Part you want to add to the page.

10. Click Save & Close or Exit Edit Mode depending on which page type you’re editing.

clip_image038

You can now customize the content of the Cognos Web Parts clip_image001[10].[WU7]

Step 8: Customize the Content of Cognos Web Parts

Once you’ve deployed the webparts successfully – there is a new link under the webparts drop down menu properties which is displayed in the images below. These would be the ares from where to configure the Cognos elements of the Sharepoint webparts now available.[WU8]

Windows SharePoint Services

clip_image040

SharePoint 2010

clip_image041

You are able to refer to the troubleshooting guide of the PDF installation document which outlines a few errors, however if the steps above are followed closely there should be little room for error

 

Well good luck and feel free to ask any questions around the posted material.

9 Comments

Leave a Comment
  1. Wizardlee / Aug 10 2011 1:47 am

    Hi red1s

    Thanks for the great tips.

    I’m currently working a client engagement where they’re wanting Cognos integrated with Sharepoint 2010. In your past experiences, what type of security architecture was in place? So for example, what form of security was used on the sharepoint side and what form of security was used for the cognos side and how did you get SSO to work in this particular instance if they were both using different security directory servers?

    Regards
    Wizard

    • red1s / Aug 10 2011 10:38 am

      Hi WizardLee;

      I have just update the post to be more comprehensive.

      Let me know what you think – the biggest issue you might have is the ability to ensure that Sharepoint doesnt fall over when you create the Cognos gateway – also double and triple check your web.config file to ensure it is correct as this is where i screwed up quite a bit

      • Wizardlee / Aug 10 2011 11:52 am

        Hi red1s

        Thanks for the update, it is very comprehensive, but it still doesnt really answer my question unfortunately. What I basically want to know is if Cognos is secured using say Active Directory and Sharepoint is secured using another authentication source, say formspace. Will the above method still ensure that SSO will work and that once the user has logged into Sharepoint, they will not then be required to enter their credentials to view the Cognos components?

      • red1s / Sep 7 2011 10:40 am

        Sorry to have taken so long to get back to you – hopwever that is a tricky scenario.

        I am assuming the best person in this case would not be the Cognos administrator setting up the Cognos security for the Cognos Gateway SSO.

        Hope that helps – just by the way we had some assistance from IBM’s team who assisted me with finalizing a few of the issues I was having.

  2. Nat / Sep 21 2011 9:58 pm

    In this example, are you running C10 and SharePoint 2010 from the same server? I am trying to configure this on two seperate VMs. When I attempt to add the WebPart, I get error “CPS-CCM-1209 Unable to create URL connection to the requested WSDL file… (401) Unauthorized.

    Any ideas?

    • red1s / Jan 11 2012 10:04 am

      That demo was for Cognos V8 however I have recently deployed using Cognos V10 and IIS 6

  3. Wizardlee / Jan 23 2012 1:07 pm

    Hi red1s

    Would you happen to know whether Cognos prompts contained in 1 web part can be used to filter another cognos report into another web part? Is this sort of communication between the web parts out of the box after the integration configuration or does further customization need to be done?

    • red1s / Jan 24 2012 9:59 am

      Hi WizardLee – In my experience once the webparts have been deployed there does not seem to be any out of he box communication between the two. The problem is that the Cognos webparts use another cgi portlet to display the webparts so in essence only seem to be a glorified page viewer.

      Remember the Cognos webparts are actaully referring to Java elements previously setup within the gateway.

      I’d definitely say that customization needs to be created within the portlet either within the portlet created in IIS or as a REST service within Sharepoint.

      Good luck either way!

  4. Ann / Oct 26 2012 8:17 pm

    Hi red1s,

    In this blog are you using a different server for cognos and a different server for SharePoint 2010

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: