Product:
IBM Cognos TM1 10.2.2
Microsoft Excel 2010
Windows server 2008 R2 Standard

Problem:
How install TM1 perspective and TM1 architect on Citrix server?

Possible solution:
Copy the setup media to an install folder on the Citrix server.
If you use 32 Bit Excel, then you should install 32 Bit Cognos TM1 Client programs.
Log on to the Citrix server as a local administrator.
Ensure that the prerequisite is installed, that is

  • Microsoft .NET Framework is needed for the Advanced Rules Editor and the publish to the Web feature in Cognos TM1 Architect and TM1 Perspectives.
  • Microsoft Visual C++ 2010 Redistributable Package (x86 and x64)

Both the x86 and x64 versions are required on a 64-bit Windows system if you plan to run any of the TM1 32-bit client applications such as Cognos TM1 Architect and TM1 Perspectives.

Turn off the UAC to make the installation easier.

Download the latest Cognos TM1 client fix pack
And place the media on the citrix c:\install folder.

Start a CMD prompt by right click and select “run as administrator”
Inside the CMD prompt change to the install folder
Then enter command “CHANGE USER /INSTALL”
Enter cd command to go to the win32 folder where you can in the CMD run the ISSETUP.EXE command.
Step through the installation selecting all the defaults.
This will only install TM1 Architect and TM1 Perspective.

After finish, change to the FIX PACK folder and run the ISSETUP.EXE for the TM1 fix pack to the same folder.
When this is done, you can start TM1 architect from the start menu and ensure that it works.
Close the TM1 architect program.

In the CMD prompt enter the command “CHANGE USER /EXECUTE”.
Now is the program installed.

You need to publish the following files in the Citrix portal for the users.

Publish TM1 architect as:
“C:\Program Files (x86)\IBM\cognos\tm1\bin\tm1a.exe”

Publish TM1 perspective as:
“C:\Program Files (x86)\IBM\cognos\tm1\bin\tm1p.xla”

Please note that each user must the first time they start Excel go into Options – Security center -Trusted folders and add the TM1 bin folder.

They must also inside TM1 Architect under menu Options enter the name of the Windows server where TM1 are, that they should connect to.

Then to get it to work better, you can do adjustments like this:

Due to a security issue in Excel 2007 and Excel 2010 you get an error about smart card when you start perspective.
Instead of publish the XLA file direct, create a BAT file with below content:

ECHO OFF

REM change trusted locations in excel

reg add “HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Excel\Security\Trusted Locations\Location6” /v Path /t REG_SZ /f /d “C:\Program Files (x86)\IBM\cognos\tm1\bin\

reg add “HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Excel\Security\Trusted Locations\Location6” /v AllowSubfolders /t REG_DWORD /d 1 /f

reg add “HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Excel\Security\Trusted Locations\Location6” /v Description /t REG_SZ /d  “For TM1” /f

reg add “HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Excel\Security\Trusted Locations\Location6” /v Date /t REG_SZ /d “2016-08-24 10:45” /f

REM start tm1 perspective and excel

“C:\Program Files (x86)\IBM\cognos\tm1\bin\tm1p.xla”

 

Save that file as EXCELFOLDER.BAT
Then publish to start the EXCELFOLDER.BAT instead in citrix.
This will set the TM1 folder to be trusted inside Excel for that user during startup, so TM1 perspective will work.
You need to change the value 14.0 if you do not use Excel version 2010.

The REG ADD in the BAT/CMD file will update a value in the registry for that user who run the script, that is the HKEY_CURRENT_USER, therefor the script need to run after the person have logged in to the Citrix session.

 

Other issue is to prepopulate the TM1P.INI file with data about the server
If the file does not exist it will be created from a master in the folder,

C:\programdata\applix\tm1

Update this tm1p.ini file with the following lines

AdvancedRulesEditor = T
CognosGatewayURI = http://ServerName.Domain.Se/ibmcognos/cgi-bin/cognosisapi.dll
AdminHost = ServerName.Domain.Se
IntegratedLogin = T

 

Otherwise a VBscript like this will update the TM1p.ini file

‘ Script to update the ini file

Const OpenAsDefault = -2  ‘ Opens the file using the system default
Const OpenAsUnicode = -1  ‘ Opens the file as Unicode
Const OpenAs__ASCII =  0  ‘ Opens the file as ASCII
Const ForReading = 1
Const ForWriting = 2
Const ForAppending=8

set objShell = CreateObject(“WScript.Shell”)
profile_path = objShell.ExpandEnvironmentStrings(“%APPDATA%”)
profile_app = profile_path & “\Applix\TM1\tm1p.ini”
‘ profile_app = “C:\Users\cognos\AppData\Roaming\Applix\TM1\tm1p.ini”
‘ msgbox  profile_app

Set objFSO = CreateObject(“Scripting.FileSystemObject”)
Set objTextFile = objFSO.OpenTextFile( profile_app , ForReading, false , OpenAsUnicode)

Do Until objTextFile.AtEndOfStream
strNextLine = objTextFile.Readline
intLineFinder = InStr(strNextLine, “AdvancedRulesEditor”)
If intLineFinder <> 0 Then
strNextLine = “AdvancedRulesEditor = T”
End If

intLineFinder = InStr(strNextLine, “AdminHost =”)
If intLineFinder <> 0 Then
strNextLine = “AdminHost = ServerName.Domain.Se”
End If

intLineFinder = InStr(strNextLine, “IntegratedLogin”)
If intLineFinder <> 0 Then
strNextLine = “IntegratedLogin = T”
End If

intLineFinder = InStr(strNextLine, “CognosGatewayURI”)
If intLineFinder <> 0 Then
strNextLine = “CognosGatewayURI = http://ServerName.Domain.Se/ibmcognos/cgi-bin/cognosisapi.dll”
End If

If objTextFile.AtEndOfStream <> True Then
strNewFile = strNewFile & strNextLine & vbNewLine
End If

Loop

objTextFile.Close
Set objTextFile = objFSO.OpenTextFile( profile_app , ForWriting, true, OpenAsUnicode)
objTextFile.Write strNewFile
objTextFile.Close

Save above script as a file c:\IBM\updateini.vbs

The create a new text file named c:\IBM\updateini.bat that contain this value:

wscript “c:\IBM\updateini.vbs”

This BAT file is then called from loginscript or from published Citrix icon for the TM1 architect.

Note that this line gets the path to the user current running the script, so here it will update that user profile
set objShell = CreateObject(“WScript.Shell”)
profile_path = objShell.ExpandEnvironmentStrings(“%APPDATA%”)

If you set below value wrong the result of the TM1P.INI file may be in Chines language
Set objTextFile = objFSO.OpenTextFile( profile_app , ForReading, false , OpenAsUnicode)

Below rows check if the line read at the moment contain the text IntegratedLogin and if it does then it will replace the whole line with the value IntegratedLogin = T.
intLineFinder = InStr(strNextLine, “IntegratedLogin”)
If intLineFinder <> 0 Then
strNextLine = “IntegratedLogin = T”
End If

 

More information can be found here

https://blogs.technet.microsoft.com/heyscriptingguy/2004/11/30/can-i-edit-ini-files-using-a-script/

http://www.motobit.com/tips/detpg_asp-vbs-read-write-ini-files/

http://www.vbforums.com/showthread.php?168248-How-do-I-Update-an-INI-file-using-a-vbs-file

http://superuser.com/questions/761008/add-registry-key-entries-using-batch-file

https://support.microsoft.com/en-us/kb/2598139

http://www.tek-tips.com/viewthread.cfm?qid=856235

http://stackoverflow.com/questions/30329877/editing-ini-file-writes-garbage-chinese-characters-to-the-output-file

 

If the VBS script does not finish all the way, maybe the timeout have changed on the computer.

To change how long a VBS script can run, you can change it in registry at this point

[HKEY_CURRENT_USER\Software\Microsoft\Windows Script Host\Settings]
“Timeout”=dword:0000000f
“DisplayLogo”=dword:00000001
When you deleted “Timeout”, which had a value of 0x0000000f (15),
you can get the script back to run for a long time.

If the resulting file contains chines characters instead of the one you want then you have set the format in the opentextfile to a format you are not using in your windows computer.

See below for the possibles;

OpenTextFile Method

Opens a specified file and returns a TextStream object that can be used to read from, write to, or append to the file.

Syntax

object.OpenTextFile(filename[, iomode[, create[, format]]])

Arguments

object

Required. Object is always the name of a FileSystemObject.

filename

Required. String expression that identifies the file to open.

iomode

Optional. Can be one of three constants: ForReading, ForWriting, or ForAppending.

create

Optional. Boolean value that indicates whether a new file can be created if the specified filename doesn’t exist. The value is True if a new file is created, False if it isn’t created. If omitted, a new file isn’t created.

format

Optional. One of three Tristate values used to indicate the format of the opened file (TristateTrue = -1 to open the file as Unicode, TristateFalse = 0 to open the file as ASCII, TristateUseDefault = -2 to open the file as the system default). If omitted, the file is opened as ASCII.

 

 

Product:
Cognos Controller 8.5.1
Tm1 9.5.1

Symptom:
When doing a initial publish from controller database to the TM1 cube with the FAP (Financial Analytics Publisher) service you get a error.

Error message:
Could not execute TI process:Business AreaGroup_Process
ProcessAborted
Initial publish failed. Throwable exception.

Cause:
Some of the controller security groups have bad names or are invalid to be processed by the FAP.

Before you use below solution – ensure you have a complete backup of the Cognos controller database. Recommended that you take screen shoots of all the security groups you delete, so you later can recreate them with new names.

This to ensure that the security limits to controller users are in affect after the implementation of FAP functions.

Solution:
On the TM1 server go to the folder where the TM1 log files are created – can be the same folder as the TM1 server e.g. c:\tm1servers\tm1planning
Open the latest logfile in notepad e.g. the logfile name can be like this;
TM1ProcessError_20110225095005_Business AreaGroup_Process.log

Note what line it say there is a problem with
Error: Prolog procedure line (234): Element not found

Start TM1 architect
Select the TM1 cube e.g. tm1planning you are using to publish from FAP service.
Expand down to Processes and Business AreaGroup_Process
Double click on that process to open the Turbo Integrator.
Click on advanced – prolog tabs to show the script code.
Click on the GOTO LINE button on the right.
Enter the number and click OK.

Now you see the line in the script that gives the issues.
Can look like this;

ElementSecurityPut{‘Read’,’Business Area’,’BITO’,’U1IT’};

The last value is the security group name in Cognos controller.
You need to remove the U1 to get the name of the security group, in our example the group name is IT.

Log in to Cognos Controller client as the Administrator.
Go to Maintain – Rights –Security groups.
Click on Extended Dimensions tab.
Click on the CODE button to select the security group from the list.
Mark group IT and click OK.
Click on Delete button inside the security groups dialog.

You may get an information message like below

“There are users connected to this security group. All user connections must be removed before a security group can be deleted”

In that case you must delete the security group from the users that are using it.
Close the Security Groups dialog. Open the Users dialog by
Go to Maintain – Rights – Users dialog.
Click on Limitations tab and look at the line for Business Area Group.
Step trough all the Cognos Controller users to see who is using the Security group IT.

When you find a users who have security group IT in the right side – erase it – and click on save.
When all users are checked for the security group, you go back to the Security groups dialog.
Close the Users dialog, and open maintain – rights – Security groups dialog.
(you need to close the dialog between changes to make it understand the deleted connections)

Erase now the security group e.g. IT in our example.

Close the security dialog and exit Cognos controller client.

Now you need to go to the FAP service manage program and start the FAP process again.

Product:
Cognos Controller 8.5.1
Microsoft Windows 2008 R2 server

Symptom:
When you start the Cognos Controller client from the link in Cognos Connection you get a error message.

Error message:
System.NullreferenceException: Object reference not set to an instance of an object.
at Cognos.Controller.AppContext.InitConfig()

Possible Solution:
Logon to the Cognos Controller server as administrator

Open folder C:\Windows\System32\inetsrv\config
Open file “ApplicationHost.config”
Change
to
Click Save

Restart the IIS server and test again

Product:
Cognos Controller 10.1 (32 bit)
Microsoft Windows 2008 R2 (64 bit)
Microsoft Excel 2010 (32 bit)

Symptom:
Get error message when you start excel from inside Cognos Controller 10 client on the server.
Cognos Controller is installed on a Microsoft Windows 2008 R2 server, and you test the Controller client by starting ccr.exe from the D:\Program Files (x86)\ibm\cognos\c10\webcontent\ccr folder.

Error message:
IBM Cognos Controller Link
Exception has been thrown by the target of an invocation.

Possible Cause:
Excel reads from the ccr.exe.config file to find the way to the Cognos Controller files.
The file will have this row if it is not working:

File ccr.exe.config, that excel is using, is found in folder C:\Users\username\AppData\Roaming\Cognos\ccr

If changed to this it will work

Solution:
Instead of test Cognos Controller by starting the ccr.exe direct, you should install Cognos Controller client on the server.

Ensure you have Microsoft Excel installed on the server
Ensure you have Adobe Reader installed on the server
Ensure you have Net framework 3.5 installed on the server
Ensure you have User Account Control Settings to lowest value

Copy the excel.exe.config file to the same folder as excel.exe
Run a batch file to set trust to the controller server in net framework 2.00
Ensure that the controller server name is in trusted zone in Internet Explorer on the server.

Run CCRLocalClient.msi from folder D:\Program Files (x86)\ibm\cognos\c10\webcontent\ccr
to install the client.

Select Typical and enter the following for the WSSUrl
http://servername/ibmcognos/controllerserver

Enter the following for the HelpUrl
http://servername/ibmcognos/controllerhelp

Leave “CacheDir” blank and press next.

After installation, you start Cognos Controller Client from the Start menu.

Note:
Replace servername above with your name of your Cognos Controller server.
More information about how to install the Controller client can be found here:
http://addedo-support.com/index.php?_m=downloads&_a=view&parentcategoryid=6&pcid=0&nav=0

Product:
Cognos Controller 8.5.1
Windows 2008 Server R2

Symptom:
When you run F9 in excel report you get a error message during the “Calling RunReport” process. You have activated Enhanced report optimization by doing this in the excel sheet:
1. Select cell A1 on the first sheet of the workbook.
2. Go to the menu Insert / Name / Define
3. Type in the name Optimise2 and click Add and then OK
4. Save the report
When you next run or refresh the report, ERO is used.

Error message:
Standard Error
Number: 5
Source
FrangoDirect. ExcelLinkD. FetchValuesBulk # ControllerProxyClient
Description: The underlying connection was closed. An unexpected error occurred on a receive.

Cause:
You have create the share \\servername\ero$ on the application server and given everyone full rights on the share.

You have enter the correct values in controller configuration for ERO, as this:
File mode: File Copy
Server: applicationservername
Share: ero$
(and left the rest of the fields blank)

But you have not given the SQL service account access rights to the NTFS.

Solution:
Right click on the ERO folder
Select Properties
Select Security tab
Click EDIT to change permissions
Click ADD
enter the name of the service account (e.g. domain\username) and click CHECK NAMES
Click OK
Mark Allow – Modify check box
Click APPLY
Click OK

Product:
Cognos Controller version 8.5.1

Symptom:
The Enhanced Reporting Optimization (ERO) does not work anymore, but it has before upgrade to new version of Cognos Controller.

Can be that you have changed the name of the controller database from Default to default.

Cause:
The settings for ERO are stored in the Windows Registry on the Controller Application Server.
Under a registry key for each database name, defined in Controller Configuration.
When you create new database – you must remember to setup the ERO values for the new database.

Solution:
Start Regedit on the Cognos Controller server
Ensure that the values under ey;
[HKEY_LOCAL_MACHINE\SOFTWARE\VB and VBA Program Settings\FrangoController\Shares\default]

Are correct for ;
“server”=”databaseservername”
“share”=”ero$”

Check that each key for each database are correct.

Product:
Cognos Controller 8.5.1 service pack

Problem:
After upgrade to a new version of Cognos Controller you get a error when you run Database Conversion Utility to upgrade the database to the latest version.

You get message:
Current dbversion.txt missing – unable to proceed with conversion.

Solution:
Ensure that the DBCONV.EXE program is in the C8 folder, where the needed support files are located.

Copy the DBCONV.EXE program to the C8 folder – if it is not located in this folder.

A reinstall of Cognos Controller would also place the files in correct folders.

Product:
Cognos Controller 10.1
Microsoft Windows 2008 R2 server

Symptom:
When try to convert a older cognos controller database, you get a error when you run the DbConv program from the folder D:\Program Files (x86)\ibm\cognos\c10\legacy.

Error Message:
DbConv Error
ERROR 429 (Hex 1AD):
ActiveX component can’t create object

Database Upgrade is aborted due to error in processing Step 755.
Error – 429 ActiveX component can’t create object
Current DB Version is 754

Cause:
During the install of Cognos Controller 10.1 on the Microsoft Windows 2008 R2 server some files was not correct registered.

Solution:

1. Logon to the Controller application server as an administrator
2. Launch Windows Explorer, and navigate to the folder: C:\Windows\SysWOW64\common
3. Right-click on the file “Xceedzip.dll” and choose “properties”. Check the file size. It should be approximately 278 KB. If it is 0 Kb then the file is corrupt and will need to be replaced.
4. Navigate to the folder: \Common (this can be: D:\Program Files (x86)\ibm\cognos\c10\common)
5. Right-click on the file “FrCrypto.dll” and choose “properties”. Check the file size. It should be approximately 29 KB. If it is 0 Kb then the file is corrupt and will need to be replaced.
6. Launch a command prompt by clicking “Start” – “Run” and then typing in “CMD”
7. Change directory using: cd C:\Windows\SysWOW64\common
8. Register the file using: regsvr32.exe xceedzip.dll
9. Change directory to the c8\common folder (for example using: cd “D:\Program Files (x86)\ibm\cognos\c10\common”)
10. Register the file using: regsvr32.exe FrCrypto.dll

Product:
Cognos Controller 10.1
Microsoft Windows 2008 R2

Symptom:
Open Cognos Controller Configuration hang when you select the Report Server section.
In some cases you get a error message.
You can only kill the Controller Configuration program from Windows Task Manager, and when you go into Controller Configuration again it will hang.

Error message:
File Download
Do you want to save this file, or find a program online to open it?
Name: cognosisapi.xts&h_CAM_action=logon
Type: Unknown File Type, 252KB
From: servername

Cause:
You have changed the Controller Configuration to use cognosisapi.dll but not changed on the Windows 2008 iis to handle isapi for cognos controller. You need to change the IIS settings before you change in Controller Configuration.

Can also happens when you enter a none valid Report Server URL in Controller Configuration.

Solution:
1) In IIS select the server node, then double-click ISAPI and CGI Restrictions in the right pane, Under Actions on the right hand screen select Edit Feature Settings and make sure Allow unspecified ISAPI modules is selected.
In the Left Connection pane select the cgi-bin virtual directory, then double-click Handler Mappings in the right pane.
In the Actions pane click Add Module Mapping, the settings should be similar to:

Request path: cognosisapi.dll
Module: IsapiModule
Executable (optional): C:\Program Files (x86)\ibm\cognos\c10\cgi-bin\cognosisapi.dll
Name: ISAPI-cognos

Click OK and Yes to allow this ISAPI extension

2) If running 64-bit In iis under Application Pools, select your application pool for the ibmcognos virtual directories i.e. DefaultAppPool, on the right-hand side click Set Application Pool Defaults and change Enable 32-Bit Applications to True

3) Edit the file /c10/cgi-bin/web.config and add:
allowPathInfo=’true’
to the following entry:

To become:

4) Restart iis

5) In Cognos Configuration under Environment change Gateway URI to reference cognosisapi.dll instead
i.e.
from:
http://servername:80/ibmcognos/cgi-bin/cognos.cgi
to:
http://servername:80/ibmcognos/cgi-bin/cognosisapi.dll

(Leave Cognos Configuration open for the moment)

In the /webcontent directory, edit the index.htm and default.htm files and change
URL=cgi-bin/cognos.cgi?
To
URL=cgi-bin/cognosisapi.dll?

In Cognos Configuration save you settings and restart the services.

6) In Controller Configuration under Report server change Report server to cognosisapi.dll instead of cognos.cgi
i.e.
http://servername/ibmcognos/cgi-bin/cognos.cgi
to:
http://servername/ibmcognos/cgi-bin/cognosisapi.dll

When the user surf to http://servername/ibmcognos, will cognosisapi.dll be used as default.

Product:
Cognos Controller 10.1
Microsoft Windows 2008 R2

Symptom:
When starting Cognos Controller client, it will hang and not show up.

This happens on a client computer (citrix server) that run a 64 bit operation system.

Possible error:
Microsoft IE Execute shell
Microsoft IE Execute shell has encountered a problem and needs to close.
We are sorry for the inconvenience.

Cause:
Cognos Controller is a 32 bit application, and will not execute in a 64 bit Internet Explorer.

Possible Solution:
Set the Client computer (citrix server) to process all NET framework code as 32 bit.

start cmd by select “run as administrator” from start menu on client computer.
go to c: drive
change to folder with command: cd %windir%\Microsoft.NET\Framework64\v2.0.50727
Enter command: Ldr64.exe setwow

More information:
On Windows 2008 R2 server when running Controller Configuration, you must right click the program and select Run as Administrator.

Ensure that the client have trust to the Cognos Controller server.
Check by running CASPOL -LG from the Microsoft.NET\Framework\v2.0.50727 folder on the client. This will list the servers that the NET framework client trust.

When you run the caspol command, you must start the command prompt/bat file by right clicking the program and selecting Run as Administrator.

start cmd run as administrator
cd C:\%windir%\Microsoft.NET\Framework\v2.0.50727
caspol -q -m -ag “All_Code” -url http:// SERVERNAME /* FullTrust -name “Controller_ SERVERNAME ” -d “Controller_ SERVERNAME ”

(replace SERVERNAME with the name of your server NetBios or FQDN depending what you have setup)
Run the CASPOL command once for FQDN and once for the NetBios Servername to ensure the clients access to the server.